Hinweis:
- Dieses Tutorial ist in einer von Oracle bereitgestellten kostenlosen Übungsumgebung verfügbar.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Ersetzen Sie diese Werte nach Abschluss der Übung durch Werte, die für Ihre Cloud-Umgebung spezifisch sind.
Oracle Linux Automation Manager upgraden
Einführung
Vorhandene Oracle Linux Automation Manager-Administratoren sind mit dem All-in-One-Deployment aus einer Instanz vertraut.
Mit Oracle Linux Automation Manager können Administratoren ihre vorhandenen Deployments upgraden und die upgegradete Instanz später in ein geclustertes Deployment migrieren. Beim Upgrade konvertiert die Instanz in ein Deployment mit einem einzelnen Host und konfiguriert sich selbst als Hybridknoten.
Nachdem Sie diesem Tutorial gefolgt sind, erfahren Sie, wie Sie ein Upgrade von Oracle Linux Automation Manager aus einer früheren Version durchführen.
Ziele
In diesem Tutorial erfahren Sie, wie Sie:
- Oracle Linux Automation Manager upgraden
Voraussetzungen
-
Ein System mit einem früheren Release von Oracle Linux Automation Manager.
Einzelheiten zum Installieren von Oracle Linux Automation Manager finden Sie unter Oracle Linux Automation Manager unter Oracle Linux installieren.
Oracle Linux Automation Manager bereitstellen
Hinweis: Wenn Sie in Ihrem eigenen Mandanten ausgeführt werden, lesen Sie das Projekt linux-virt-labs
GitHub README.md, und schließen Sie die Voraussetzungen ab, bevor Sie die Übungsumgebung bereitstellen.
-
Öffnen Sie ein Terminal auf dem Luna Desktop.
-
Klonen Sie das Projekt
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Wechseln Sie in das Arbeitsverzeichnis.
cd linux-virt-labs/olam
-
Installieren Sie die erforderlichen Collections.
ansible-galaxy collection install -r requirements.yml
-
Aktualisieren Sie die Oracle Linux-Instanzkonfiguration.
cat << EOF | tee instances.yml > /dev/null compute_instances: 1: instance_name: "olam-node" type: "control" passwordless_ssh: true olam_type: v1 EOF
-
Stellen Sie die Übungsumgebung bereit.
ansible-playbook create_instance.yml -e ansible_python_interpreter="/usr/bin/python3.6" -e "@instances.yml"
Für die kostenlose Übungsumgebung ist die zusätzliche Variable
ansible_python_interpreter
erforderlich, weil das RPM-Package für das Oracle Cloud Infrastructure-SDK für Python installiert wird. Der Speicherort für die Installation dieses Pakets befindet sich unter den python3.6-Modulen.Die Standard-Deployment-Ausprägung verwendet die AMD-CPU und Oracle Linux 8. Um eine Intel-CPU oder Oracle Linux 9 zu verwenden, fügen Sie dem Deployment-Befehl
-e instance_shape="VM.Standard3.Flex"
oder-e os_version="9"
hinzu.Wichtig: Warten Sie, bis die Arbeitsmappe erfolgreich ausgeführt wurde, und erreichen Sie die Aufgabe "Unterbrechen". Die Installation von Oracle Linux Automation Manager ist in dieser Phase des Spiels abgeschlossen, und die Instanzen sind bereit. Beachten Sie die vorherige Wiedergabe, in der die öffentlichen und privaten IP-Adressen der bereitgestellten Knoten gedruckt werden.
Melden Sie sich bei der WebUI an.
-
Öffnen Sie ein Terminal, und konfigurieren Sie einen SSH-Tunnel zu Oracle Linux Automation Manager.
ssh -L 8444:localhost:443 oracle@<hostname_or_ip_address>
Verwenden Sie in der freien Laborumgebung die externe IP-Adresse der olam-node-Instanz.
-
Öffnen Sie einen Webbrowser, und geben Sie die URL ein.
https://localhost:8444
Hinweis: Genehmigen Sie die Sicherheitswarnung basierend auf dem verwendeten Browser. Klicken Sie für Chrome auf die Schaltfläche **Erweitert und dann auf den Link Weiter zu localhost (unsicher).
-
Melden Sie sich bei Oracle Linux Automation Manager mit dem USERNAME
admin
und dem PASSWORDadmin
an, die während des automatisierten Deployments erstellt wurden. -
Nach der Anmeldung wird WebUI angezeigt.
Upgrade ausführen
-
Wechseln Sie zum Terminal, das mit der olam-node-Instanz verbunden ist, auf der die Oracle Linux Automation Manager-Instanz ausgeführt wird.
-
Stoppen Sie den Oracle Linux Automation Manager-Service.
sudo systemctl stop ol-automation-manager
-
Erstellen Sie ein Backup des Secret Keys, der von Oracle Linux Automation Manager zur Verschlüsselung von Automatisierungs-Secrets in der Datenbank verwendet wird.
sudo cp /etc/tower/SECRET_KEY ~/SECRET_KEY.olamv1
-
Erstellen Sie ein Backup der Datenbank.
Dieser Befehl gibt den Inhalt der Datenbank in eine Datei aus, die alle erforderlichen SQL-Befehle und -Daten zum Wiederherstellen der Datenbank enthält.
sudo su - postgres -c pg_dumpall > /tmp/olamv1_db_dump
-
Stoppen Sie den Datenbankdienst.
sudo systemctl stop postgresql
-
Entfernen Sie die vorhandenen Datenbankdatendateien.
sudo rm -rf /var/lib/pgsql/data
Mit diesem Befehl werden die vorhandenen Datenbankdatendateien entfernt. Die Datenbank wird später mit der Dumpdatei neu erstellt.
-
Deinstallieren Sie das aktuelle Datenbankpaket.
sudo dnf -y remove postgresql
-
Aktivieren Sie den Modulstream für die neue Datenbankversion.
Oracle Linux Automation Manager ermöglicht die Verwendung von PostgreSQL 12 und 13 beim Upgrade. In dieser Übung wird Version 13 verwendet.
sudo dnf -y module reset postgresql sudo dnf -y module enable postgresql:13
-
Aktualisieren Sie das Oracle Linux Automation Manager-Repository-Package.
sudo dnf -y update oraclelinux-automation-manager-release-el8
Hinweis: In diesem Schritt wird gemeldet, dass in der kostenlosen Übungsumgebung nichts zu tun ist, da das anfängliche Deployment bereits das neueste Repository-Package für Oracle Linux Automation Manager installiert hat.
-
Deaktivieren Sie alle Oracle Linux Automation Manager-Repositorys.
sudo dnf config-manager --disable ol8_automation ol8_automation2 ol8_automation2.2
-
Aktualisieren Sie die Oracle Linux Automation Manager-Packages auf Release 2.
sudo dnf -y install ol-automation-manager --enablerepo ol8_automation2
-
Aktivieren Sie das aktuelle Repository.
sudo dnf config-manager --enable ol8_automation2.2
-
Aktualisieren Sie das Oracle Linux Automation Manager-Package.
sudo dnf -y update ol-automation-manager
Hinweis: Die folgenden erwarteten Meldungen werden während des Upgrades in der Ausgabe angezeigt.
Upgrading : ol-automation-manager-2.1.0-10.el8.x86_64 26/28 warning: /etc/tower/settings.py created as /etc/tower/settings.py.rpmnew Running scriptlet: ol-automation-manager-2.1.0-10.el8.x86_64 26/28 ValueError: File context for /var/run/tower(/.*)? already defined
-
Installieren Sie den Datenbankserver.
sudo dnf -y install postgresql-server
-
Initialisieren Sie die Datenbank, starten Sie sie, und stellen Sie sie wieder her.
sudo postgresql-setup --initdb sudo systemctl start postgresql sudo su - postgres -c 'psql -d postgres -f /tmp/olamv1_db_dump'
-
Vergewissern Sie sich, dass die Datenbank verfügbar ist.
sudo su - postgres -c 'psql -l | grep awx'
Beispielausgabe:
[oracle@control-node ~]$ sudo su - postgres -c 'psql -l | grep awx' awx | awx | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
In der Ausgabe wird der Account
awx
angezeigt, der in der Datenbank erstellt wurde, nachdem die Wiederherstellung mit der Dumpdatei ausgeführt wurde. -
Ersetzen Sie die globale Oracle Linux Automation Manager-Standardeinstellungsdatei.
Nach dem Upgrade des Oracle Linux Automation Manager-Packages erstellt der neue rpm eine Standardkonfigurationsdatei mit der Erweiterung
.rpmnew
. Mit diesem Prozess können Systemadministratoren Konfigurationsunterschiede prüfen und erforderliche Änderungen manuell migrieren.sudo mv /etc/tower/settings.py /etc/tower/settings.py.save sudo mv /etc/tower/settings.py.rpmnew /etc/tower/settings.py
-
Zeigen Sie die Unterschiede zwischen den neuen und alten globalen Einstellungsdateien an.
sudo diff /etc/tower/settings.py /etc/tower/settings.py.save
Hinweis: Alle benutzerdefinierten Einstellungen, die zuvor der Datei
settings.py
hinzugefügt wurden, müssen in WebUI festgelegt oder in eine Datei unter/etc/tower/conf.d
verschoben werden. -
Erstellen Sie eine benutzerdefinierte Einstellungsdatei mit den erforderlichen Einstellungen.
cat << EOF | sudo tee /etc/tower/conf.d/olamv2.py > /dev/null CLUSTER_HOST_ID = '$(hostname -i)' DEFAULT_EXECUTION_QUEUE_NAME = 'tower' DEFAULT_CONTROL_PLANE_QUEUE_NAME = 'tower' EOF
Dieser Befehl setzt die Einstellung
CLUSTER_HOST_ID
auf die IP-Adresse des Systems und die Standardwarteschlangennamen auf den Standardnamentower
der vorab aktualisierten Version. In Konfigurationsdateien eingegebene Werte müssen dem Python-Syntaxformat entsprechen.Hinweis: Beim Upgrade von Oracle Linux Automation Manager muss der Wert
CLUSTER_HOST_ID
mit dem Wert aus der vorherigen Installation übereinstimmen, damit Jobs nach dem Upgrade nicht in einem ausstehenden Status hängen bleiben. Der Standardqueuename in Release 1 lautettower
, während er in Release 2default
lautet. -
Aktualisieren Sie die Receptor-Konfigurationsdatei.
Das Receptor Mesh ist ein Overlay-Netzwerk, das Peer-to-Peer-Verbindungen zwischen Controllern und Executors erstellt, um die Verteilung der Arbeit zu bewältigen.
sudo sed -i "s/0.0.0.0/$(hostname -i)/" /etc/receptor/receptor.conf
-
Prüfen Sie die Receptor-Konfigurationsdatei.
sudo cat /etc/receptor/receptor.conf
id:
ist der Hostname oder die IP-Adresse des Oracle Linux Automation Manager-Systems.port:
ist der TCP-Listening-Port für das Receptor-Mesh, der standardmäßig auf TCP-Port 27199 gesetzt ist.
-
Stellen Sie Oracle Linux Automation Manager bereit.
-
Öffnen Sie eine Shell als Benutzer
awx
.sudo su -l awx -s /bin/bash
-
Migrieren Sie vorhandene Container auf die neueste Podman-Version, während die nicht privilegierten Namespaces am Leben bleiben.
podman system migrate
-
Rufen Sie die Oracle Linux Automation Engine-Ausführungsumgebung für Oracle Linux Automation Manager ab.
podman pull container-registry.oracle.com/oracle_linux_automation_manager/olam-ee:2.2
-
Verwenden Sie das Utility
awx-manage
, um die Oracle Linux Automation Manager-Instanz einzurichten.awx-manage makemigrations --merge awx-manage migrate awx-manage register_default_execution_environments exit
-
-
Stellen Sie das Backup der Secret-Key-Datei wieder her.
sudo cp ~/SECRET_KEY.olamv1 /etc/tower/SECRET_KEY
-
Hängen Sie den folgenden Parameter an die Einstellungsdatei von Oracle Linux Automation Manager an.
cat << EOF | sudo tee -a /etc/tower/conf.d/olamv2.py > /dev/null # OLAM Reaper Job Status Tracking REAPER_TIMEOUT_SEC = 60 EOF
-
Ersetzen Sie die Standardkonfiguration für NGINX.
cat << EOF | sudo tee /etc/nginx/nginx.conf > /dev/null user nginx; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; # Load dynamic modules. See /usr/share/doc/nginx/README.dynamic. include /usr/share/nginx/modules/*.conf; events { worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; # Load modular configuration files from the /etc/nginx/conf.d directory. # See http://nginx.org/en/docs/ngx_core_module.html#include # for more information. include /etc/nginx/conf.d/*.conf; } EOF
-
Datenbank-Tuning-Parameter aktualisieren.
sudo sed -i 's/max_connections = [0-9]\+/max_connections = 1024/' /var/lib/pgsql/data/postgresql.conf
sudo sed -i 's/shared_buffers = [0-9]\+MB/shared_buffers = 5400MB/' /var/lib/pgsql/data/postgresql.conf
sudo sed -i 's/#\(work_mem = \)[0-9]\+MB/\1'540MB/ /var/lib/pgsql/data/postgresql.conf
sudo sed -i 's/#\(maintenance_work_mem = \)[0-9]\+MB/\1'720MB/ /var/lib/pgsql/data/postgresql.conf
-
Starten Sie die Datenbank neu.
sudo systemctl restart postgresql
-
Starten Sie NGINX neu.
sudo systemctl restart nginx
-
Starten Sie Oracle Linux Automation Manager.
sudo systemctl start ol-automation-manager
Prüfen Sie das Upgrade
-
Aktualisieren Sie das Webbrowserfenster, in dem das vorherige WebUI angezeigt wird, oder öffnen Sie ein neues Webbrowserfenster, und geben Sie die URL ein.
https://localhost:8444
Der in der URL verwendete Port muss mit dem lokalen Port des SSH-Tunnels übereinstimmen.
-
Melden Sie sich mit dem Benutzernamen
admin
und dem Kennwortadmin
erneut bei Oracle Linux Automation Manager an. -
Nach der Anmeldung wird WebUI angezeigt.
Nächste Schritte
Das Upgrade ist abgeschlossen, und die Jobs können ausgeführt werden. Um mehr über Oracle Linux Automation Manager zu erfahren, lesen Sie die Dokumentation und bauen Sie Ihre Fähigkeiten weiter aus, indem Sie unsere anderen Oracle Linux Automation Manager-Schulungen zu Oracle Linux Training Station besuchen.
Verwandte Links
Oracle Linux Automation Manager-Dokumentation
Oracle Linux Automation Manager-Schulung
Oracle Linux-Schulungsstation
Weitere Lernressourcen
Sehen Sie sich andere Übungen zu docs.oracle.com/learn an, oder greifen Sie im Oracle Learning YouTube-Channel auf weitere kostenlose Lerninhalte zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.
Die Produktdokumentation finden Sie im Oracle Help Center.