Nota
- Questa esercitazione è disponibile in un ambiente di esercitazione pratica gratuito fornito da Oracle.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Uso di ambienti di esecuzione personalizzati con Oracle Linux Automation Manager
Introduzione
Utilizzando un ambiente di esecuzione personalizzato (ee), Oracle Linux Automation Manager può utilizzare playbook contenenti raccolte e altre risorse non disponibili con l'immagine olam-ee predefinita. Puoi crearlo utilizzando la utility Builder, memorizzarlo su Private Automation Hub e quindi estrarlo in Oracle Linux Automation Manager.
Come funziona tutto questo insieme?
Questa esercitazione descrive come caricare un'immagine predefinita in Private Automation Hub, quindi estrarla in Oracle Linux Automation Manager per eseguire i playbook. Per i dettagli sulla creazione di ambienti di esecuzione personalizzati, vedere la nostra esercitazione sulla utility Builder e questa esercitazione su Private Automation Hub.
Obiettivi
In questo tutorial imparerai come:
- Invia un messaggio personalizzato a Private Automation Hub utilizzando una guida
- Aggiungi un ee personalizzato a Oracle Linux Automation Manager
- Utilizzare l'interfaccia utente personalizzata per eseguire un job
Prerequisiti
- Tre sistemi su cui è in esecuzione Oracle Linux
- Un ambiente di sviluppo che utilizza la utility Builder
- Uno per Private Automation Hub
- Un altro per eseguire Oracle Linux Automation Manager
Distribuisci Oracle Linux Automation Manager
Nota: se è in esecuzione nella propria tenancy, leggere il progetto linux-virt-labs
GitHub README.md e completare i prerequisiti prima di distribuire l'ambiente di esercitazione pratica.
-
Aprire un terminale sul Luna Desktop.
-
Duplica il progetto
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Passare alla directory di lavoro.
cd linux-virt-labs/olam
-
Installare le raccolte richieste.
ansible-galaxy collection install -r requirements.yml
-
Aggiornare la configurazione dell'istanza Oracle Linux.
cat << EOF | tee instances.yml > /dev/null compute_instances: 1: instance_name: "devops-node" type: "server" 2: instance_name: "ol-pah" type: "server" 3: instance_name: "olam-node" type: "control" passwordless_ssh: true use_olam_builder: true use_olam_pah: true EOF
-
Implementa l'ambiente di laboratorio.
ansible-playbook create_instance.yml -e ansible_python_interpreter="/usr/bin/python3.6" -e "@instances.yml"
L'ambiente di laboratorio gratuito richiede la variabile aggiuntiva
ansible_python_interpreter
perché installa il pacchetto RPM per l'SDK Oracle Cloud Infrastructure per Python. La posizione dell'installazione di questo pacchetto si trova sotto i moduli python3.6.La forma di distribuzione predefinita utilizza la CPU AMD e Oracle Linux 8. Per utilizzare una CPU Intel o Oracle Linux 9, aggiungere
-e instance_shape="VM.Standard3.Flex"
o-e os_version="9"
al comando di distribuzione.Importante: attendere la corretta esecuzione della guida e raggiungere il task di sospensione. L'installazione di Oracle Linux Automation Manager è stata completata in questa fase del playbook e le istanze sono pronte. Prendi nota della riproduzione precedente, che stampa gli indirizzi IP pubblici e privati dei nodi che distribuisce.
Esegue il push di un ambiente di esecuzione personalizzato nell'hub di Private Automation Hub
Un metodo per eseguire il push di un ee personalizzato nell'hub di Private Automation Hub consiste nell'utilizzare podman dalla riga di comando, come illustrato nell'esercitazione Private Automation Hub. Questa attività può essere eseguita anche utilizzando una guida e la raccolta containers.podman.
-
Aprire un terminale e connettersi tramite SSH all'istanza devops-node.
ssh oracle@<ip_address_of_instance>
-
Installare Oracle Linux Automation Engine.
sudo dnf install ansible-core -y
-
Installare le raccolte richieste.
ansible-galaxy collection install containers.podman
-
Crea il playbook per taggare e spingere l'immagine ee personalizzata.
tee push-image.yml > /dev/null <<EOF --- - hosts: localhost collections: - containers.podman tasks: - name: get domain_name command: hostname -d register: domain_name - name: output domain_name var debug: msg: "{{domain_name.stdout}}" - name: push image to pah containers.podman.podman_image: name: my_custom_ee push: true push_args: dest: ol-pah.{{domain_name.stdout}}/my_first_olam_ee_image:latest username: admin password: password validate_certs: false EOF
-
Eseguire il playbook.
ansible-playbook push-image.yml
La guida viene eseguita su
localhost
e, pertanto, non richiede un file di inventario definito.
Verifica della presenza dell'immagine nell'hub di Private Automation Hub
-
Aprire un nuovo terminale da Luna Desktop.
-
Configurare un tunnel SSH per Private Automation Hub.
ssh -L 5444:localhost:443 oracle@<ip_address_of_ol-pah>
-
Aprire un browser Web e immettere l'URL.
https://localhost:5444
Nota: approvare l'avvertenza di sicurezza in base al browser utilizzato. Per Chrome, fare clic sul pulsante
Advanced
, quindi sul collegamentoProceed to localhost (unsafe)
. -
Eseguire il login all'hub di Private Automation Hub WebUI.
Utilizzare il nome utente
admin
e la passwordpassword
. L'ambiente di laboratorio gratuito imposta questo valore di password durante la distribuzione del laboratorio. -
Il valore WebUI viene visualizzato dopo un login riuscito.
-
Fare clic sul menu di navigazione nell'angolo superiore sinistro dell'hub di Private Automation Hub WebUI.
-
Passare agli ambienti di esecuzione e agli ambienti di esecuzione.
-
Si noti che il nuovo my_first_olam_ee_image viene visualizzato nel pannello principale.
Crea un Playbook
Gli amministratori di Oracle Linux Automation Manager possono creare playbook localmente nel file system, che può essere utilizzato da un progetto che utilizza il controllo origine manuale. Utilizzeremo il nodo_devops per scrivere una guida che spinge la nostra guida al progetto su Oracle Linux Automation Manager utilizzando Oracle Linux Automation Engine. Questa configurazione funziona solo su un'installazione con un solo host di Oracle Linux Automation Manager, poiché i playbook esistono solo su tale istanza.
-
Passare a o aprire un terminale e connettersi tramite ssh all'istanza devops-node.
-
Creare una directory di progetto e modificarne la directory di lavoro.
mkdir ~/project1 cd ~/project1
-
Creare un modello.
Questo modello è il file playbook che scriveremo nel file system sul server Oracle Linux Automation Manager per recuperare l'elenco delle immagini dei container su un host.
mkdir templates tee templates/list-images.yml.j2 > /dev/null <<EOF --- - hosts: all collections: - containers.podman become: yes tasks: - name: gather info on images containers.podman.podman_image_info: register: podman_list become_user: oracle - name: list images debug: msg: "{{ podman_list.images | selectattr('RepoTags') '}}" EOF
-
Crea una guida per inviare questo progetto a Oracle Linux Automation Manager.
tee push-project.yml > /dev/null <<EOF --- - hosts: olam-node become: yes tasks: - name: create project directory ansible.builtin.file: path: /var/lib/awx/projects/podman state: directory become_user: awx - name: create playbook ansible.builtin.template: src: templates/list-images.yml.j2 dest: /var/lib/awx/projects/podman/list-images.yml become_user: awx EOF
-
Creare un file di inventario.
tee hosts > /dev/null <<EOF [olam] olam-node EOF
-
Copiare la guida nel server Oracle Linux Automation Manager.
ansible-playbook -i hosts push-project.yml
Aggiungi un ambiente di esecuzione personalizzato a Oracle Linux Automation Manager
Eseguire il login a WebUI
-
Aprire un nuovo terminale da Luna Desktop.
-
Configurare un tunnel SSH per Oracle Linux Automation Manager.
ssh -L 8444:localhost:443 oracle@<ip_address_of_ol-node>
Nell'ambiente di laboratorio gratuito, utilizza l'indirizzo IP dell'istanza olam-node.
-
Aprire un browser Web e immettere l'URL.
https://localhost:8444
Nota: approvare l'avvertenza di sicurezza in base al browser utilizzato. Per Chrome, fare clic sul pulsante Avanzate, quindi sul collegamento Procedi a localhost (non sicuro).
-
Eseguire il login a Oracle Linux Automation Manager WebUI.
Utilizzare il nome utente
admin
e la passwordadmin
. L'ambiente di laboratorio gratuito imposta questo valore di password durante la distribuzione del laboratorio. -
Il valore WebUI viene visualizzato dopo un login riuscito.
Aggiungi credenziale registro contenitore
-
Fare clic su Credenziali in Risorse nel menu di navigazione.
-
Fare clic sul pulsante Aggiungi nel pannello principale.
-
Immettere o selezionare i seguenti valori nei campi specifici.
Per i campi con una ricerca o un elenco di valori, è possibile iniziare a digitare il valore richiesto e quindi selezionarlo.
- Nome:
My Private Automation Hub
- Organizzazione:
Default
- Tipo di credenziale: Container di registro
- Authentication URL: the FQDN for the Private Automation Hub
- Nome utente:
admin
- Password o token:
password
- Opzioni: deselezionare Verifica SSL.
Se non si conosce il nome FQDN per l'hub di Private Automation Hub, utilizzare un terminale per connettersi all'istanza ol-pah, quindi eseguire
hostname -f
.Oracle Linux Automation Manager utilizza le credenziali del registro dei container per accedere alle immagini dei container in Private Automation Hub. Per l'ambiente di laboratorio gratuito è necessario deselezionare l'impostazione Verifica SSL a causa dell'uso di certificati autofirmati.
- Nome:
-
Rivedere le voci e fare clic sul pulsante Salva.
Aggiungi un ambiente di esecuzione
-
Fare clic su Ambienti di esecuzione in Amministrazione nel menu di navigazione.
-
Fare clic sul pulsante Aggiungi nel pannello principale.
-
Immettere o selezionare i seguenti valori nei campi specifici.
Per i campi con una ricerca o un elenco di valori, è possibile iniziare a digitare il valore richiesto e quindi selezionarlo.
- Nome:
My Custom EE
- Immagine:
<fqdn_of_the_private_automation_hub>/my_first_olam_ee_image:latest
- Credenziali di registro: My Private Automation Hub
- Nome:
-
Rivedere le voci e fare clic sul pulsante Salva.
Test dell'ambiente di esecuzione
Quando si esegue il test dell'ambiente di esecuzione personalizzato, è necessario un modello di job che include un inventario, host, credenziali computer e un progetto.
Aggiungi un magazzino
-
Fare clic su Inventari in Risorse nel menu di navigazione.
-
Fare clic sul pulsante Aggiungi nel pannello principale e selezionare Aggiungi magazzino dall'elenco di valori.
-
Immettere il valore seguente nel campo specifico.
- Nome:
Oracle Linux Hosts
- Nome:
-
Rivedere la voce e fare clic sul pulsante Salva.
Aggiungere un host
-
Fare clic sulla scheda Host nel pannello Dettagli inventario Oracle Linux.
-
Fare clic sul pulsante Aggiungi.
-
Immettere il nome host devops-node nel campo Nome
-
Rivedere la voce e fare clic sul pulsante Salva.
Aggiungi credenziale computer
-
Fare clic su Credenziali in Risorse nel menu di navigazione.
-
Fare clic sul pulsante Aggiungi nel pannello principale.
-
Immettere o selezionare i seguenti valori nei campi specifici.
Per i campi con una ricerca o un elenco di valori, è possibile iniziare a digitare il valore richiesto e quindi selezionarlo.
- Nome:
Oracle Linux SSH Access
- Organizzazione:
Default
- Tipo di credenziale: computer
- Nome utente:
opc
- Chiave privata SSH: selezionare la chiave id_rsa dalla directory ~/.SSH
Un modo per ottenere la chiave privata SSH consiste nel selezionare l'opzione Sfoglia per tale campo. Nella finestra di dialogo Caricamento file, selezionare Home e fare clic con il pulsante destro del mouse sulla finestra principale della finestra di dialogo. Selezionare Mostra file nascosti. Selezionare la cartella .ssh e il file id_rsa. Fare clic sul pulsante Open per copiare i contenuti del file di chiavi private nella finestra di dialogo SSH Private Key.
- Nome:
-
Rivedere le voci, scorrere verso la parte inferiore della pagina e fare clic sul pulsante Salva.
Crea nuovo progetto
-
Fare clic su Progetti in Risorse nel menu di navigazione.
-
Fare clic sul pulsante Aggiungi nel pannello principale.
-
Immettere o selezionare i seguenti valori nei campi specifici.
Per i campi con una ricerca o un elenco di valori, è possibile iniziare a digitare il valore richiesto e quindi selezionarlo.
- Nome:
Container Management
- Ambiente di esecuzione: EE personalizzato personale
- Tipo di credenziale di controllo origine: Manuale
- Directory di Playbook: podman
- Nome:
-
Rivedere le voci e fare clic sul pulsante Salva.
Aggiungi un modello di job
-
Fare clic su Modelli in Risorse nel menu di navigazione.
-
Fare clic sul pulsante Aggiungi nel pannello principale e selezionare Aggiungi modello di job dall'elenco di valori.
-
Immettere o selezionare i seguenti valori nei campi specifici.
Per i campi con una ricerca o un elenco di valori, è possibile iniziare a digitare il valore richiesto e quindi selezionarlo.
- Nome:
List Images
- Tipo di job: Esegui
- Magazzino: Host Oracle Linux
- Progetto: Gestione container
- Ambiente di esecuzione: EE personalizzato personale
- Playbook: elenco-images.yml
- Credenziali: Accesso SSH a Oracle Linux
- Nome:
-
Rivedere le voci, scorrere verso la parte inferiore della pagina e fare clic sul pulsante Salva.
Esegui il modello
-
Fare clic su Modelli in Risorse nel menu di navigazione.
-
Fare clic sull'icona Avvia modello nella colonna Azioni accanto al modello di job Elenca immagini.
Il job viene avviato e il pannello passa al riepilogo Output job. Dopo alcuni minuti, il job non riesce.
Questo errore si verifica perché la nuova interfaccia utente personalizzata non contiene la raccolta containers.podman, pertanto l'esecuzione della guida non riesce.
Correggere l'ambiente di esecuzione personalizzato
Per correggere il problema personalizzato, è necessario ricreare l'immagine del contenitore utilizzando la utility Builder, quindi inviare la nuova immagine a Private Automation Hub per il ritiro da parte di Oracle Linux Automation Manager.
-
Passare a o aprire un terminale e connettersi tramite ssh all'istanza devops-node.
-
Passare alla directory del progetto ee personalizzato.
cd ~/my_custom_ee_project
-
Aggiungere la raccolta mancante al file dei requisiti di Ansible Galaxy.
tee -a requirements.yml > /dev/null <<EOF - name: containers.podman EOF
-
Ricostruisci l'immagine.
ansible-builder build --tag my_custom_ee -v 3
-
Invia la nuova immagine a Private Automation Hub.
cd ~ ansible-playbook push-image.yml
-
Verificare che il push dell'immagine sia riuscito.
Connettersi all'hub di Private Automation Hub WebUI ed esaminare le modifiche apportate all'ambiente di esecuzione, in particolare la colonna Ultima modifica per my_first_olam_ee_image.
Test del nuovo ambiente di esecuzione personalizzato
-
Passare al browser Oracle Linux Automation Manager WebUI.
Aggiornare la finestra del browser ed eseguire di nuovo il login, se necessario.
-
Fare clic su Ambienti di esecuzione in Amministrazione nel menu di navigazione.
-
Fare clic sull'icona Modifica ambiente di esecuzione nella colonna Azioni accanto al collegamento immagine Personalizzato dipendente.
-
Modificare il valore Pull in Pull container sempre prima dell'esecuzione.
Questo campo abilita l'opzione
--pull
perpodman
. La modifica dell'impostazione costringerà Oracle Linux Automation Manager a estrarre l'immagine più recente quando i checksum del livello non corrispondono. -
Rivedere le modifiche e fare clic sul pulsante Salva.
-
Fare clic su Job in Viste nel menu di navigazione.
-
Fare clic sull'icona Rilascia nella colonna Azioni accanto al collegamento ...Elenca immagini.
Selezionare Tutto dall'elenco a discesa dei valori.
Il job viene avviato e il pannello passa al riepilogo Output job. Dopo alcuni minuti, si completa con successo.
Passi successivi
L'output all'interno di WebUI conferma che l'utente dispone di un ambiente di esecuzione personalizzato all'interno di Oracle Linux Automation Manager. Sviluppa le tue competenze e dai un'occhiata alla nostra altra formazione su Oracle Linux Automation Manager su Oracle Linux Training Station.
Collegamenti correlati
- Documentazione di Oracle Linux Automation Manager
- Formazione su Oracle Linux Automation Manager
- Stazione di formazione su Oracle Linux
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti gratuiti sulla formazione su Oracle Learning YouTube channel. Inoltre, visita education.oracle.com/learning-explorer per diventare un Oracle Learning Explorer.
Per la documentazione del prodotto, visita l'Oracle Help Center.
Use Custom Execution Environments with Oracle Linux Automation Manager
G32009-02
Copyright ©2023, Oracle and/or its affiliates.