GNU/Linux >> Znalost Linux >  >> Linux

Jak vytvářet a používat vlastní fakta v Ansible

Vlastní fakta (místní fakta) jsou proměnné, které jsou deklarovány na ansible spravovaném hostiteli. Vlastní fakta jsou deklarována v souboru ini nebo json v adresáři /etc/ansible/facts.d na spravovaném hostiteli. Názvy souborů vlastních faktů musí mít příponu .fact.

V tomto článku se budeme zabývat tím, jak vytvořit a použít vlastní fakta k instalaci souborového serveru samba a spuštění jeho služby na spravovaném hostiteli ansible. Zde používáme hostitele1 a hostitel2 jako součást skupiny souborových serverů v inventáři.

Abych demonstroval vlastní fakta, následuje moje nastavení laboratoře

  • control.example.com –  10.20.0.57
  • host1.example.com   —  10.20.0.10       // Spravovaný hostitel Ansible
  • host3.example.com   — 10.20.0.30         // Ansible spravovaní hostitelé

Poznámka: uživatel devops je nakonfigurován na ansible control a spravovaných hostitelích s právy sudo. Inventory a soubor ansible.cfg jsou definovány v adresáři /home/develops/install. Obsah mého inventáře je uveden níže:

[[email protected] install]$ cat inventory
[fileservers]
host1.example.com
host3.example.com

[dbservers]
host2.example.com
host1.example.com
[[email protected] install]$

Logické kroky k prohlášení a použití vlastních místních faktů jsou

  • Vytvořte soubor s fakty na hostiteli ansible control s příponou .fact
  • Vytvořte v playbooku jednu hru a vytvořte složku „/etc/ansible/facts.d“ a zkopírujte soubor faktů na spravované hostitele do této složky.
  • Vytvořte v playbooku 2. hru, která bude používat tato vlastní fakta pomocí ansible_local... k instalaci serveru samba a spuštění jeho služby.

Pojďme se ponořit do skutečné implementace vlastních nebo místních skutečností.

Krok 1) Vytvořte soubor vlastních faktů v řídicím uzlu

Pojďme vytvořit soubor customfacts.fact s následujícím obsahem

[[email protected] install]$ cat customfacts.fact
[localfacts]
pkgname = samba
srvc = smb
[[email protected] install]$

Zde localfacts je factname a pkgname &srvc jsou proměnné.

Krok 2) Vytvořte sešit se dvěma různými hrami

Vytvořte příručku customfacts-install.yaml s následujícím obsahem

[[email protected] install]$ vi customfacts-install.yaml
---
- name: Install custom facts
  hosts: fileservers
  vars:
    remote_dir: /etc/ansible/facts.d
    facts_file: customfacts.fact
  tasks:
  - name: Create Facts Dir on Managed Hosts
    file:
      path: "{{ remote_dir }}"
      state: directory
      recurse: yes
  - name: Copy Contents to Facts file
    copy:
      src: "{{ facts_file }}"
      dest: "{{ remote_dir }}"

- name: Install Samba Server with Custom Facts
  hosts: fileservers
  tasks:
  - name: Install SMB
    package:
      name: "{{ ansible_local.customfacts.localfacts.pkgname }}"
      state: present
  - name: Start SMB Service
    service:
      name: "{{ ansible_local.customfacts.localfacts.srvc }}"
      state: started
      enabled: yes

uložte a ukončete soubor.

Krok 3) Spusťte playbook na souborových serverech

Spustíme playbook na souborových serverech, než jej spustíme, ověříme konektivitu od řídicího uzlu k těmto uzlům.

[[email protected] install]$ ansible fileservers -m ping

Výše potvrzuje, že ping pong funguje dobře, takže spusťte ansible playbook pomocí příkazu beneath,

[[email protected] install]$ ansible-playbook customfacts-install.yaml

Výše uvedený výstup ukazuje, že playbook byl úspěšně proveden. Pojďme ověřit instalaci vlastních faktů a služby samba.

Krok 5) Ověřte vlastní místní fakta a službu Samba

Spusťte pod přípustným ad-hoc  příkazem ověřit instalaci vlastních faktů

[[email protected] install]$ ansible fileservers -m setup -a "filter=ansible_local"

Ověřte stav služby serveru samba provedením níže:

[[email protected] install]$ ansible fileservers -m command -a "systemctl status smb"

Perfektní, výše uvedený výstup potvrzuje, že Samba byla úspěšně nainstalována a její služba je v provozu.

To je z tohoto článku vše, doufám, že získáte základní představu o instalaci vlastních faktů a jejich použití.


Linux
  1. Jak používám Ansible a anacron pro automatizaci

  2. Jak vytvořit a používat subdomény

  3. Jak nainstalovat a používat Ansible na Debian 11

  1. Jak používat GParted ke snadnému vytváření a změně velikosti oddílů

  2. Jak vytvořit alias a používat příkaz Alias ​​v Linuxu

  3. Jak vytvořit Ansible Playbook

  1. Jak vytvořit soubor v Ansible

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

  3. Tajemství Kubernetes – Jak vytvářet, používat a přistupovat k tajemstvím