GNU/Linux >> Znalost Linux >  >> Linux

Jak pracovat s Ansible Provisioner ve Vagrant

V předchozím článku jsme viděli, co je to provizor a jak pracovat s shellem a souborem. V tomto článku se podíváme, jak použít ansible Provider k automatizaci pracovního postupu tuláků. Zde vytvoříme playbook a použijte playbook ke spuštění ansible hry proti tulákovému hostujícímu stroji.

Následuje úryvek z příručky Použiji v tomto článku pro demonstraci. Existuje pouze jedno přehrání a postará se o instalaci balíčků pomocí apt modul. Vytvořte nový .yml nebo .yaml soubor a zkopírujte úryvek.

---
- hosts: all
  become: yes
  tasks:
    - name: Install 4 packages
      apt:
        pkg:
        - net-tools
        - neofetch
        - cowsay
        - htop
        update_cache: yes

Jak pracovat s Ansible Remote Provisioner ve Vagrant

Chcete-li spustit příručky , ansible by měl být nainstalován na virtuálním počítači vagrant. Můžete použít shell provizor k instalaci ansible. Podívejte se na níže uvedený kód, je zde sekce pro poskytování shellu a já používám řadu apt příkazy správce balíčků k nastavení úložiště a jeho instalaci.

agrant.configure("2") do |config|
  config.vm.box = "ubuntu/focal64"
	config.vm.hostname = "ansible-provisioner"
	config.vm.network "public_network", bridge: "Intel(R) Dual Band Wireless-AC 7265", ip: "192.168.1.100"
	config.vm.provider "virtualbox" do |vbox|
        	vbox.memory = "2048"
  	vbox.cpus = "2"
	end
  config.vm.provision "shell", inline: <<-BLOCK
	sudo apt-add-repository ppa:ansible/ansible -y
	sudo apt update
	sudo apt install ansible -y
	ansible --version
  BLOCK
end

Vytvořte nový adresář projektu a spusťte vagrant init příkaz.

$ mkdir ansible_provisioner 
$ cd ansible_provisioner
$ vagrant init -m

Nyní v závislosti na stavu vašeho virtuálního počítače (běžící nebo zastavený) můžete spustit následující příkaz. Pokud je to poprvé, pak tulák udělá práci.

$ vagrant up  ==> Running VM for first time
$ vagrant reload --provision  ==> If VM is already provisioned and running
$ vagrant up --provision ==> VM is already provisioned and not running

Během procesu spouštění virtuálního počítače můžete v protokolech vidět, že se ansible instaluje.

Nyní je dobré používat příručku . Upravím stejný konfigurační soubor a přidám ansible, vzdálený poskytovatel. Níže je syntaxe. Cesta k playbooku (absolutní nebo relativní) bude poskytnuta, jak je uvedeno níže.

config.vm.provision "ansible" do |ans|
	ans.playbook = "my_playbook.yml"    # Playbook in same folder as Vagranfile
	#ans.playbook = "/home/karthick/vagrant/ansible_provisioner/my_playbook.yml"

Z níže uvedeného výstupu můžete vidět, že moje hra byla úspěšně provedena.

Jak používat Ansible Local Provisioner ve Vagrant

Toto je další způsob nastavení ansible ve vašem virtuálním počítači pro hosta. Když použijete místního poskytovatele, vagrant se automaticky postará o instalaci ansible za vás. Jediný vstup, který musíte poskytnout, je, jakou metodou by měl vagrant nastavit ansible.

Níže je uvedena syntaxe pro místní zřízení.

config.vm.provision "ansible_local" do |ans|
  	ans.playbook = "my_playbook.yml"

Existují tři různé režimy.

  1. výchozí – Instalace ansible pomocí správce balíčků založených na distribuci.
  2. PIP – Instalace ansible pomocí PIP.
  3. PIP Args – Instalace pomocí PIP args.

Ve výchozím nastavení se tulák pokusí nainstalovat z úložiště. Pokud chcete nainstalovat pomocí PIP můžete nastavit syntaxi, jak je uvedeno níže. Když používáte PIP, tulák nejprve zkontroluje, zda je PIP dostupný v hostujícím počítači, a pokusí se jej nainstalovat. Jakmile bude PIP dostupný, použije PIP ke stažení a instalaci ansible balíčku z PyPI.

config.vm.provision "ansible_local" do |ans|
  	ans.playbook = "my_playbook.yml"
  	ans.install_mode = "pip"

To je pro tento článek vše. V příštím článku se podíváme, jak vytvořit vlastní krabice ve vagrant.


Linux
  1. Jak nakonfigurovat Nginx pro práci s PHP přes PHP-FPM

  2. Jak nakonfigurovat nastavení sítě pomocí systémových rolí Ansible

  3. Jak nainstalovat softwarové balíčky pomocí Ansible playbooku

  1. Jak přimět Vim, aby správně spolupracoval s Tmux?

  2. Jak na to:Začínáme s Ansible

  3. Jak nastavit proměnné prostředí Linuxu pomocí Ansible

  1. Jak používám Vagrant s libvirt

  2. Jak používat Ansible k nastavení monitorování systému pomocí Prometheus

  3. Obnovuji své vzrušení z práce s Ansible