Container-basierte Systeme konfigurieren
Als Systemadministrator konfigurieren Sie die Verschlüsselung in Ihrem Automic Automation Kubernetes Edition-System.
Sobald das System bereitgestellt ist, können Sie Ihr System entweder mithilfe der Datei values.yaml oder der relevanten Abschnitte der configmap konfigurieren. Die Datei values.yaml, die zusammen mit AAKE zur Verfügung gestellt wird, umfasst Beispiele für die standardmäßige Helm Chart- und externe Datenbankkonfiguration.
Diese Seite beinhaltet Folgendes:
Konfigurieren von Kubernetes-spezifischen Komponenten nach der Bereitstellung
Dieser Abschnitt enthält verschiedene Einstellungen, die spezifisch für Kubernetes sind.
Dienstkonten
Ein Standarddienstkonto wird erstellt und automatisch in allen Pods im Namespace bereitgestellt. Dies könnte ein Sicherheitsrisiko darstellen. Deshalb wird empfohlen, die automount -Funktion für das Standarddienstkonto zu deaktivieren. Dazu setzen Sie den Parameter automountServiceAccountToken auf false.
Beispiel
apiVersion: v1 kind: ServiceAccount metadata: name: automic automountServiceAccountToken: false
Nur der Operator benötigt ein Dienstkonto für die Installation von AAKE. Deshalb müssen Sie den Namen des dedizierten serviceAccount, der vom Operator verwendet wird, im Abschnitt operator: der Datei values.yaml definieren. Stellen Sie sicher, dass Sie das Dienstkonto mit den relevanten Berechtigungen im Namespace erstellen.
Beispiel
operator: serviceAccount: create: true name: automic-operator-sa
Anmerkungen zum Dienst
Verwaltete Kubernetes-Dienste, wie beispielsweise von AWS, Azure oder Google Cloud Platform bereitgestellt, verwenden unterschiedliche Ingress-Controller und könnten zusätzliche Anmerkungen in der Datei values.yaml für die Dienste operator, awi, jcp-rest und jcp-ws benötigen:
Beispiele
Die Anmerkung GKE für den AWI-Dienst festlegen:
awi: service: annotations: cloud.google.com/neg: '{"ingress": true}'
Die Anmerkung AWS für den JCP-Dienst festlegen:
jcp-ws: service: annotations: service.beta.kubernetes.io/aws-load-balancer-backend-protocol: https
Mehr Informationen:
Konfigurieren Ihres Automic Automation-Systems nach der Bereitstellung
Dieser Abschnitt enthält verschiedene Einstellungen, die ihr gesamtes Automic Automation-System oder eine bestimmte Komponente betreffen, wie zum Beispiel die Automation Engine, die Automic Web Interface, einen Serverprozess usw.
Wichtig! Berücksichtigen Sie bei der Konfiguration von Containern, dass auf dem Datenträger gespeicherte Dateien kurzlebig sind. Sie gehen verloren, wenn Container oder Pods anhalten und neu starten. Um Ressourcen im Cluster zu speichern und darauf zu verweisen (z. B. auf Dateien wie Logs, Traces, Bilder usw.), müssen Sie zuerst die Namen der entsprechenden Persistent Volumes (pv) und Persistent Volume Claims (pvc) in den entsprechenden Abschnitten der Datei values.yaml definieren. Weitere Informationen zu Volumes in Kubernetesfinden Sie in der offiziellen Kubernetes Produktdokumentation.
Festlegen von Umgebungsvariablen nach der Bereitstellung
In einer AAKE-Umgebung verwenden Sie Umgebungsvariablen, um Einstellungen für die Automation Engine und das Automic Web Interface zu definieren oder zu ändern. Mit diesen Umgebungsvariablen können Sie nicht nur Werte in der INI-Datei von AE oder in den AWI-Konfigurationsdateien ersetzen, sondern auch System- und andere Einstellungen definieren.
Sie können Umgebungsvariablen unter Verwendung der Datei values.yaml festlegen, bevor oder nachdem Sie Ihr System installieren bzw. installiert haben. Stellen Sie sicher, dass Sie eine Helm-Aktualisierung durchführen, um Ihre Änderungen zu übernehmen. Die ae- und awi-Pods werden automatisch neu gestartet.
Hinweis: Stellen Sie sicher, dass Sie beim Definieren von Umgebungsvariablen das richtige Format verwenden.
Und auch nachdem die Installation zur Verfügung gestellt wurde, können Sie die Abschnitte ae-properties und awi-properties der ConfigMap verwenden, um die jeweiligen Umgebungsvariablen zu ändern. Der Install Operator überwacht die ConfigMap und startet alle ae- und/oder awi-Pods (wp, cp, jcp-rest, jcp-ws, jwp, awi) neu, sobald Sie Ihre Änderungen gespeichert haben.
Mehr Informationen:
-
Automation Engine INI-Datei
Umgebungsvariablen für Automation Engine
Jede Umgebungsvariable für die AE verwendet das Syntaxmuster ${PREFIX_SECTION_KEY:DEFINITION}:
-
PREFIX: AUTOMIC
Konstantes Präfix für diese Umgebungsvariablen.
-
SECTION:
Definiert den Abschnitt der INI-Datei, in der sich der Schlüssel befindet, den Sie definieren möchten.
-
KEY:
Gibt den Schlüssel an, den Sie ersetzen möchten.
-
DEFINITION:
Der Wert, den Sie für den Schlüssel definieren möchten.
Die Konfiguration der Automation Engine-Serverprozesse wird in der INI-Datei (ucsrv.ini) von AE definiert, die alle relevanten Parameter enthält, die in verschiedenen Bereichen organisiert sind. In einer AAKE-Umgebung können Sie die Datei values.yaml verwenden, um diese Einstellungen vor und nach der Bereitstellung zu ändern.
Hinweise:
-
Nur der Systemadministrator sollte Parameterwerte in den Konfigurationsdateien (INI) ändern, da diese Art von Änderungen sich gegenseitig beeinflussen und eine große Auswirkung auf das Automation Engine-System haben.
-
Sie können ganze Schlüssel der INI-Datei ersetzen, aber keinen vollständigen Abschnitt.
Beispiel
${AUTOMIC_GLOBAL_SYSTEM:AUTOMIC}
Diese Umgebungsvariable legt AUTOMIC als Wert des Schlüssels system= im Abschnitt [GLOBAL] der INI-Datei der Automation Engine fest.
Nachdem Ihr System erfolgreich bereitgestellt wurde, können Sie auch den Abschnitt ae-properties der ConfigMap verwenden, um diese Einstellungen zu ändern, z. B. mit dem folgenden kubectl -Befehl zur Bearbeitung:
kubectl edit configmap ae-properties
Beispiel der ae-properties-ConfigMap
apiVersion: v1 data: AUTOMIC_TRACE_TRC03: '1' AUTOMIC_REST_CORSSUPPORTENABLED: '1' AUTOMIC_REST_CORSACCESSCONTROLALLOWORIGIN: '*' AUTOMIC_GLOBAL_STARTMODE: 'COLD' kind: ConfigMap metadata: ...
Sie können auch Umgebungsvariablen verwenden, um System- und andere Einstellungen festzulegen, die nicht Teil der INI-Datei der AE sind.
Vor der Bereitstellung können diese Variablen nur in der Datei values.yaml definiert werden. Sobald das System bereitgestellt wurde, können Sie sie auch im Automic Web Interface ändern.
Beispielsweise können Sie sie verwenden, um die Parameter JCP_ENDPOINT und REST_ENDPOINT der Variablen UC_SYSTEM_SETTINGS zu füllen. Dazu definieren Sie die jeweiligen URLs in den Umgebungsvariablen JCP_WS_EXTERNAL_ENDPOINT und JCP_REST_EXTERNAL_ENDPOINT in der Datei values.yaml.
Beispiel
JCP_WS_EXTERNAL_ENDPOINT: "https://jcp-ws.<your-domain.example.com>:443"
Mehr Informationen:
-
Automation Engine INI-Datei
-
Eine Verbindung zum AWI, die JCP- und REST-Prozesse über einen Ingress herstellen
Umgebungsvariablen für AWI
Alle AWI-Einstellungen verwenden das Syntaxmuster ${PREFIX_KEYNAME:DEFINITION}:
-
PREFIX: AUTOMIC
Konstantes Präfix für alle AWI-Einstellungen.
-
KEYNAME:
Entspricht dem in den Dateien configuration.properties.xml und corlors.properties.xml definierten Eigenschaftsnamen. Der KEYNAME wird in Großbuchstaben geschrieben, und Punkte werden durch Unterstriche ersetzt. Beispiel: Die Eigenschaft session.colors wird zu AUTOMIC_SESSION_COLORS.
-
DEFINITION:
Der Wert, den Sie für den Schlüssel definieren möchten
AWI hat obligatorische und optionale Konfigurationsdateien, die Sie ändern müssen/können. In einer AAKE-Umgebung können Sie die Datei values.yaml verwenden, um diese Einstellungen vor und nach der Bereitstellung zu ändern.
Beispiel
-
Umgebungsvariablenschlüssel: AUTOMIC_SSO_SAML_ENABLED
Wert: Gibt an, ob Single Sign-on (SSO) für das AWI-Login verwendet werden kann
Beispiel: true
Nachdem Ihr System erfolgreich bereitgestellt wurde, können Sie auch den Abschnitt awi-properties der ConfigMap verwenden, um diese Einstellungen zu ändern, z. B. mit dem folgenden kubectl -Befehl zur Bearbeitung:
kubectl edit configmap awi-properties
Beispiel für die awi-properties-ConfigMap
apiVersion: v1 data: AUTOMIC_SYSTEM_NAME: 'AUTOMIC' AUTOMIC_CONNECTION_NAME: 'AE_TEST' AUTOMIC_MAINCOLOR: '#E61063' AUTOMIC_SESSION_COLORS: '#21DE4A,#DE6621,#133AD4' AUTOMIC_SSO_SAML_ENABLED: 'true' kind: ConfigMap metadata: ...
Sie können auch Umgebungsvariablen verwenden, um Einstellungen zu definieren, die nicht Teil der AWI-Konfigurationsdateien sind.
Vor der Bereitstellung können diese Variablen nur in der Datei values.yaml definiert werden. Sobald das System bereitgestellt wurde, können Sie sie auch im Automic Web Interface ändern.
Beispielsweise können Sie die Umgebungsvariable AUTOMIC_LOGO_BASE64 verwenden, um den Text einzugeben, der dem AWI-Logo im BASE64-Format entspricht.
Mehr Informationen:
- uc4config.xml - Konfigurieren der Verbindung zwischen AWI und AE
- logback.xml - Log-Ebenen konfigurieren
- configuration.properties – Lokales Setup konfigurieren
- colors.properties - Konfigurieren des Farbschemas
Festlegen des Log-Ziels
Alle AE-, Analytics- und AWI -Prozesse schreiben standardmäßig ihre Aktivitäten (Logs und Traces) auf die Konsole. Sie können jedoch auch eine Datei konfigurieren, in die Logs, Traces und Dumps geschrieben werden können. Wenn Sie Logs und Traces in eine Datei schreiben möchten, stellen Sie sicher, dass Sie eine Datei für jede Komponente (jcp-rest, jcp-ws, jwp, cp, wp, analytics, awi, initialdata) definieren.
Wenn Sie eine Datei anstelle der Konsole (Standard) verwenden möchten, muss der Name des Persistent Volume Claims (pvc-Name) definiert werden, in den Sie Log-/Trace-Dateien schreiben möchten.
Hinweis: Stellen Sie sicher, dass die Zugriffsknoten des verwendeten PV und PVC auf ReadWriteMany gesetzt sind, wenn die Pods, die darauf zugreifen, auf verschiedenen Knoten ausgeführt werden. Wenn alle Pods auf einem einzelnen Knoten ausgeführt werden, können Sie sie auch auf ReadWriteOnce setzen.
Beispiel
apiVersion: v1 kind: PersistentVolume metadata: name: pv-logging spec: storageClassName: manual capacity: storage: 4Gi accessModes: - ReadWriteMany hostPath: path: /home/luf/helm/log --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-logging spec: storageClassName: manual accessModes: - ReadWriteMany resources: requests: storage: 2Gi
Weitere Informationen und Beispiele zu Persistent Volumes und Persistent Volume Claims finden Sie in der offiziellen Kubernetes Dokumentation.
Ändern Sie in der Datei values.yaml die Definition der Parameter log und trace von console in file, um das Log und die Trace in die entsprechende pvc zu schreiben.
Beispiel
logging: pvc: pvc-logging log: file trace: file
Stellen Sie sicher, dass Sie eine Helm-Aktualisierung durchführen, um Ihre Änderungen zu übernehmen. Die ae- und awi-Pods werden automatisch neu gestartet.
Standardmäßig werden Log- und Trace-Dateien bei jedem Neustart des Systems überschrieben. Um ältere Dateien für die spätere Verwendung zu behalten, können Sie die Anzahl der Trace-Dateien angeben, die beibehalten werden sollen, indem Sie die Trace-Ebene im entsprechenden Abschnitt der ConfigMap ändern.
Die Verlaufsdateien werden mit 01, 02 usw. benannt und bei jedem Neustart verschoben. Die älteste Datei (mit der höchsten Nummer) wird gelöscht und alle anderen Dateien werden umbenannt (die Nummer wird um 1 erhöht).
Mehr Informationen:
Festlegen des benutzerdefinierten Logos
Sie können das Logo, das in der AWI Menüleiste angezeigt wird, mit zwei Umgebungsvariablen anpassen, eine zum Festlegen des Bildes und eine andere für die Angabe des MIME-Typs. Sie konfigurieren das benutzerdefinierte Logo im Abschnitt [Umgebung] > [AWI] > [Logo] der Datei values.yaml.
Voraussetzung: Sie haben die pvc- und pv-Namen bereits definiert.
-
Um das Bild festzulegen, fügen Sie eine der folgenden Umgebungsvariablen hinzu und konfigurieren sie:
-
AUTOMIC_LOGO_BASE64
Verwenden Sie diese Variable, um den Text für das Bild im BASE64-Format einzugeben.
-
AUTOMIC_LOGO_FILENAME
Verwenden Sie diese Variable, um den Namen der Bilddatei einzugeben.
-
-
Geben Sie den MIME-Typ an.
Fügen Sie eine AUTOMIC_LOGO_MIMETYPE -Variable für andere Bildtypen als .PNG hinzu und konfigurieren Sie sie.
Das AE-Zertifikat innerhalb des Clusters ändern
Innerhalb des Kubernetes-Clusters wird die gesamte Kommunikation verschlüsselt. Die Dienste jcp-ws, jcp-rest und awi nutzen standardmäßig generierte, selbstsignierte Zertifikate. Daher müssen Sie kein TLS/SSL-Zertifikat dafür vorbereiten. Diese Zertifikate werden unter Verwendung der standardmäßigen geheimen TLS-Schlüssel von Kubernetes und unter Verwendung des Namens des jeweiligen Dienstes gespeichert: jcp-ws-cert, jcp-rest-cert, awi-cert.
Optional können Sie eines oder mehrere der generierten, selbstsignierten Zertifikate durch benutzerdefinierte ersetzen und diese entsprechend konfigurieren.
Hinweis: Stellen Sie sicher, dass Sie weiterhin die Namen jcp-ws-cert, jcp-rest-cert, awi-cert verwenden, selbst wenn Sie ein benutzerdefiniertes Zertifikat verwenden.
Wenn Sie keine benutzerdefinierte für alle Dienste verwenden, werden die verbleibenden automatisch generiert.
Um benutzerdefinierte Zertifikate zu verwenden, müssen Sie vor der Installation Folgendes tun:
-
Abhängig davon, wie Sie eine Verbindung zu dem System einrichten wollen, definieren Sie entweder die IP-Adresse oder den DNS-Namen für den SAN (Subject Alternative Name). Sie können mehrere SANs auswählen.
-
Erstellen Sie den geheimen TLS-Schlüssel von Kubernetes mithilfe des Zertifikats und der Schlüsseldateien. Um beispielsweise ein benutzerdefiniertes Zertifikat für AWI (awi-cert) zu verwenden, können Sie den folgenden Befehl ausführen:
kubectl create secret tls awi-cert --cert=path/to/awi.crt --key=path/to/awi.key
-
Stellen Sie sicher, dass Sie die AAKE
-
Stellen Sie über eine der Subject Alternative Name (SAN)-Adressen und den Port des Dienstes eine Verbindung zum jeweiligen Dienst (jcp-ws, jcp-rest, awi) her.
Hinweis: Der Install Operator erstellt die Java-KeyStores automatisch.
Mehr Informationen:
Ändern des AE-DB-Kennworts
Wenn Sie das Kennwort der AE-Datenbank ändern, stellen Sie sicher, dass der geheime ae-db-Schlüssel, den Sie während der Vorbereitung auf die AAKE-Installation erstellt haben, mit dem neuen DB-Kennwort aktualisiert wird. Weitere Informationen finden Sie unter Die AE- und Analytics-Datenbanken für die Container-Installation vorbereiten.
Sie müssen auch das Kennwort im geheimen ae-Schlüssel aktualisieren, der die DB-Verbindungszeichenfolgen enthält.
Die AAKE-Pods müssen neu gestartet werden, um das neue Kennwort zu verwenden
Siehe auch: