[Ingin mencoba Red Hat Enterprise Linux? Unduh sekarang secara gratis.]
Langkah awal dalam proses penerapan kami untuk sistem Red Hat Enterprise Linux (RHEL) melibatkan pendaftaran sistem dan melampirkan langganan yang sesuai. Untuk mengotomatiskan dua langkah ini, saya menggunakan peran Ansible, yang ingin saya bagikan dengan Anda.
Lingkungan saya
Di lingkungan saya, RHEL berjalan terutama dalam cluster virtualisasi yang berbeda, dan kadang-kadang pada server khusus (bare metal). Kami menggunakan langganan berikut untuk pengembangan dan produksi:
- Langganan Pengembang Red Hat
- Server Linux Red Hat Enterprise, Standar (node fisik atau virtual)
- Red Hat Enterprise Linux untuk Pusat Data Virtual, Standar
The register-rhel-subscription
peran
Peran saya minimalis dan memiliki struktur sebagai berikut:
# tree roles/register-rhel-subscription
roles/register-rhel-subscription
|-- defaults
| `-- main.yml
|-- tasks
| `-- main.yml
tasks/main.yml
Modul Ansible redhat_subscription
mengelola pendaftaran dan langganan sistem dengan subscription-manager
memerintah. Mulailah dengan membuat kunci aktivasi Anda di Portal Pelanggan. Kunci ini memungkinkan pendaftaran tanpa perlu memasukkan nama pengguna dan kata sandi.
Tetapkan kunci ini ke parameter activationkey
, seperti ini:
activationkey: "{{ org_activationkey }}"
Pada kode di atas, isi dari variabel org_activationkey
diteruskan ke parameter. Bagaimana dan di mana variabel ini didefinisikan akan dijelaskan di bagian selanjutnya.
Anda juga perlu menambahkan ID organisasi Anda ke org_id
. Anda dapat menemukan informasi ini dengan yang berikut:
sudo subscription-manager identity
Kemudian, nyatakan status target yang diinginkan melalui:
state: present
Dalam hal ini, sistem harus terdaftar dan langganan dilampirkan. Jika Anda mengubah parameter ini menjadi state: absent
, sistem akan dibatalkan pendaftarannya.
Berikut adalah tampilan kode saat digabungkan:
---
# tasks file for register-rhel-subscription
# Register System and add Subcription
- name: Register system and add subscription
redhat_subscription:
activationkey: "{{ org_activationkey }}"
org_id: 1234567
state: present
defaults/main.yml
Dalam file ini, kami mendefinisikan nilai default untuk variabel org_activationkey
:
---
# defaults file for register-rhel-subscription
org_activationkey: "my-datacenter-sub"
Nilai yang ditentukan dalam file ini dapat ditimpa, misalnya, host_vars
dan group_vars
(lihat Menggunakan Variabel). Anda dapat menggunakan keanggotaan grup di inventaris Ansible untuk mengontrol langganan mana yang ditetapkan ke host atau grup host.
Contoh buku pedoman
Setelah langkah-langkah di atas selesai, Anda sekarang dapat menambahkan register-rhel-subscription
peran untuk buku pedoman Anda:
---
- hosts: all
tasks:
- name: Group by OS
group_by:
key=os_{{ ansible_distribution }}
changed_when: False
- hosts: os_RedHat
roles: - register-rhel-subscription
Kesimpulan
Sejauh ini solusi ini membuat kesan yang kuat, dan menulis teks ini memakan waktu lebih lama daripada tugas sebenarnya. Ini adalah contoh kecil dan sederhana tentang bagaimana Ansible dapat membuat Hari Sysadmin Anda lebih mudah.