8.2. Konfiguration nach Erstellung der Overcloud
Es kann vorkommen, dass Sie nach der Erstellung Ihrer Overcloud eine zusätzliche Konfiguration hinzufügen möchten, entweder bei erstmaliger Erstellung oder nachfolgender Aktualisierung der Overcloud. In diesem Fall verwenden Sie die
OS::TripleO::NodeExtraConfigPost
Ressource, um die Konfiguration unter Verwendung der Standard OS::Heat::SoftwareConfig
Typen anzuwenden. So werden zusätzliche Konfigurationen nach Abschluss der Overcloud-Hauptkonfiguration angewendet.
In diesem Beispiel erstellen Sie zuerst eine einfache Heat-Vorlage (
/home/stack/templates/nameserver.yaml
), die ein Skript ausführt um resolv.conf
jedem Knoten einen variablen Nameserver anzufügen.
heat_template_version: 2014-10-16 parameters: servers: type: json nameserver_ip: type: string resources: ExtraConfig: type: OS::Heat::SoftwareConfig properties: group: script config: str_replace: template: | #!/bin/sh echo "nameserver _NAMESERVER_IP_" >> /etc/resolve.conf parameters: _NAMESERVER_IP_: {get_param: nameserver_ip} ExtraDeployments: type: OS::Heat::SoftwareDeployments properties: servers: {get_param: servers} config: {get_resource: ExtraConfig} actions: ['CREATE','UPDATE']
Wichtig
Der
servers
Parameter ist die Serverliste zur Anwendung der Konfiguration und wird von der Parent-Vorlage bereitgestellt. Dieser Parameter ist in allen OS::TripleO::NodeExtraConfigPost
Vorlagen erforderlich.
Erstellen Sie als nächstes eine Umgebungsdatei (
/home/stack/templates/post_config.yaml
), die Ihre Heat-Vorlage als OS::TripleO::NodeExtraConfigPost:
Ressourcentyp registriert.
resource_registry: OS::TripleO::NodeExtraConfigPost: nameserver.yaml parameter_defaults: nameserver_ip: 192.168.1.1
Um die Konfiguration hinzuzufügen, fügen Sie die Umgebungsdatei dem Stack bei Erstellung oder Aktualisierung der Overcloud hinzu. Zum Beispiel:
$ openstack overcloud deploy --templates -e ~/templates/post_config.yaml
Das fügt die Konfiguration allen Knoten hinzu, nachdem die Hauptkonfiguration bei ihrer erstmaligen Erstellung oder einer nachfolgenden Aktualisierung abgeschlossen ist.