GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak vytvořit soubor v Ansible

Úvod

Ansible je nástroj Infrastructure as Code, který vám umožňuje používat jediné centrální místo (řídicí uzel Ansible) k monitorování a ovládání velkého počtu vzdálených serverů (hostitelů).

Pomocí Ansible můžete nastavit řadu úloh, které mohou provádět vzdálení hostitelé, včetně vytváření nových souborů a adresářů.

Tento výukový program popisuje různé způsoby, jak můžete použít Ansible k vytváření souborů na vzdálených hostitelích.

Předpoklady

  • Systém se systémem Ubuntu 20.04
  • Přístup do příkazového řádku / okna terminálu
  • Ansible nainstalován a nakonfigurován (viz naše průvodce instalací Ansible na Windows nebo instalací Ansible na Ubuntu)

Vytvoření Ansible Playbook

Ansible playbooky jsou seznamy úloh, které chcete, aby vaši vzdálení hostitelé prováděli. Lze je uložit a znovu použít, což vám umožní automatizovat složité procesy.

Každý příkaz, který chcete vydat vzdálenému hostiteli, včetně vytváření souborů a složek, je úkol, který musíte zahrnout do playbooku. Jakmile spustíte playbook, váš vzdálený hostitel provede všechny úkoly v něm definované.

Pro vytvoření Ansible playbooku použijte příkaz:

sudo nano /etc/ansible/playbook.yaml

Tento příkaz vytvoří soubor .yaml s názvem ‘playbook’ v instalační složce Ansible. Použijeme úkoly v playbook.yaml soubor k vytváření souborů a složek na našich vzdálených hostitelích.

Použití funkce suchého běhu Ansible umožňuje uživatelům spustit playbook bez provádění změn na serverech. Používá vestavěný kontrolní režim ke kontrole chyb v playbooku před spuštěním.

Vytvoření prázdného souboru

Nejrychlejší způsob, jak vytvořit prázdný soubor, je pomocí file Ansible modul.

Přidejte do své příručky Ansible následující konfiguraci:

---

- hosts: all
  tasks:
  - name: Creating an empty file
    file:
      path: "/your path"
      state: touch

Výše uvedený soubor má následující součásti:

  • hosts : Definuje, na kterých vzdálených hostitelích ze souboru inventáře Ansible chcete úlohu provést. Vše znamená, že příkaz obdrží každý hostitel, ale můžete také zadat název kategorie hostitelů nebo jednoho jednotlivého hostitele.
  • tasks : Oznamuje, že vzdálený hostitel potřebuje provést úlohu.
  • name :Umožňuje definovat název úkolu. Název je pouze pro vaši informaci a nemá žádný vliv na samotný úkol.
  • file :Zapojí souborový modul Ansible k vytvoření nového souboru.
  • path :Definuje cestu pro nový soubor na pevném disku vzdáleného hostitele.
  • state :Podobně jako dotykový příkaz v terminálu Ubuntu, zadáním touch vytvoří prázdný soubor ve zvoleném umístění.

Pro spuštění playbooku použijte:

ansible-playbook /etc/ansible/playbook.yaml

Vytvoření souboru s obsahem

Pokud chcete vytvořit nový soubor s obsahem, můžete nejprve pomocí výše uvedené metody vytvořit prázdný soubor a poté použít blockinfile nebo lineinfile modul pro vložení obsahu.

Rychlejší způsob je použít copy modul. I když se tento modul používá ke kopírování souboru z řídicího uzlu na vzdálený hostitel, můžete zahrnout content parametr pro okamžité přidání obsahu do prázdného souboru.

Použijte tuto konfiguraci ve své příručce:

---

- hosts: all
  tasks:
  - name: Creating a file with content
    copy:
      dest: "/your path"
      content: |
        line 01
        line 02

V souboru jsme použili:

  • copy :Zapojí Ansibleův kopírovací modul.
  • dest :Definuje cestu pro váš nový soubor.
  • content :Tento parametr přidá line 01 a line 02 jako obsah nového souboru.

Vytvoření více souborů

Pomocí jednoho úkolu v Ansible playbooku můžete vytvořit více souborů.

K vytvoření více souborů použijte následující konfiguraci:

---

- hosts: all
  tasks:
  - name: Create multiple files
    file: 
      path: "{{ item }}"
      state: touch
    with_items:
    - test01.txt
    - test02.txt
    - test03.txt
    - test04.txt

V konfiguračním souboru výše jsme definovali:

  • path :"{{ item }}" hodnota znamená, že Ansible vytvoří samostatnou cestu pro každý příslušný soubor. Ve výchozím nastavení se tyto soubory ukládají do domovské složky vzdáleného hostitele. Definujte jinou cestu pomocí /your_folder_path/"{{ item }}" .
  • with_items :Tento parametr se používá ke spuštění seznamu souborů k vytvoření. Vypište tolik souborů, kolik chcete. V našem příkladu jsme vytvořili seznam čtyř souborů s názvem test .

Vytvoření adresáře

Vytvoření nového adresáře používá stejnou konfiguraci jako při vytváření prázdného souboru. Jediný rozdíl je v tom, že pod state zadejte directory jako hodnotu:

---

- hosts: all
  tasks:
  - name: Creating a new directory
    file:
      path: "/your path"
      state: directory

Odebrání souborů

Ansible playbooky mohou také odstranit existující soubory. Chcete-li to provést, nastavte state parametr absent :

---

- hosts: all
  tasks:
  - name: Removing a file
    file:
      path: "/your path"
      state: absent

Pokud je soubor již odstraněn, tento příkaz nedělá nic.

Nastavení oprávnění k souboru

U všech výše uvedených příkladů můžete také nastavit oprávnění pro nové soubory a složky. K tomu musíte použít mode parametr.

Existují dva způsoby, jak to provést:

  • Použití formátu osmičkového režimu: Můžete použít osmičková čísla, například 0644 nebo 0777. Nezapomeňte na úvodní 0, protože její vynechání může vést k neočekávaným výsledkům.
  • Použití formátu symbolického režimu: Můžete použít hodnoty jako u=rwx , g=rx nebo o=rx , kde u znamená vlastník , g znamená skupina a o znamená ostatní . Oprávnění jsou definována jako r pro přečtení , w pro napsání a x pro spustit .

Můžete například použít osmičkovou hodnotu 0755 při definování vlastníka:

---

- hosts: all
  tasks:
  - name: Create a new file with permissions
    file:
      path: "/your path"
      state: touch
      mode: 0755
      owner: test

Můžete také použít symbolický ekvivalent 0755:

---

- hosts: all
  tasks:
  - name: Create a new file with permissions
    file:
      path: "/your path"
      state: touch
      mode: u=rwx,g=rx,o=rx
      owner: test

Ubuntu
  1. Jak vytvořit soubor ve Správci souborů Plesk

  2. Jak vytvořit swap v Linuxu

  3. Jak vytvořit odkládací soubor v Linuxu

  1. Jak vytvořit Ansible Playbook

  2. Jak vytvořit uživatele Linuxu pomocí Ansible

  3. Jak vytvořit soubor a připojit jej jako souborový systém?

  1. Ansible Playbook:Jak vytvářet a konfigurovat Playbooky

  2. Jak nainstalovat Ansible na Linux Mint 20

  3. Jak vytvořit dočasný soubor ve skriptu Shell?