vRealize Automation Cloud Assembly ondersteunt integratie met Puppet Enterprise-configuratiebeheer.

Wanneer u Puppet Enterprise als extern systeem aan Cloud Assembly toevoegt, is dit standaard beschikbaar voor alle projecten. U kunt het beperken tot specifieke projecten.

Om een Puppet Enterprise-integratie toe te voegen, moet u over de masternaam van de Puppet en de hostnaam of het IP-adres van de master beschikken.

U kunt Puppet-logboeken vinden op de volgende locatie voor het geval u deze moet controleren op fouten of voor informatiedoeleinden.

Beschrijving Logboeklocatie
Logboek voor gebeurtenissen gerelateerd aan maken en installeren

Logboeken bevinden zich op de geïmplementeerde machine in '~/var/tmp/vmware/provider/user_defined_script/$(ls -t ~/var/tmp/vmware/provider/user_defined_script/ | head -1)/'.

Raadpleeg het bestand log.txt voor volledige logboekinformatie. Voor gedetailleerde Puppet Agent-logboeken verwijzen we u naar https://puppet.com/docs/puppet/4.8/services_agent_unix.html#logging
Logboek voor Puppet-taken gerelateerd aan verwijderen en uitvoeren Logboeken bevinden zich op de PE in '~/var/tmp/vmware/provider/user_defined_script/$(ls -t ~/var/tmp/vmware/provider/user_defined_script/ | head -1)/'. Raadpleeg het bestand log.txt voor volledige logboekinformatie.

Procedure

  1. Selecteer Infrastructuur > Verbindingen > Integraties en klik op Integratie toevoegen.
  2. Selecteer Puppet.
  3. Voer de vereiste informatie in op de Puppet-configuratiepagina.
  4. Klik op Valideren om de integratie te controleren.
  5. Klik op Toevoegen.

resultaten

Puppet kan worden gebruikt met cloudsjablonen.

Volgende stappen

Voeg Puppet-onderdelen toe aan de gewenste cloudsjablonen.

  1. Selecteer, onder Cloudsjablonen in Cloud Assembly, Puppet op de canvaspagina van de cloudsjabloon onder de kop Inhoudsbeheer in het menu met cloudsjabloonopties en sleep het Puppet-onderdeel naar het canvas.
  2. Geef Puppet-eigenschappen op in het deelvenster aan de rechterkant.
    Eigenschap Beschrijving
    Master Voer de naam in van de primaire Puppet-machine die moet worden gebruikt met deze cloudsjabloon.
    Omgeving Selecteer de omgeving voor de primaire Puppet-machine.
    Rol Selecteer de Puppet-rol die u met deze cloudsjabloon wilt gebruiken.
    Uitvoeringsinterval agent De frequentie waarmee de Puppet-agent bij de primaire Puppet-machine de configuratiedetails moet opvragen die moeten worden toegepast op geïmplementeerde virtuele machines die aan deze cloudsjabloon zijn gekoppeld.
  3. Klik op het tabblad Code in het deelvenster rechts om de YAML-code voor de Puppet-configuratie-eigenschappen weer te geven.

Wanneer u een Puppet-onderdeel toevoegt aan een cloudsjabloon, kunt u de eigenschap installMaster toevoegen aan het YAML-bestand om te wijzen naar een Puppet-installatiemaster, ook wel compilatiemaster genoemd. De waarde van deze eigenschap kan het IP-adres of de hostnaam van de Puppet-compilatiemaster zijn. Het gebruik van deze eigenschap biedt toegang tot verbeterde mogelijkheden voor geïmplementeerde virtuele Puppet-machines en biedt ook ondersteuning voor extra acties voor dag 2.

  Puppet_Agent:
    type: Cloud.Puppet
    properties:
      account: PEIntegrationAccount
      environment: production
      role: 'role::linux_webserver'
      host: '${CentOS-Puppet.*}'
      username: root
      password: password123!
      installMaster: my-pe-compile-master.example.com
      agentConfiguration:
        certName: '${CentOS-Puppet.address}'
      osType: linux
      count: 1

Bepaalde machinegerelateerde informatie wordt door vRealize Automation standaard als feiten doorgegeven aan virtuele Puppet-machines. Voor Windows-machines is deze informatie erg beperkt. Op Linux-machines wordt standaard meer informatie doorgegeven en kunnen gebruikers aanvullende informatie doorgeven met behulp van aangepaste eigenschappen.

Er gelden beperkingen voor wat wordt doorgegeven aan Puppet-machines onder Linux. Aangepaste eigenschappen op hostresources en op de Puppet-agent worden doorgegeven aan virtuele Puppet-machines. Aangepaste eigenschappen op netwerkresources worden niet doorgegeven aan de virtuele machine. Doorgegeven items omvatten eenvoudige eigenschappen, booleaanse eigenschappen, aangepaste namen en complexe typen zoals geneste kaarten met arrays.

In het volgende voorbeeld ziet u hoe verschillende aangepaste resources kunnen worden aangeroepen op hostresources:

resources:
  Puppet-Host:
    type: Cloud.AWS.EC2.Instance
    properties:
      customer_specified_property_on_ec2_resource: "property"
      customer_specified_property_on_network_resource_that_should_also_be_a_fact_and_is_boolean: true
      CustomerNameStuff: "zone A"
      try_map:
      key: value
      keytwo: value
      nested_array:
        - one
        - two
        - true
      try_array:
        - one
        - two
        -three:
           inner_key: value

Als een Puppet-purge-opdracht fouten oplevert, negeert vRealize Automation, in de meeste gevallen, purgefouten voor knooppunten en wordt doorgegaan met verwijderen van het knooppunt. Zelfs als er geen certificaat voor een specifiek knooppunt wordt gevonden, gaat vRealize Automation door met verwijderen. Als vRealize Automation om een of andere reden niet kan doorgaan met verwijderen van het knooppunt, kunt u op Verwijderen klikken in het menu Acties van de pagina Implementaties om een dialoogvenster te openen waarmee u kunt doorgaan met verwijderen van het knooppunt. Een soortgelijke werkstroom wordt uitgevoerd wanneer u een Puppet-integratie uit een cloudsjabloon verwijdert en vervolgens de sjabloon op de implementatie toepast. Deze werkstroom activeert een purgebewerking op het knooppunt die wordt behandeld zoals hierboven is beschreven.