Rudder adalah software untuk audit berkesinambungan dan manajemen konfigurasi free dan open-source yang dapat digunakan untuk mengotomatisasi Infrastruktur TI. Rudder adalah solusi berbasis web dan multi-platform yang membuat infrastruktur TI Anda lebih andal dan lebih mudah dikelola.

Rudder Muncul dengan seperangkat aturan yang membantu Anda untuk melakukan pola konfigurasi tingkat rendah dan mengawasi kepatuhan Infrastruktur. Ini menyediakan serangkaian fitur yang kaya termasuk, Automatic host inventory, custom Policy editor, user-friendly web interface, Git backend, autoupdate dynamic groups, reusable policies, dan banyak lagi.

Rudder dibuat dari beberapa komponen:

  • Rudder Server: Digunakan untuk menentukan konfigurasi untuk menerapkan dan mengumpulkan laporan aplikasi.
  • Agents: Rudder bergantung pada agent yang dipasang pada setiap mesin yang dikelola. Agent ini memiliki performa yang tinggi, hanya membutuhkan 10 detik untuk memverifikasi 100 aturan, dan berjalan pada semua jenis perangkat.
  • Relay Server: Digunakan untuk mengelola node di jaringan yang berbeda melalui single entry point.

Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana menginstal Rudder Server dan Rudder Agent di server Debian 10.

Persyaratan Tutorial

Sebelum Mulai

Sebelum memulai, Anda perlu memperbarui sistem dengan versi terbaru. Anda dapat melakukan ini dengan menjalankan perintah berikut dengan user root atau user biasa dengan hak sudo:

apt-get update -y
 apt-get upgrade -y

Setelah memperbarui sistem, restart untuk menerapkan perubahan.

Install Rudder Server

Sebelum menginstal server Rudder, Anda perlu menginstal beberapa dependensi di sistem. Anda dapat menginstal semua dependensi yang diperlukan menggunakan perintah berikut:

apt-get install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common -y

Once the packages are installed, you will need to download and add the Rudder public key to your server.

Setelah paket diinstal, Anda harus mengunduh dan menambahkan Rudder public key ke server Anda.

Anda dapat mengunduh dan menambahkannya dengan perintah wget :

wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | apt-key add -

Selanjutnya, tambahkan repositori Rudder menggunakan perintah berikut:

sh -c 'echo "deb http://repository.rudder.io/apt/6.0/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list'

terakhir, update repositori dan instal server Rudder dengan menjalankan perintah berikut:

apt-get update -y
 apt-get install rudder-server-root -y

Selama instalasi, Anda akan diminta untuk Mengkonfigurasi database untuk rsyslog-pgsql dengan dbconfig-common seperti yang ditunjukkan di bawah ini:

p1 Configure rsyslog for postgres

Pilih No dan tekan enter untuk memulai instalasi. Setelah instalasi selesai, Anda akan melihat output berikut:

You can access it via https://debian10/rudder

INFO: Launching script to check if a migration is needed ...
Done
INFO: Make sure Rudder webapp is started... Done
INFO: Make sure Apache HTTPd is started... Done
INFO: No disable file detected and no agent executor process either. Restarting agent service...rudder-cf-serverd: enabled
rudder-cf-execd: enabled
ok: stop service rudder-agent succeeded
rudder-cf-serverd: enabled
rudder-cf-execd: enabled
ok: start service rudder-agent succeeded
 Done
INFO: Inventory older than 3 days, resending ...Rudder agent 6.0.2-debian10
Node uuid: root
Start execution with config [20200203-072526-c88cf5a0]

M| State         Technique                 Component                 Key                Message
E| compliant     Inventory                 inventory                                    The inventory has been successfully sent
info     Rudder agent was run on a subset of policies - not all policies were checked

## Summary #####################################################################
1 components verified in 3 directives
   => 1 components in Enforce mode
      -> 1 compliant
Execution time: 11.32s
################################################################################
 Done
FINISH: Rudder agent check ran properly, please look at messages above to see if there has been any error.
Setting up rudder-server-root (6.0.2-debian10) ...
Created symlink /etc/systemd/system/multi-user.target.wants/rudder-server.service → /lib/systemd/system/rudder-server.service.
Processing triggers for libc-bin (2.28-10) ...
Processing triggers for rsyslog (8.1901.0-1) ...

Akses Rudder web interface

Pada point ini Rudder sudah diinstal dan dijalankan. Saatnya untuk mengakses web interface Rudder.

Buka browser web Anda dan ketik URL https://your-server-ip/rudder/. Anda akan diarahkan ke halaman login Rudder seperti yang ditunjukkan di bawah ini:

p2 Rudder login

Berikan nama pengguna dan kata sandi Rudder default sebagai admin/admin dan klik tombol SIGN IN. Anda akan melihat dasbor Rudder di layar berikut:

Rudder dashboard

Disarankan untuk mengubah kata sandi admin default untuk alasan keamanan. Anda juga dapat membuat daftar jaringan yang diizinkan dalam Settings => General => Allowed Networks yang Diizinkan. Anda harus menambahkan jaringan Anda di sini jika Anda ingin menambahkan node dari jaringan yang berbeda. Secara default, ini akan berisi server yang terhubung ke jaringan Anda.

Instal dan Konfigurasi Rudder Agent

Selanjutnya, Anda perlu menginstalRudder Agent pada sistem yang ingin Anda kelola dari Rudder server.

Secara default, agen Rudder tidak tersedia di repositori default Debian 10. Jadi, Anda perlu menambahkan repositori Rudder ke sistem Anda.

Pertama, download dan tambahkan public key Rudder dengan perintah wget berikut:

wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | apt-key add -

Selanjutnya, tambahkan repositori Rudder dengan perintah berikut:

sh -c 'echo "deb http://repository.rudder.io/apt/6.0/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list'

Setelah repositori ditambahkan, perbarui repositori dan instal Rudder agent dengan perintah berikut:

apt-get update -y
 apt-get install rudder-agent -y

Setelah menginstal Rudder agent, Anda harus menentukan alamat IP Rudder server dalam file konfigurasi agent Rudder.

Anda dapat melakukannya dengan mengedit file berikut:

nano /var/rudder/cfengine-community/policy_server.dat

tambahkan baris berikut :

your-rudder-server-ip

Simpan dan tutup file setelah Anda selesai. Kemudian, restart layanan Rudder agent untuk menerapkan perubahan:

systemctl restart rudder-agent.service

Anda sekarang dapat memverifikasi layanan Rudder agent dengan perintah berikut:

systemctl status rudder-agent.service

Anda akan mendapatkan output berikut:

? rudder-agent.service - Rudder agent umbrella service
   Loaded: loaded (/lib/systemd/system/rudder-agent.service; enabled; vendor preset: enabled)
   Active: active (exited) since Fri 2020-01-31 08:00:37 UTC; 8min ago
     Docs: man:rudder(8)
           https://docs.rudder.io
 Main PID: 5177 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 4701)
   Memory: 0B
   CGroup: /system.slice/rudder-agent.service

Jan 31 08:00:37 debianclient systemd[1]: Starting Rudder agent umbrella service...
Jan 31 08:00:37 debianclient systemd[1]: Started Rudder agent umbrella service.

Verifikasi Rudder Agent

Ruder server dan agent sekarang diinstal dan dikonfigurasi. Sudah waktunya untuk memverifikasi apakah Rudder agent ditambahkan di Rudder server atau tidak.

Buka web browser dan ketik URL https://server-ip/rudder dan klik pada  Node Management => Accept new nodes seperti yang ditunjukkan di bawah ini:

p4 Rudder agent installation

Rudder node

Klik pada tombol Accept untuk menerima node baru. Anda akan melihat halaman konfirmasi yang ditunjukkan di bawah ini:

Accept Rudder Node

Klik pada tombol Accept untuk menerima node baru. Anda akan melihat node yang baru ditambahkan di layar berikut:

Node added successfully

Di layar di atas, Anda akan melihat 100% non-compliance untuk node yang baru ditambahkan. Untuk mengatasi ini, Anda harus memaksa agent untuk menjalankan dan mengirim inventory dengan menjalankan perintah berikut:

rudder agent inventory

Anda akan melihat output berikut:

Rudder agent 6.0.2-debian10 (CFEngine Core 3.10.2)
Node uuid: 20200203-072526-c88cf5a0-8211-8a30bs00ffa9
Start execution with config [30471213-214835-13b4se13]

M| State         Technique                 Component                 Key                Message
E| compliant     Inventory                 inventory                                    The inventory has been successfully sent

## Summary #####################################################################
   => 1 components in Enforce mode
      -> 1 compliant
execution time: 11.27s
################################################################################

Kesimpulan

Pada artikel di atas, kita belajar cara menginstal server Ruder di server Debian 10. Kita juga belajar cara menginstal Rudder agent  dan menambahkannya ke Rudder server.

Anda sekarang dapat menambahkan lebih banyak node ke Rudder server Anda dan mulai mengaturnya. Untuk informasi lebih lanjut tentang konfigurasi Rudder, Anda dapat mengunjungi situs dokumentasi Rudder di Rudder Doc.