Skip to main content

Pembahasan Ansible ITNSA Dasar

Sebelum mengikuti tutorial ini pastikan sudah mengistal Ansible, kemudian DEV-CLIENT sudah bisa terkoneksi ke SERVERS tanpa password untuk ini bisa mengikuti langkah simple berikut:

DEV-CLIENT ------------------------- SERVER1

                         --------------------------SERVER2

Dalam production tentu penggunaan root perlu dihindari, namun untuk simulasi/belajar bisa lakukan langkah berikut:

Konfigurasi SERVERS, aktifkan SSH login root di konfigurasi sshd_config nya, PermitRootLogin yes, jangan lupa simpan dan restart SSH service nya.

Login as Root juga di DEV-CLIENT, lalu generate ssh-key

ssh-keygen

ssh-copy-id root@192.168.56.100

ssh-copy-id root@192.168.56.101

masukkan password:

Setelah SSH key sudah ter copy selanjutnya seharusnya tidak perlu lagi memasukkan password ketika SSH ke Sever maupun dari Ansible karena sudah menggunakan authentication key.

Ada beberapa hal yang perlu dipelajari di Ansible seperti Inventory, Secret Vault, Module, Playbook, Roles.

Namun pada tahap awal belajar kita bisa mulai dari hal-hal yang sederhana cukup dengan beberapa file yaml dan perintah ansible.

Pastikan ansible sudah terinstal, cek ansible --version

Membuat file inventory yang berisi server yang akan dimanajemen konfigurasinya, simple nya ini berisi informasi server, IP address, variable lain seperti port, nama hostname, variable konfigurasi service juga bisa diisikan di sini.

Buat folder untuk script-script Ansible:

mkdir /data/ansible/linux 

1. Buat sebuah inventory file dengan nama hosts

---

all:

  hosts:

    LIN1:

      ansible_host: 192.168.56.100

      hostname: APPS4YOU-LINUXHOST-001


    LIN2:

      ansible_host: 192.168.56.101

      hostname: APPS4YOU-LINUXHOST-002


Perhatikan spasi karena diatas ada file format yaml yang menggunakan space sebagai identation nya.


2. Membuat playbook, playbook ini yang akan melakukan konfigurasi step by step, misalnya dalam contoh tutorial kali ini akan mengubah hostname, buat file dengan nama change-hostname.yaml


- name: Change hostname

  hosts: all

  gather_facts: false

  vars:

    hostname: "{{ hostvars[inventory_hostname].hostname }}"

  tasks:

  - name: Set hostname

    hostname:

      name: "{{ hostname }}"


Perhatikan spasi karena diatas ada file format yaml yang menggunakan space sebagai identation nya.

Penjelasan:
- name: nama playbook
- hosts: untuk membaca file inventory yang akan di konfigurasi
- gather_facts: ini untuk mendapatkan informasi dari server, untuk mempercepat playbook execution diisi false.
- vars: untuk membaca variable yang ada di file hosts inventory, dalam hal ini hostname untuk setiap server , inventory_hostname ini special variable untuk membaca variable hostname yang berbeda-beda untuk tiap server (https://docs.ansible.com/ansible/latest/reference_appendices/special_variables.html)
- tasks: melakukan perubahan nama hostname dengan variable yang sudah dibaca sebelumnya.


3. Menjalankan perintah ansible-playbook
ansible-playbook -i hosts change-hostname.yaml



Bisa dilihat status changed=1 berarti hostname berhasil diubah, jika playbook dijalankan kedua kalinya tanpa ada perubahan playbook maka changed=0, ini melihat status saja.



Catatan: dalam menjalan playbook diatas perlu -i hosts, jika tidak ingin menambahkan -i hosts bisa meletakkan file hosts inventory ini di default nya yaitu di /etc/ansible/hosts

Okey cukup sekian tutorial dasar Ansible kali ini, semoga bisa dikembangkan untuk menjalankan tasks  berikut nya.

Terima kasih.


Comments

Popular posts from this blog

Soal dan pembahasan LKSN ITNSA

Berikut adalah koleksi soal-soal ITNSA dan beberapa website yang memberikan pembahasan pada event perlombaaan LKS SMK Nasional bidang lomba IT Network Systems Administration. 2014 Palembang Di tahun ini ada 1 soal packet tracer. Di website dibawah ini diberikan juga cara pembahasannya. https://agussas.wordpress.com/2015/04/02/review-soal-lks-nasional-it-network-23-packet-tracer-challenge/ Semua soal:  https://www.dropbox.com/sh/l90zyke2ib5msgv/AAA3kPOFo-zEn4wPOW4a3iMwa?dl=0 dan https://drive.google.com/file/d/18lDhtMjAnPAhkfOJ6uFHsC5j6ycg3K4I/view Pembahasan juga dalam bentuk video di youtube:  https://www.youtube.com/watch?v=8QML594nQBU 2015 Banten Pembahasan:   https://www.youtube.com/watch?v=quDbpC2xSfQ Soal:  https://drive.google.com/file/d/1B09IYfdoGENBL3txSQodpptG1zdQxBWI/view 2016 Malang Soal:   https://drive.google.com/file/d/13-2bRtb5IXO9vxAhLfhghZbDXeUzD0FI/view Pembahasan:   https://www.youtube.com/watch?v=zmUSUZguH24 2017 Solo Soal dan pembahasan

Pembahasan Soal CA LKS Nasional ITNSA 2022

 Berikut adalah salah satu soal mengenai CA dan pembahasannya, silakan dicoba dan sesuikan dengan kondisi real sebenarnya pada saat kompetisi, karena mungkin di kota, provinsi atau soal nasional selanjutnya ada perubahan seperti kalimat, lokasi folder, nama server dan penamaan lainnya Silakan sesuaikan nama file, nama domain, dll. Certificate Authority  ● Configure MAIL as Root CA.  1.  openssl genrsa -out root.key 4096 ○ Use Common Name: LKSN2022-Root  2.  openssl req -new -x509 -days 1826 -key root.key -out root.crt ○ Approve Intermediate CA Requests for MON1 and MON2. Jawaban ada di perintah 4 dan 6  ○ Save those two Intermediate CA certificate files without the key in directory /backup in MAIL server.  Ini cukup kopikan file mon1.crt dan mon2.crt ke /backup Bikin config untuk Intermediatte CA, bisa mencontoh di /etc/ssl/openssl.cnf juga. Disini simple cukup membuat konfigurasi seperti dibawah ini buat file subca.cnf berisi: [ req ] extensions    = v3_subca req_extensions    = v3

ITNSA Konfigurasi Ansible WinRM Windows Server

 ### Mengonfigurasi Koneksi Ansible ke Server Windows Ansible adalah alat otomatisasi yang sangat populer dan sering digunakan untuk mengelola berbagai jenis server, termasuk server Windows. Artikel ini akan memandu Anda melalui langkah-langkah untuk mengonfigurasi Ansible agar dapat terhubung dengan server Windows menggunakan WinRM (Windows Remote Management). #### 1. Menyiapkan WinRM di Server Windows ##### Opsi 1: Menggunakan Skrip PowerShell Anda bisa menggunakan skrip PowerShell yang sudah disediakan untuk mengonfigurasi WinRM agar dapat digunakan oleh Ansible. 1. Buka PowerShell di server Windows Anda sebagai administrator. 2. Jalankan perintah berikut untuk mengunduh dan mengeksekusi skrip konfigurasi:    ```powershell    iex (New-Object Net.WebClient).DownloadString('https://github.com/ansible/ansible/raw/devel/examples/scripts/ConfigureRemotingForAnsible.ps1')    ``` ##### Opsi 2: Pengaturan Manual 1. Buka PowerShell di server Windows Anda sebagai administrator. 2. Jal