GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come configurare uno Chef 12 su CentOS 7 / RHEL 7

Chef è una potente utility di gestione della configurazione che trasforma l'infrastruttura in codice. Con lo Chef gli utenti possono facilmente gestire, configurare e distribuire le risorse attraverso la rete dalla posizione centralizzata indipendentemente dall'ambiente (cloud, on-premise o ibrido). Questo post ti aiuterà a configurare uno chef 12 su CentOS 7 / RHEL 7

A partire dal rilascio del server Chef 11, il front-end del server Chef è scritto in Erlang e il client utilizza Ruby per gestire le modifiche alla configurazione.

Componenti di Chef:

Chef è composto da un server Chef, una o più workstation e un nodo in cui è installato il client chef. Il nome dei componenti si basa sui ruoli svolti da ciascuna macchina nell'ecosistema Chef.

Chef Server :Questo è il server hub centrale che memorizza i libri di cucina e le ricette caricati dalle workstation, a cui lo chef-client accede per l'implementazione della configurazione.

Postazioni di lavoro per chef :Qui vengono create o modificate ricette, libri di cucina e altri dettagli di configurazione dello chef. Tutti questi vengono quindi inviati al server Chef dalla workstation, dove saranno disponibili per la distribuzione su nodi chef-client.

Cliente chef :questo è il nodo di destinazione in cui vengono distribuite le configurazioni in cui è installato chef-client. Un nodo può essere qualsiasi macchina (fisica, virtuale, cloud, dispositivo di rete, ecc.)

Configura Chef 12 su CentOS 7:

Requisiti di sistema/ambiente:

Assicurati che il tuo sistema soddisfi i seguenti requisiti di risorse. Qui userò CentOS 7 come sistema operativo di base per l'installazione di Chef.

NOME HOST INDIRIZZO IP OS CPU MEMORIA DISCO SCOPO
chefserver.itzgeek.local 192.168.12.11 CentOS 7 4 4 GB 40 GB Chef Server
chefdk.itzgeek.local 192.168.12.12 CentOS 7 1 512 MB NA Postazione di lavoro per chef (Kit di sviluppo per chef)
chefclient.itzgeek.local 192.168.12.20 CentOS 7 1 512 MB NA Cliente Chef

Prerequisiti:

L'host deve avere un nome di dominio completo.

Dovrebbe avere la voce DNS o Host attiva.

vi /etc/hosts

192.168.12.11  chefserver.itzgeek.local  chefserver
192.168.12.12  chefdk.itzgeek.local  chefdk
192.168.12.20  chefclient.itzgeek.local chefclient

Installa il pacchetto wget.

yum -y install wget

Chef Server:

Il server Chef funge da hub centrale per i dati di configurazione. Il server memorizza i libri di cucina, le politiche che vengono applicate ai nodi e i metadati relativi a un nodo registrato. Il nodo registrato utilizza lo chef-client per richiedere allo Chef Server i dettagli di configurazione, come ricette, modelli e distribuzione dei file.

Installa e configura Chef Server:

Scarica l'ultima versione del core del server Chef (12.10 al momento della scrittura).

wget https://packages.chef.io/stable/el/7/chef-server-core-12.10.0-1.el7.x86_64.rpm

Una volta completato il download, installa il core del server chef utilizzando il comando seguente.

rpm -ivh chef-server-core-*.rpm

Se il tuo sistema server chef non soddisfa i requisiti hardware consigliati, questo passaggio potrebbe non riuscire.

Una volta completata l'installazione, è necessario riconfigurare i componenti del server chef per fare in modo che il server funzioni insieme. La riconfigurazione potrebbe richiedere un po' più di tempo .

chef-server-ctl reconfigure

Verificare lo stato dei componenti di Chef Server utilizzando il comando seguente.

chef-server-ctl status

Risultato:

run: bookshelf: (pid 6084) 387s; run: log: (pid 6114) 385s
run: nginx: (pid 5973) 417s; run: log: (pid 6276) 359s
run: oc_bifrost: (pid 5816) 477s; run: log: (pid 5831) 476s
run: oc_id: (pid 5961) 420s; run: log: (pid 5966) 419s
run: opscode-erchef: (pid 6186) 379s; run: log: (pid 6176) 381s
run: opscode-expander: (pid 6039) 388s; run: log: (pid 6071) 388s
run: opscode-solr4: (pid 5992) 399s; run: log: (pid 5999) 398s
run: postgresql: (pid 5805) 478s; run: log: (pid 5809) 477s
run: rabbitmq: (pid 5767) 480s; run: log: (pid 5760) 481s
run: redis_lb: (pid 5377) 595s; run: log: (pid 6272) 359s

Crea un utente amministratore e un'organizzazione:

Dobbiamo creare un utente amministratore. Questo utente avrà accesso per apportare modifiche ai componenti dell'infrastruttura nell'organizzazione che creeremo. Il comando seguente genererà automaticamente la chiave privata RSA e dovrebbe essere salvata in una posizione sicura.

I dettagli dell'utente sono di seguito.

Nome utente :amministratore

Nome :amministratore

Cognome :amministratore

E-mail :[email protected]

Password :password

Nome file :admin.pem

Percorso :/etc/chef

chef-server-ctl user-create admin admin admin [email protected] password -f /etc/chef/admin.pem

Comando originale:

chef-server-ctl user-create USER_NAME FIRST_NAME LAST_NAME EMAIL 'PASSWORD' -f PATH_FILE_NAME

È giunto il momento per noi di creare un'organizzazione per tenere le configurazioni degli chef.

Nome breve :itzgeek (Nota:il nome deve iniziare con una lettera o una cifra minuscola, può contenere lettere minuscole, numeri, trattini e trattini bassi e deve essere compreso tra 1 e 255 caratteri )

Nome completo dell'organizzazione :ITzGeek Inc (Nota:deve iniziare con uno spazio non vuoto e deve essere compreso tra 1 e 1023 caratteri )

Utente dell'associazione :admin (Nota:questa opzione assocerà l'utente precedentemente creato (admin ) con gli amministratori gruppo di sicurezza sul server dello chef )

Nome file :itzgeek-validator.pem (Nota:il comando genererà automaticamente la chiave privata RSA e dovrebbe essere salvato in una posizione sicura )

Percorso :/etc/chef

chef-server-ctl org-create itzgeek "ITzGeek, Inc" --association_user admin -f /etc/chef/itzgeek-validator.pem

Comando originale:

chef-server-ctl org-create short_name 'full_organization_name' --association_user user_name --filename ORGANIZATION-validator.pem

A partire da ora, avrai due .pem chiavi in ​​/etc/chef directory. Nel nostro caso, si chiameranno admin.pem e itzgeek-validator.pem . Presto collocheremo questi due file nella macchina della workstation Chef.

Firewall:

Il server Chef richiede che le seguenti porte siano aperte tramite il firewall. Ma abilitando solo 80 e 443 farebbe anche per noi.

Esegui il comando seguente per consentire 80 e 443 attraverso il firewall.

firewall-cmd --permanent --zone public --add-service http
firewall-cmd --permanent --zone public --add-service https
firewall-cmd --reload
Pagine:1 2 3
Cent OS
  1. Come configurare il server SysLog su CentOS 7 / RHEL 7

  2. Come configurare il server NFS su CentOS 7 / RHEL 7

  3. Come configurare Icinga Web 2 su CentOS 7 / RHEL 7

  4. Come configurare il server SVN su CentOS, RHEL e Fedora

  5. Come eseguire rsyslog come utente non root in CentOS/RHEL 7

Come configurare il cluster ad alta disponibilità su CentOS 8 / RHEL 8

Come configurare Icinga Web 2 su CentOS 8 / RHEL 8

Come eseguire Google Chrome come root su CentOS 7 / RHEL 7

Come configurare l'accesso senza password SSH su CentOS 8 / RHEL 8

Come configurare il server SysLog centralizzato su CentOS 8 / RHEL 8

Come impostare la replica MySQL in RHEL/Centos