Rudder è uno strumento di configurazione e controllo continuo gratuito e open source che può essere utilizzato per automatizzare l'infrastruttura IT. È una soluzione basata sul Web e multipiattaforma che rende la tua infrastruttura IT più affidabile e più facile da gestire. Viene fornito con una serie di regole che consentono di eseguire modelli di configurazione di basso livello e tenere d'occhio la conformità dell'infrastruttura. Fornisce un ricco set di funzionalità tra cui inventario host automatico, editor di criteri personalizzato, interfaccia Web intuitiva, backend Git, aggiornamento automatico di gruppi dinamici, criteri riutilizzabili e molto altro.
Il timone è composto da diversi componenti :
- Server del timone: Viene utilizzato per definire le configurazioni da applicare e raccogliere i report dell'applicazione.
- Agenti: Rudder si basa su un agente installato su ciascuna macchina gestita. È molto veloce e impiega solo 10 secondi per verificare 100 regole. Funziona su qualsiasi tipo di dispositivo.
- Server di inoltro: Viene utilizzato per gestire nodi in reti diverse attraverso un unico punto di ingresso.
In questo tutorial, ti mostreremo come installare Rudder Server e Rudder Agent nel server Debian 10.
Prerequisiti
- Due server con Debian 10.
- Su ciascun server è configurata una password di root.
Per iniziare
Prima di iniziare, è una buona idea aggiornare il sistema con l'ultima versione. Puoi aggiornare il tuo sistema con il seguente comando:
apt-get update -y
apt-get upgrade -y
Dopo aver aggiornato il sistema, riavvialo per implementare le modifiche.
Installa il server Rudder
Prima di installare il server Rudder, dovrai installare alcune dipendenze nel tuo sistema. Puoi installare tutte le dipendenze richieste usando il seguente comando:
apt-get install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common -y
Una volta installati i pacchetti, dovrai scaricare e aggiungere la chiave pubblica Rudder al tuo server.
Puoi scaricarlo e aggiungerlo con il seguente comando:
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | apt-key add -
Quindi, aggiungi il repository Rudder usando il seguente comando:
sh -c 'echo "deb http://repository.rudder.io/apt/6.0/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list'
Infine, aggiorna il repository e installa il server Rudder eseguendo il seguente comando:
apt-get update -y
apt-get install rudder-server-root -y
Durante l'installazione, ti verrà chiesto di configurare il database per rsyslog-pgsql con dbconfig-common come mostrato di seguito:
Scegli No e premi invio per avviare l'installazione. Una volta che l'installazione è stata completata con successo, dovresti vedere il seguente output:
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) ...
Accedi all'interfaccia web del timone
A questo punto Rudder è installato e funzionante. È ora di accedere all'interfaccia web di Rudder.
Apri il tuo browser web e digita l'URL https://your-server-ip/rudder/. Verrai reindirizzato alla pagina di accesso del timone come mostrato di seguito:
Fornisci il nome utente e la password predefiniti del timone come amministratore/amministratore e fai clic su SIGN IN pulsante. Dovresti vedere la dashboard del timone nella schermata seguente:
Si consiglia di modificare la password amministratore predefinita per motivi di sicurezza. Puoi anche elencare le reti consentite in Impostazioni => Generali => Reti consentite . Dovresti aggiungere la tua rete qui se vuoi aggiungere il nodo da una rete diversa. Per impostazione predefinita, questo conterrà le reti collegate ai tuoi server.
Installa e configura Rudder Agent
Successivamente, dovrai installare Rudder Agent sul sistema che desideri gestire dal server Rudder.
Per impostazione predefinita, l'agente Rudder non è disponibile nel repository predefinito di Debian 10. Quindi dovrai aggiungere il repository Rudder al tuo sistema.
Innanzitutto, scarica e aggiungi la chiave pubblica Rudder con il seguente comando:
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | apt-key add -
Quindi, aggiungi il repository Rudder con il seguente comando:
sh -c 'echo "deb http://repository.rudder.io/apt/6.0/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list'
Una volta aggiunto il repository, aggiorna il repository e installa l'agente Rudder con il seguente comando:
apt-get update -y
apt-get install rudder-agent -y
Dopo aver installato l'agente Rudder, sarà necessario definire l'indirizzo IP del server Rudder nel file di configurazione dell'agente Rudder.
Puoi farlo modificando il seguente file:
nano /var/rudder/cfengine-community/policy_server.dat
Aggiungi la seguente riga:
your-rudder-server-ip
Salva e chiudi il file quando hai finito. Quindi, riavvia il servizio dell'agente Rudder per implementare le modifiche:
systemctl restart rudder-agent.service
Ora puoi verificare il servizio dell'agente Rudder con il seguente comando:
systemctl status rudder-agent.service
Dovresti ottenere il seguente output:
? 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.
Verifica agente timone
Il server e l'agente Ruder sono ora installati e configurati. È ora di verificare se l'agente Rudder è stato aggiunto o meno al server Rudder.
Apri il tuo browser web e digita l'URL https://your-server-ip/rudder e fai clic su Gestione nodi => Accetta nuovi nodi come mostrato di seguito:
Fai clic sul pulsante Accetta per accettare il nuovo nodo. Dovresti vedere la pagina di conferma mostrata di seguito:
Fai clic sul pulsante Accetta per accettare il nuovo nodo. Dovresti vedere il nodo appena aggiunto nella schermata seguente:
Nella schermata sopra, dovresti vedere il 100% di non conformità per un nodo appena aggiunto. Per risolvere questo problema, dovrai forzare l'agente a eseguire e inviare un inventario eseguendo il comando seguente:
rudder agent inventory
Dovresti vedere il seguente output:
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 ################################################################################
Conclusione
Nell'articolo precedente, abbiamo imparato come installare il server Ruder sul server Debian 10. Abbiamo anche imparato come installare l'agente Rudder e aggiungerlo al server Rudder. Ora puoi aggiungere più nodi al tuo server Rudder e iniziare a gestirli. Per ulteriori informazioni sulla configurazione del timone, è possibile visitare il sito della documentazione del timone su Rudder Doc. Sentiti libero di chiedermi se hai domande.