Zoeken…


Installeer Shade Library

Shade is een bibliotheek ontwikkeld door OpenStack om interacties met OpenStack-clouds, zoals DreamHost, te vereenvoudigen.

$ pip install schaduw

Schrijf een Playbook om een server te starten

Maak een bestand met de naam launch-server.yaml , dat wordt ons playbook.

Het eerste deel van het playbook is een lijst met hosts waarop je playbook zal draaien, we hebben er maar één, localhost.

- hosts: localhost

Vervolgens moeten we een lijst met taken definiëren die in dit playbook moeten worden uitgevoerd. We zullen er slechts één hebben die een Ubuntu Xenial-server op DreamCompute lanceert.

tasks:
  - name: launch an Ubuntu server

Het volgende deel van het playbook maakt gebruik van de os_server (OpenStack Server) module. Dit definieert hoe de server eruit moet zien in DreamCompute.

os_server:

De eerste stap is om te verifiëren bij DreamCompute; vervang {username} door uw DreamCompute-gebruikersnaam, {password} door uw DreamCompute-wachtwoord en {project} door uw DreamCompute-project. U vindt deze in het OpenStack RC- bestand.

  auth:
    auth_url: https://iad2.dream.io:5000
    username: {username}
    password: {password}
    project_name: {project}

Volgende regels definiëren enkele elementen van de nieuwe server.

  state: present
  name: ansible-vm1
  image: Ubuntu-16.04
  key_name: {keyname}
  flavor: 50
  network: public
  wait: yes

Laten we de vorige paar regels splitsen:

  • state is de status van de server, mogelijke waarden zijn present of absent
  • name is de naam van de te maken server; kan elke waarde hebben
  • image is de image van waaruit de server wordt opgestart; mogelijke waarden zijn zichtbaar op het DreamHost Cloud-webpaneel ; de variabele accepteert afbeeldingsnaam of UUID
  • key_name is de naam van de openbare sleutel die aan de server moet worden toegevoegd zodra deze is gemaakt; dit kan elke sleutel zijn die al is toegevoegd aan DreamCompute.
  • flavor is de smaak van server om op te starten; dit bepaalt hoeveel RAM en CPU uw server zal hebben; de variabele accepteert de naam van een smaakstof (gp1.semisonic) of de ID (50, 100, 200, enz.)
  • network is het netwerk om uw server op te zetten. In DreamHost Cloud is dit het public netwerk.
  • wait ingesteld op ja, dwingt het playbook te wachten tot de server is gemaakt voordat het verder gaat.

Het Playbook uitvoeren

Voer het Ansible-speelboek uit:

$ ansible-playbook launch-server.yaml

Je zou output als moeten zien

PLAY [localhost]
***************************************************************

TASK [setup]
*******************************************************************
ok: [localhost]

TASK [launch an Ubuntu server]
***********************************************
changed: [localhost]

PLAY RECAP
*********************************************************************
localhost                  : ok=2    changed=1    unreachable=0    failed=0

Als u nu het DreamHost Cloud-dashboard controleert , zou u een nieuw exemplaar met de naam "ansible-vm1" moeten zien



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow