Als ontwikkelaar van cloudsjablonen kunt u eigenschappen toevoegen aan de YAML om de Salt-minion te installeren wanneer u de sjabloon implementeert.

De kerneigenschappen die u toevoegt aan de sjabloon, omvatten externe toegang voor de machine die u wilt implementeren en configuratie-eigenschappen voor de SaltStack resource. Het gaat in deze procedure alleen over geselecteerde eigenschappen. De YAML biedt ook andere SaltStack resource-eigenschappen die niet in dit voorbeeld worden gebruikt. Bekijk het schema voor meer informatie.

In dit voorbeeld ziet u hoe u een gebruikersnaam en wachtwoord toevoegt voor de eigenschappen voor externe toegang, maar u kunt ook een geheime eigenschap configureren en deze toevoegen aan de sjabloon. Zie Geheime Automation Assembler-eigenschappen voor een voorbeeld.

Procedure

  1. Selecteer Ontwerp > Cloudsjablonen in Automation Assembler.
  2. Open een bestaande sjabloon.
  3. Zoek de SaltStack resource en sleep deze naar het canvas.
  4. Koppel de SaltStack resource aan de machine waarop de minion wordt geïnstalleerd.
  5. Voeg eigenschappen toe aan de SaltStack resource in het codevenster.
    Het is niet vereist om alle mogelijke eigenschappen toe te voegen. De gebruikte waarden in dit voorbeeld worden uitgelegd in de tabel.
    Opmerking: De eigenschap createTimeout is standaard ingesteld op 30 minuten. U kunt deze instelling indien nodig bijwerken met de indeling min/uur, bijvoorbeeld: 30 m of 1 u.
    Cloud_SaltStack_1:
        type: Cloud.SaltStack
        properties:
          masterId: saltstack_enterprise_installer
          hosts:
            - ${resource["Cloud_VM_1".id}
          saltEnvironment: sse
          stateFiles:
            - /doe.sls
          variables: 
            user: joe
          additionalMinionParams:
            grains:
              roles:
                - webserver
                - database   
           additionalAuthParams:
             profile:
                tmp_dir: /var/run

    Hier vindt u een beschrijving van de Cloud_SaltStack_1-eigenschappen die in dit voorbeeld worden gebruikt.

    Eigenschap Beschrijving
    masterId In het voorbeeldschema is saltstack_enterprise_installer de waarde voor masterId.

    Mogelijk heeft u al master-id's in Automation Config gedefinieerd via Beheer > Mastersleutels.

    hosts De waarde voor hosts is de id van de machine of het cluster met machines waarop u de minion wilt installeren. Standaard wordt de naam van de machine doorgegeven als minion-id in Automation Config.

    Het wordt aanbevolen dat u machinenamen van 15 tekens of minder kiest, in het bijzonder als u minions in Windows implementeert. Windows staat geen hostnamen van meer dan 15 tekens toe.

    Als u een aangepaste naamgevingsconventie wilt definiëren voor de machines die u wilt implementeren, raadpleegt u Aangepaste naamgeving voor geïmplementeerde resources in Automation Assembler.

    saltEnvironment In dit voorbeeld is sse een bestandslocatie voor de statusbestanden.

    Mogelijk staan uw statusbestanden op andere bestandsserverlocaties in Automation Config in Configuratie > Bestandsserver.

    stateFiles In dit voorbeeld is doe.sls een statusbestand in de bestandsserverdirectory die is opgegeven als saltEnvironment.
    variables Variabelen die in de cloudsjabloon zijn gedefinieerd, worden als pillars doorgegeven aan Salt-statussen. In dit voorbeeld wordt de variabele user doorgegeven aan het bestand doe.sls.

    Er kan naar variabelen worden verwezen in statusbestanden met Jinja, zoals u in het volgende voorbeeld ziet:

    {% set username = pillar.get('user', 'random') %}
    
    friend:
      user.present:
        - names:
          -  {{username}}

    Het bestand doe.sls zorgt ervoor dat een gebruiker, voorgesteld door de variabele user in de cloudsjabloon, bestaat. Als de variabele niet is opgegeven in de cloudsjabloon, verzekert dit de gebruiker ervan dat random aanwezig is.

    additionalMinionParams Gebruik deze eigenschap om aanvullende configuratieparameters door te geven voor de minion. Deze parameters moeten worden doorgegeven als woordenboek:

    • grains: gebruik deze eigenschap om aangepaste Salt-grains toe te wijzen aan de minion. Een of meer paren key:value worden geaccepteerd. De waarden kunnen een tekenreeks, een array of een toewijzing zijn.

      U kunt alleen aangepaste graingegevens toewijzen bij het inrichten van een nieuwe machine. U kunt geen aangepaste graingegevens toewijzen tijdens het uitvoeren van de acties voor dag 2 SaltStack-resource toewijzen of Salt-configuratie bijwerken.

    additionalAuthParams Gebruik deze eigenschap om aanvullende autorisatieparameters door te geven voor de inrichting van de minion die wordt samengevoegd/overschreven met de standaard Salt-cloudconfiguratie. Deze parameters moeten worden doorgegeven als woordenboek.

    Een of meer sleutelwaardeparen worden geaccepteerd als tekenreeks, array of toewijzing. Zie Gebruiksscenario: Hoe implementeer ik minions met behulp van de API in een Linux-omgeving voor een voorbeeld van hoe deze eigenschap wordt gebruikt.

    Opmerking: U kunt geen aanvullende autorisatieparameters toewijzen tijdens het uitvoeren van de actie voor dag 2, Salt-configuratie bijwerken.
  6. Voeg remoteAccess-eigenschappen toe aan de machine die als host fungeert voor de Salt-minion.

    Als u een Salt-minion implementeert op een Linux-machine, kan de sleutel authentication de waarde usernamePassword of generatedPublicPrivateKey hebben. publicPrivateKey wordt niet ondersteund.

    Als u een Salt-minion implementeert op een Windows-machine, moet usernamePassword. de waarde voor de sleutel authentication zijn.

     remoteAccess:
            authentication: usernamePassword
            username: adminUser
            password: adminPassword
  7. Controleer of uw YAML vergelijkbare eigenschappen bevat als in het onderstaande voorbeeld.
    resources:
      Cloud-Network:
        type: Cloud.Network
        properties:
          networkType: existing 
      Cloud_VM_1:
        type: Cloud.vSphere.Machine
        properties:
          image: ubuntu
          flavor: small
          remoteAccess:
            authentication: usernamePassword
            username: adminUser
            password: adminPassword
          networks:
            - network: ${resource["Cloud-Network"].id}
      Cloud_SaltStack_1:
        type: Cloud.SaltStack
        properties:
          masterId: saltstack_enterprise_installer
          hosts:
            - ${resource["Cloud_VM_1"].id}
          saltEnvironment: sse
          stateFiles:
            - /doe.sls
          variables: 
            user: joe
          additionalMinionParams:
            grains:
              roles:
                - webserver
                - database
  8. Test en implementeer de cloudsjabloon.
    Zie Problemen met minionimplementaties oplossen als uw minionimplementatie mislukt.
  9. Controleer de Salt-configuratie-eigenschappen voor de geïmplementeerde machine.
    1. Selecteer Implementaties > Implementaties en open de implementatiedetails.
    2. Klik op het tabblad Topologie op de machine en vouw de eigenschappen voor de Salt-configuratie in het rechterdeelvenster uit.

      Schermafbeelding van het tabblad Topologie met de eigenschappen voor de Salt-configuratie uitgevouwen in het rechterdeelvenster. Eigenschappen zijn bijvoorbeeld Master-id, Salt-omgeving en statusbestanden.

De minion controleren in Automation Config

Nadat u de minion op de virtual machine hebt geïnstalleerd, zoekt u de minion en voert u taken of opdrachten uit voor de resource.

Procedure

  1. Om Automation Config te openen, klikt u in de rechterbovenhoek op het menu Applicaties en klikt u op Cloud Services-console.
  2. Open de VMware Aria Automation-service.
  3. Klik op de servicetegel Config.
  4. Vouw Minionsleutels uit in Automation Config en klik op Geaccepteerd.
  5. Klik in de kolom Minion-id op het filterpictogram en voer de naam van de minion in.
    De naam van de minion wordt standaard ingesteld op de hostnaam van de virtuele machine. In dit voorbeeld is vra-vm-010 de minion-id.
    Schermafbeelding van de geaccepteerde minionsleutels in Automation Config.
  6. Als u de details wilt weergeven, klikt u op de naam van de minion.
    U kunt taken of opdrachten uitvoeren voor de minion. Bijvoorbeeld: inzage in schijfgebruik. Deze taak retourneert statistieken over het schijfgebruik voor een minion.
    Schermafbeelding van de detailpagina voor de voorbeeldminion-id

Salt-graingegevens weergeven

Nadat u een Salt-minion op uw virtuele machines heeft geïmplementeerd, kunt u de grains van de minion in Automation Assembler bekijken.

Er worden Salt-grains verzameld voor het besturingssysteem, de domeinnaam, het IP-adres, de kernel, het type besturingssysteem, het geheugen en vele andere systeemeigenschappen van de minion. Als u geen toegang heeft tot Automation Config of als u graingegevens snel wilt weergeven zonder de Automation Assembler-gebruikersinterface te verlaten, kunt u het tabblad Topologie gebruiken om graingegevens weer te geven. Zie Salt-grains voor meer informatie over graingegevens.

De grains van een minion weergeven:

  1. Selecteer Resources > Implementaties in Automation Assembler en zoek vervolgens naar uw implementatie.
  2. Selecteer op het tabblad Topologie de virtuele machine die aan de SaltStack resource is gekoppeld.
  3. Zoek de sectie Salt-configuratie in het rechterdeelvenster en scrol omlaag om de lijst met graingegevens weer te geven.Schermafbeelding van graingegevens in Automation Assembler

De graingegevens van een minion worden opgehaald nadat u de minion heeft geïmplementeerd. Als u wilt zien wanneer de graingegevens voor het laatst zijn bijgewerkt, kunt u naar de onderkant van de sectie Salt-configuratie scrollen.

Opmerking: U kunt ook de Salt Grain-gegevens weergeven door op Resources > Virtuele machines te klikken en de gewenste VM te selecteren om machineconfiguraties en kenmerken weer te geven.
Schermafbeelding van de laatst bijgewerkte graingegevens in Automation Assembler