In un ambiente di distribuzione Application Services, è necessario creare un'istanza di una soluzione come Puppet Master, per fare in modo che quest'ultimo venga sempre usato quando un'applicazione che usa i servizi basati su Puppet viene distribuita in quell'ambiente di distribuzione.

È possibile creare solo un'istanza della soluzione Puppet Master per ogni ambiente di distribuzione. Le istanze di soluzioni di più ambienti di distribuzione possono puntare allo stesso Puppet Master. Per informazioni sull'uso di uno script Ruby eseguito localmente sul server di Puppet Master, vedere Registrare un'istanza della soluzione Puppet Master.

Prerequisiti

Procedura

  1. Accedere all'interfaccia Web di Application Services.
  2. Nella barra del titolo di Application Services, fare clic sul menu a discesa e selezionare Cloud > Ambienti di distribuzione.
  3. Selezionare un ambiente di distribuzione esistente.
  4. Selezionare la scheda Istanze soluzione e fare clic su Crea istanza soluzione.
  5. Specificare le informazioni relative all'istanza di soluzione per l'ambiente di distribuzione.
    Opzione Descrizione
    Nome e descrizione

    Includere il nome della soluzione.

    È possibile aggiungere le informazioni sulla configurazione dell'agente o della proprietà per la soluzione nella sezione di descrizione.

    Soluzione Selezionare la soluzione Puppet Master v1.0.0 disponibile dall'elenco a discesa.
    Le proprietà della soluzione e gli agenti corrispondenti vengono compilati.
  6. Nella sezione Proprietà, immettere i valori della proprietà obbligatori.
    Proprietà Descrizione
    puppet_server

    Nome di dominio completo del server di Puppet Master.

    Per fare in modo che l'agente consideri attendibile il certificato del Puppet Master, usare uno dei nomi DNS validi impostati quando il Puppet Master è stato installato. Il server Application Services deve essere in grado di contattare il Puppet Master a questo nome DNS, a meno che non venga fornita anche la proprietà puppet_server_ip.

    puppet_server_ip

    Indirizzo IP del server di Puppet Master.

    L'indirizzo IP deve essere specificato se il nome host del server di Puppet Master non è risolvibile nei nodi dell'agente o del server Application Services.

    puppet_environment Nome dell'ambiente Puppet Master assegnato a un agente puppet. Questo nome corrisponde alla proprietà di configurazione dell'ambiente di un agente puppet.
    agent_run_interval Frequenza con cui l'agente puppet applica la libreria. L'intervallo di esecuzione predefinito è ogni 30 minuti (30 min). È possibile specificare l'intervallo di esecuzione nelle seguenti unità.
    • Secondi. Ad esempio: 30 o 30s.
    • Minuti. Ad esempio: 30m.
    • Ore. Ad esempio: 6h.
    • Giorni. Ad esempio: 5d.
    • Anni. Ad esempio: 2y.
    Se l'intervallo di esecuzione pari a 0, l'agente puppet effettua l'esecuzione ininterrottamente.
    identity_private_key

    Chiave privata del certificato emesso nel server Application Services dal Puppet Master.

    Application Services usa questo certificato per l'autenticazione con Puppet Master e MCollective. Il formato del certificato è codificato PEM, inclusa l'intestazione e il trailer. Il formato dell'intestazione è, ad esempio, '-----BEGIN RSA PRIVATE KEY--'

    Copiare i contenuti del file TempCredsDir/private_keys/Name.pem creato per preparare il Puppet Master, come valore per questa proprietà.

    identity_public_cert

    Certificato X509 corrispondente alla proprietà identity_private_key.

    Il formato del certificato è codificato PEM, inclusa l'intestazione e il trailer. Il formato dell'intestazione è, ad esempio, '-----BEGIN CERTIFICATE--'

    Copiare i contenuti del file TempCredsDir/certs/Name.pem creato per preparare il Puppet Master, come valore per questa proprietà.

    ca_cert

    Il certificato X509 dell'autorità di certificazione che emette i certificati digitali utilizzato per l'autenticazione con Puppet Master e MCollective.

    Il formato del certificato è codificato PEM, inclusa l'intestazione e il trailer. Il formato dell'intestazione è, ad esempio, '-----BEGIN CERTIFICATE--'

    Copiare i contenuti del file TempCredsDir/certs/ca.pem creato per preparare il Puppet Master, come valore per questa proprietà.

    mc_servers_shared_cert

    Certificato del server condiviso o chiave pubblica per il cluster di MCollective.

    Il formato del certificato è codificato PEM, inclusa l'intestazione e il trailer. Il formato dell'intestazione è, ad esempio '-----BEGIN CERTIFICATE-----' o '-----BEGIN PUBLIC KEY--'

    Copiare i contenuti del file TempCredsDir/certs/pe-internal-mcollective-servers.pem per Puppet Enterprise o TempCredsDir/certs/mcollective-servers.pem per Puppet Open Source creato per preparare il Puppet Master, come valore per questa proprietà.

    Il formato del trailer è, ad esempio' -----END CERTIFICATE-----' o '-----END RSA PUBLIC KEY--'

    mc_messaging_server_password

    Password corrispondente all'impostazione di configurazione plugin.activemq.pool.1.password nel file di configurazione del server di MCollective.

    Ad esempio, il file di configurazione del server di MCollective in Puppet Enterprise si trova in /etc/puppetlabs/mcollective/server.cfg.

    identity_cert_name

    Nome del certificato di identità.

    Questo nome è la stringa impostata quando è stato generato il certificato di Application Services per corrispondere con il Puppet Master durante la relativa preparazione.

    puppet_version

    Versione della suite di Puppet Enterprise per una versione di Puppet Enterprise e di un pacchetto Puppet per un Puppet Open Source.

    Ad esempio, la versione di Puppet Enterprise è 3.2.3 e la versione di Puppet Open Source è 3.6.2.

    mc_messaging_server_username

    Nome utente corrispondente all'impostazione di configurazione plugin.activemq.pool.1.user nel file di configurazione del server di MCollective.

    Ad esempio, il file di configurazione del server di MCollective in Puppet Enterprise si trova in /etc/puppetlabs/mcollective/server.cfg.

    mc_messaging_server_port

    Porta corrispondente all'impostazione di configurazione plugin.activemq.pool.1.port nel file di configurazione del server di MCollective.

    Ad esempio, il file di configurazione del server di MCollective in Puppet Enterprise si trova in /etc/puppetlabs/mcollective/server.cfg.

    node_manifest_dir

    Directory in cui si trovano i manifesti di definizione dei nodi per le macchine virtuali distribuite usando Application Services.

    Il Puppet Master site.pp deve essere in grado di importare i file *.pp da questa directory.

    mc_appd_agent_ddl

    Posizione del file DDL dell'agente di Application Services di MCollective.

    Non è necessario sovrascrivere questo valore.

    mc_client_setup_script

    Posizione dello script Beanshell dell'impostazione del client MCollective.

    Non è necessario sovrascrivere questo valore.

    global_conf URL per scaricare la configurazione globale Darwin per ciascun nodo.
    agent_post_install_wait Orario in secondi di attesa dopo l'installazione dell'agente.
  7. Nella sezione Agenti, immettere i valori obbligatori.
    Opzione Descrizione
    pe_installer_payload_base_path

    URI di base dove sono ospitati i file tar di Puppet Enterprise specifici per l'architettura e per il sistema operativo. Non applicabile a Windows.

    Lo script rileva l'URI in base a pe_installer_payload_base_path e alla versione corrente del sistema operativo e dell'architettura sulla macchina. È possibile ignorare questa rilevazione automatica specificando un valore per la proprietà pe_installer_payload. Il rilevamento automatico presuppone che la struttura della directory specifica effettui il mirroring dei file tar ospitati nella struttura di Puppet Labs che si trovano su https://s3.amazonaws.com/pe-builds/.

    installer_payload_base_path Versione Windows di pe_installer_payload_base_path.
    is_enterprise Indica se il Puppet Master che viene registrato è un Puppet Enterprise con un valore impostato su true o un Puppet Open Source con un valore impostato su false.
  8. Nella sezione Agenti, immettere il valore facoltativo.
    Opzione Descrizione
    pe_installer_payload

    Collegamento al download del file tar per Puppet Enterprise. Non applicabile a Windows.

    Lasciare vuoto tale valore, a meno che non si intenda fornire esplicitamente un URI completo di un file tar di Puppet Enterprise indipendente dal sistema operativo. Se il valore non viene specificato, lo script rileva l'URI in base a pe_installer_payload_base_path e alla versione corrente del sistema operativo e dell'architettura sulla macchina. Un esempio di URI è https://s3.amazonaws.com/pe-builds/released/3.0.1/puppet-enterprise-3.0.1-all.tar.gz

    installer_payload Versione Windows di pe_installer_payload.
  9. Fare clic su Salva.
    Application Services verifica i valori dell'agente e della proprietà immessi e visualizza un messaggio di errore se mancano i valori obbligatori.
  10. Fare clic su Convalida connessione per verificare la connessione al server.
  11. Fare clic sulla freccia accanto al nome dell'istanza di soluzione per tornare alla pagina precedente.
  12. (Facoltativo) Sulla macchina client con il Puppet installato, immettere il comando per rimuovere la directory temporanea delle credenziali creata quando il certificato pubblico è stato scaricato dal Puppet Master.
    rm -rf TempCredsDir