GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat fénixNAP BMC Ansible Module

Úvod

Ansible je open-source software pro správu a automatizaci serverů, který umožňuje Infrastructure as Code (IaC). Tento nástroj umožňuje nasazování aplikací, zajišťování a správu konfigurace jednoduše a efektivně.

Ansible Automation Hub shromažďuje moduly od společnosti Red Hat a certifikovaných partnerů. phoenixNAP je hrdý na to, že je součástí kolekce důvěryhodného obsahu Ansible s pluginem Bare Metal Cloud. Tento koncept, který Ansible představil, umožňuje instalovat cloudové poskytovatele jako další knihovny.

Podle kroků v této příručce nainstalujte modul phoenixNAP BMC Ansible a naučte se používat příslušné příručky.

Předpoklady

  • Ansible nainstalovaný na řídicím počítači
  • Python nainstalovaný na řídicím počítači (ve výchozím nastavení k dispozici)

Výhody použití modulu PNAP BMC Ansible Module

Tento nástroj IaC byl navržen tak, aby zákazníkům umožňoval poskytovat servery Bare Metal Cloud a provádět další úkoly pomocí jednoduchých skriptů YAML tzv. playbooky. Nyní můžete efektivně automatizovat vytváření serverů pomocí neměnného zajišťování. Kromě výhody automatizace IT procesů je dalším bonusem možnost znovu spustit stejný kód a vrátit server do původního stavu v případě nechtěných úprav.

Tento model nemá master a slave stroje. K odesílání souborů používáte jeden počítač, tj. ke spuštění skriptu na jednom nebo více vzdálených hostitelích. Na jednotlivých uzlech nejsou žádní agenti, kteří stahují informace z hlavního serveru. Modul Bare Metal Cloud nevyžaduje SSH ke spuštění playbooků.

Tím, že se stanete certifikovaným pluginem na Red Hat Ansible Automation Hub je proces instalace modulu BMC rychlý a dokončen pomocí jediného příkazu Ansible . Poté můžete dát pokyn Ansible, aby spustila skript, který obsahuje kód YAML s popisem automatizační úlohy, kterou chcete provést. Modul zajišťuje dosažení vámi zadaného konečného výsledku a ve správném pořadí.

Obsah v Ansible Automation Hub je podporován společností Red Hat a jejími partnery. Tímto způsobem si i ta nejnáročnější prostředí mohou být jisti, že moduly splní očekávání.

Nainstalujte modul BMC Ansible Module

Před instalací pluginu BMC Ansible potřebujete požadavky Pythonu balíček na vašem stroji. Umožňuje odesílání různých typů HTTP požadavků.

Chcete-li nainstalovatpožadavky , zadejte:

pip install requests

Poté spusťte příkaz Ansible a nainstalujte modul phoenixNAP BMC:

ansible-galaxy collection install phoenixnap.bmc

Po dokončení instalace si prohlédněte dokumentaci modulu pomocí tohoto příkazu:

ansible-doc phoenixnap.bmc.server

Plugin Ansible BMC závisí na požadavcích API. Všechny požadavky BMC API jsou zdokumentovány na portálu phoenixNAP Developers Portal.

Vytvořit soubor pověření pro ověření

Chcete-li se úspěšně ověřit pomocí našeho autorizačního serveru, použijte typ udělení přihlašovacích údajů klienta.

Ve svém domovském adresáři vytvořte adresář .pnap a config.yaml soubor uvnitř.

Soubor musí obsahovat následující informace:

clientId: myClientId

clientSecret: myClientSecret

Nahraďte myClientId a myClientSecret s vaším ID a tajemstvím.

Ansible phoenixNAP BMC Playbooks

Psaní Ansible playbooků nevyžaduje speciální kódovací dovednosti a pokrývají všechna dostupná BMC API. Tyto skripty jsou napsány v YAML, jednoduchém serializačním jazyce používaném při vytváření konfiguračních souborů. Ansible funguje tak, že kontroluje aktuální stavy serverů a porovnává je se sadou instrukcí v playbooku.

Když se stav neshoduje s definovaným konečným výsledkem, modul zajistí, že se bude řídit modelem zdrojů ze skriptu k dosažení stanoveného cíle.

Pokud spustíte playbook více než jednou, modul nebude provádět další úlohy. Jakmile aktuální stav serveru BMC odpovídá cíli skriptu, můžete skript spustit vícekrát a modul nebude provádět žádnou úlohu.

Jak spustit BMC Playbooks

Název příručky naznačuje, co skript dělá. Například playbook_power_off.yml vypne jeden nebo více serverů.

Chcete-li spustit playbook, použijte tuto syntaxi:

ansible-playbook playbook_name.yml

Proto pro resetování serveru zadejte:

ansible-playbook playbook_reset.yml

Příklady BMC Playbook

Příklady příruček YAML, které poskytneme níže, jsou si navzájem podobné. Rozdíl je ve stavu serveru, kterého chcete dosáhnout. Jediný soubor, který se od ostatních mírně liší, je skript pro vytvoření serveru.

Každá příručka musí obsahovat jeden nebo více názvů hostitele nebo id_serveru a také client_id a client_secret . Preferovanou metodou je zadat hodnoty do ~/.pnap/config.yaml místo v každém playbooku.

Vytvořit server

Název příručky:playbook_create.yml

- name: Create new servers for account
  hosts: localhost
  gather_facts: false
  vars_files:
    - ~/.pnap/config.yaml
  collections:
    - phoenixnap.bmc
  tasks:
  - server:
      client_id: "{{clientId}}"
      client_secret: "{{clientSecret}}"
      hostnames: [my-server-red]
      location: PHX
      os: ubuntu/bionic
      type: s1.c1.medium
      state: present
      ssh_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"

Odstranění serveru

Název příručky:playbook_deprovision.yml

- name: reset servers
  hosts: localhost
  gather_facts: false
  vars_files:
    - ~/.pnap/config.yaml
  collections:
    - phoenixnap.bmc
  tasks:
  - server:
      client_id: "{{clientId}}"
      client_secret: "{{clientSecret}}"
      hostnames: [my-server-red]
      state: absent

Vypnout server

Název příručky:playbook_power_off.yml

- name: power on servers
  hosts: localhost
  gather_facts: false
  vars_files:
    - ~/.pnap/config.yaml
  collections:
    - phoenixnap.bmc
  tasks:
  - server:
      client_id: "{{clientId}}"
      client_secret: "{{clientSecret}}"
      hostnames: [my-server-red]
      state: powered-off

Zapnout server

Název příručky:playbook_power_on.yml

- name: power on servers
  hosts: localhost
  gather_facts: false
  vars_files:
    - ~/.pnap/config.yaml
  collections:
    - phoenixnap.bmc
  tasks:
  - server:
      client_id: "{{clientId}}"
      client_secret: "{{clientSecret}}"
      hostnames: [my-server-red]
      state: powered-on

Restartujte server

Název příručky:playbook_reboot.yml

- name: reset servers
  hosts: localhost
  gather_facts: false
  vars_files:
    - ~/.pnap/config.yaml
  collections:
    - phoenixnap.bmc
  tasks:
  - server:
      client_id: "{{clientId}}"
      client_secret: "{{clientSecret}}"
      hostnames: [my-server-red]
      state: rebooted

Resetovat server

Název příručky:playbook_reset.yml

- name: reset servers
  hosts: localhost
  gather_facts: false
  vars_files:
    - ~/.pnap/config.yaml
  collections:
    - phoenixnap.bmc
  tasks:
  - server:
      client_id: "{{clientId}}"
      client_secret: "{{clientSecret}}"
      hostnames: [my-server-red]
      ssh_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
      state: reset

Vypnutí serveru

Název příručky:playbook_shutdown.yml

V tomto příkladu jsme použili id_serveru místo názvů hostitelů .

- name: shutdown servers
  hosts: localhost
  gather_facts: false
  vars_files:
    - ~/.pnap/config.yaml
  collections:
    - phoenixnap.bmc
  tasks:
  - server:
      client_id: "{{clientId}}"
      client_secret: "{{clientSecret}}"
      server_ids:
        - 5eda71ef674cf47bd2599cfa
      state: shutdown

Ubuntu
  1. Jak nainstalovat Ansible na AlmaLinux 8

  2. Jak nainstalovat Ansible na Debian 11

  3. Jak nainstalovat Ansible na CentOS 8

  1. Jak nainstalovat Ansible na Ubuntu Server 21.04

  2. Jak nainstalovat Ansible na Fedoru 35

  3. Jak nainstalovat Ansible na Ubuntu 18.04 LTS

  1. Jak nainstalovat a nakonfigurovat Ansible na Windows

  2. Jak nainstalovat Ansible na CentOS 7

  3. Jak nainstalovat Ansible na Linux Mint 20