Com instal·lar Puppet 6 a Ubuntu 18?

Apreneu a instal·lar un servidor de titelles & agent i configura, de manera que parlen entre ells.


Puppet és una de les eines de gestió de configuració que més ha adoptat l’empresa DevOps. Com a enginyer DevOps, heu de saber configurar un titella al vostre sistema.

Però abans de començar, deixeu-me que us digui que instal·lar un titella no és una tasca fàcil. Si us perdeu un sol pas o si canvieu el flux de passos esmentat en aquest tutorial, fins i tot en un mateix lloc, potser us rascareu el cap durant tot el dia amb molts errors, però la vostra configuració no seria completa. Per tant, seguiu cada pas amb molta cura.

Titella té una arquitectura client-servidor, que consta d’un agent de titelles (servidor) i agents de titelles (client). Puppet Master té totes les configuracions i compila i subministra les configuracions als agents de titelles. Els agents de titelles envien els fets al mestre de titelles que sol·liciten catàlegs de forma periòdica Puppet Master envia de nou el catàleg sol·licitat a l’agent de titelles. A continuació, l’agent de titelles aplica aquell catàleg al node i els informa de nou al mestre.

Ara que teniu un coneixement bàsic del titella, comencem i configureu un agent de titelles i un agent de titelles.

Si ets un principiant absolut, pot ser que t’agradi portar-ho curs de vídeo en línia.

Detalls de l’entorn

Estic fent servir dues màquines Ubuntu 18.04. Un actuarà com a mestre de titelles i l’altre com a agent de titelles. A continuació es mostren els detalls de les màquines:

Mestre de titelles (servidor)

  • Nom d’amfitrió: titella, puppet.geekflate.com
  • Adreça IP: 192.168.0.108

Agent de titelles (client)

  • Nom d’amfitrió: puppetagent
  • Adreça IP: 192.168.0.107

Instal·lació del servidor de titelles

Abans d’iniciar la instal·lació, heu d’editar el fitxer / etc / hosts tant en el mestre com en l’agent perquè es resolguin.

Al node mestre

[correu electrònic protegit]: ~ $ sudo gedit / etc / hosts

Contrasenya [sudo] de geekflare:

127.0.0.1 localhost
127.0.1.1 geekflare
192.168.0.108 titella titella.geekflare.com

Al node d’agent

[correu electrònic protegit]: ~ $ sudo gedit / etc / hosts

127.0.0.1 localhost
127.0.1.1 geekflare
192.168.0.107 titellaire
192.168.0.108 titella titella.geekflare.com

Ara, necessito obtenir un dipòsit de titelles al meu node mestre i actualitzar-lo.

Descarregueu el dipòsit de titelles.

[correu electrònic protegit]: ~ $ wget https://apt.puppetlabs.com/puppet6-release-bionic.deb

–15-10 2019 15: 41: 34– https://apt.puppetlabs.com/puppet6-release-bionic.deb

Resolció apt.puppetlabs.com (apt.puppetlabs.com) … 99.86.19.107, 99.86.19.59, 99.86.19.2, …

Connexió a apt.puppetlabs.com (apt.puppetlabs.com) | 99.86.19.107 |: 443 … connectat.

S’ha enviat la sol·licitud HTTP en espera de resposta … 200 d’acord

Durada: 11736 (11K) [application / x-debian-package]

Desa a: “puppet6-release-bionic.deb”

puppet6-release-bio 100% [===================>] 11.46K –.- KB / s en 0

15-10 de 2019 15:41:34 (236 MB / s): s’ha desat “puppet6-release-bionic.deb” [11736/11736]

Afegir i configurar titella 6 repetició.

[correu electrònic protegit]: ~ $ sudo dpkg -i puppet6-release-bionic.deb

Selecció del paquet no publicat prèviament de puppet6.

(Base de dades de lectura … actualment instal·lats fitxers i directoris 187041.)

Preparant-se per desembalar puppet6-release-bionic.deb …

Desempaquetem el llançament de titelles6 (6.0.0-5bionic) …

Configuració del llançament de titelles6 (6.0.0-5bionic) …

Actualitzeu la llista de dipòsits.

[correu electrònic protegit]: ~ ~ actualització per a l’aplicació sudo

Hit: 1 https://download.docker.com/linux/ubuntu bionic InRelease

Hit: 2 http://security.ubuntu.com/ubuntu cosmic-security InRelease

Hit: 3 http://ppa.launchpad.net/ansible/ansible/ubuntu cosmic InRelease

Obteniu: 4 http://download.virtualbox.org/virtualbox/debian còsmic InRelease [4.429 B]

Obteniu: 5 http://apt.puppetlabs.com bionic InRelease [85,3 kB]

Hit: 6 http://us.archive.ubuntu.com/ubuntu cosmic InRelease

Hit: 7 http://us.archive.ubuntu.com/ubuntu cosmic-Updates InRelease

Obteniu: 8 paquets http://download.virtualbox.org/virtualbox/debian cosmic / contrib amd64 [1.466 B]

Obteniu: 9 http://apt.puppetlabs.com bionic / puppet6 tots els paquets [13,5 kB]

Hit: 10 http://us.archive.ubuntu.com/ubuntu cosmic-backports InRelease

Obteniu: 11 paquets http://apt.puppetlabs.com bionic / puppet6 i386 [13,5 kB]

Obteniu: 12 paquets http://apt.puppetlabs.com bionic / puppet6 amd64 [32,3 kB]

Obtingut 151 kB en 2 s (61,9 kB / s)

Lectura de llistes de paquets … Fet

Arbre de dependència de construcció

Llegir informació de l’estat … Fet

Es poden actualitzar 234 paquets. Executeu “apt list –upgradable” per veure-les.

Instal·lació del servidor de titelles

Executem la següent comanda al node mestre per instal·lar-hi el servidor de titelles.

[correu electrònic protegit]: ~ $ sudo apt instal·lar -y puppetserver

Lectura de llistes de paquets … Fet

Arbre de dependència de construcció

Llegir informació de l’estat … Fet

S’instal·laran els paquets addicionals següents:

ca-certificats-java java-comú de titelles openjdk-8-jre-sense cap

Paquets suggerits:

default-jre fonts-dejavu-extra fonts-ipafont-gothic fonts-ipafont-mincho

fonts-wqy-microhei fonts-wqy-zenhei

S’instal·laran els paquets NOUS següents:

ca-certificats-java java-comú de titelles openjdk-8-jre-sense cap

servidor de titelles

0 actualitzats, 5 recent instal·lats, 0 eliminats i 234 no actualitzats.

Necessiteu obtenir 109 MB d’arxius.

Després d’aquesta operació, s’utilitzaran 287 MB d’espai de disc addicional.

Obteniu: 1 http://us.archive.ubuntu.com/ubuntu còsmic / principal amd64 java-comú tot 0.68ubuntu1 [6.988 B]

Obteniu: 2 http://apt.puppetlabs.com bionic / puppet6 amd64 titella-agent amd64 6.10.1-1bionic [19.9 MB]

Obteniu: 3 http://us.archive.ubuntu.com/ubuntu cosmic-Updates / univers amd64 openjdk-8-jre-headless amd64 8u212-b03-0ubuntu1.18.10.1 [27.2 MB]

Obteniu: 4 http://apt.puppetlabs.com serveur de titelles bionic / puppet6 amd64 tots 6.7.1-1bionic [61,5 MB]

Obteniu: 5 http://us.archive.ubuntu.com/ubuntu cosmic / principal amd64 ca-certificats-java tot 20180516ubuntu1 [12,3 kB]

Obtingut 109 MB en 1 min 41s (1.072 kB / s)

Desempaquetar el servidor de titelles (6.7.1-1bionic) …

Configuració d’agent titella (6.10.1-1bionic) …

Creat enllaç /etc/systemd/system/multi-user.target.wants/puppet.service → /lib/systemd/system/puppet.service.

Creat symlink /etc/systemd/system/multi-user.target.wants/pxp-agent.service → /lib/systemd/system/pxp-agent.service.

Eliminat /etc/systemd/system/multi-user.target.wants/pxp-agent.service.

Configuració comuna java (0.68ubuntu1) …

Processament de desencadenants de libc-bin (2.28-0ubuntu1) …

Processament de disparadors per a systemd (239-7ubuntu10.12) …

Processament de disparadors per a man-db (2.8.4-2) …

Processament de desencadenants de certificats ca (20180409) …

Actualització de certificats en / etc / ssl / certs…

0 afegit, 0 eliminat; fet.

Ganxos per executar a /etc/ca-certificates/update.d…

fet.

Configuració de ca-certificats-java (20180516ubuntu1) …

head: no es pot obrir ‘/ etc / ssl / certs / java / cacerts’ per a la lectura: no hi ha cap fitxer o directori

Afegir debian: SSL.com_EV_Root_Certification_Authority_ECC.pem

Afegint debian: ssl-cert-snakeoil.pem

Afegir debian: SwissSign_Gold_CA _-_ G2.pem

Afegir debian: SZAFIR_ROOT_CA2.pem

Afegir debian: OpenTrust_Root_CA_G3.pem

Afegir debian: TWCA_Root_Certification_Authority.pem

Afegir debian: QuoVadis_Root_CA_2_G3.pem

Afegir el debian: DST_Root_CA_X3.pem

Afegir debian: SecureSign_RootCA11.pem

Afegir el debian: QuoVadis_Root_CA_1_G3.pem

Afegint debian: T-TeleSec_GlobalRoot_Class_3.pem

Afegint debian: Go_Daddy_Root_Certified_Authority _-_ G2.pem

Afegir debian: Actalis_Authentication_Root_CA.pem

Afegint debian: Chambers_of_Commerce_Root _-_ 2008.pem

fet.

Processament de desencadenants de certificats ca (20180409) …

Actualització de certificats en / etc / ssl / certs…

0 afegit, 0 eliminat; fet.

Ganxos per executar a /etc/ca-certificates/update.d…

fet.

fet.

Configuració de openjdk-8-jre-headless: amd64 (8u212-b03-0ubuntu1.18.10.1) …

Configuració del servidor de titelles (6.7.1-1bionic) …

usermod: no hi ha canvis

Processament de disparadors per a systemd (239-7ubuntu10.12) …

Configuració del servidor de titelles

 Editeu el fitxer de titelles, tal com es mostra a continuació. Per configurar JVM del servidor de titelles.

[correu electrònic protegit]: ~ $ sudo gedit / etc / default / puppetserver

# Modifiqueu-ho si voleu canviar l’assignació de memòria, activeu JMX, etc

JAVA_ARGS ="-Xms512m -Xmx512m -Djruby.logger.class = com.puppetlabs.jruby_utils.jruby.Slf4jLogger"

 Editeu el fitxer de configuració de titelles per modificar la configuració del servidor de titelles.

[correu electrònic protegit]: ~ $ sudo gedit /etc/puppetlabs/puppet/puppet.conf

# Aquest fitxer es pot utilitzar per substituir la configuració de titelles predeterminada.

# Consulteu els enllaços següents per obtenir més detalls sobre quina configuració hi ha disponibles:

# – https://puppet.com/docs/puppet/latest/config_important_settings.html

# – https://puppet.com/docs/puppet/latest/config_about_settings.html

# – https://puppet.com/docs/puppet/latest/config_file_main.html

# – https://puppet.com/docs/puppet/latest/configuration.html

[mestre]

vardir = / opt / puppetlabs / server / data / puppetserver

logdir = / var / log / puppetlabs / puppetserver

rundir = / var / run / puppetlabs / puppetserver

pidfile = /var/run/puppetlabs/puppetserver/puppetserver.pid

codedir = / etc / puppetlabs / code

dns_alt_names = titella, puppet.geekflare.com

[principal]

certname = puppet.geekflare.com

servidor = puppet.geekflare.com

medi ambient = producció

runinterval = 15m

Puppet Server ha de generar una signatura arrel i intermèdia, CA.

[correu electrònic protegit]: ~ $ sudo / opt / puppetlabs / bin / puppetserver ca configuració

La generació va tenir èxit. Cerqueu els fitxers a / etc / puppetlabs / puppet / ssl / ca

 Inicieu i activeu el servei del servidor de titelles.

[correu electrònic protegit]: ~ $ sudo systemctl start puppetserver

[correu electrònic protegit]: ~ $ sudo systemctl habilita el puppetserver

Sincronització de l’estat de puppetserver.service amb script de servei SysV amb / lib / systemd / systemd-sysv-install.

Execució: / lib / systemd / systemd-sysv-install active puppetserver

Instal·lació de l’agent de titelles

Seguiu els passos següents al node de l’agent com ho vau fer pel sistema mestre. El dipòsit de titelles ha de presentar-se a tots els nodes de l’agent.

[correu electrònic protegit]: ~ $ wget https://apt.puppetlabs.com/puppet6-release-bionic.deb

[correu electrònic protegit]: ~ $ sudo dpkg -i puppet6-release-bionic.deb

[correu electrònic protegit]: ~ ~ actualització per a l’aplicació sudo

Executeu la comanda següent al node agent per instal·lar l’agent titella.

[correu electrònic protegit]: ~ $ sudo apt install -y puppet-agent

Lectura de llistes de paquets … Fet

Arbre de dependència de construcció

Llegir informació de l’estat … Fet

S’instal·laran els paquets NOUS següents:

titella-agent

0 actualitzats, 1 recent instal·lats, 0 eliminats i 233 no actualitzats.

Necessiteu obtenir 19,9 MB d’arxius.

Després d’aquesta operació, s’utilitzaran 115 MB d’espai de disc addicional.

Obteniu: 1 http://apt.puppetlabs.com bionic / puppet6 amd64 titella-agent amd64 6.10.1-1bionic [19.9 MB]

Obtingut 19,9 MB en 2 s (8.488 kB / s)

Selecció de titelles d’agent de paquets no seleccionats anteriorment.

(Base de dades de lectura … actualment instal·lats fitxers i directoris de 185786.)

Preparació per desembalar … / puppet-agent_6.10.1-1bionic_amd64.deb …

Desempaquetar agent de titelles (6.10.1-1bionic) …

Configuració d’agent titella (6.10.1-1bionic) …

Creat enllaç /etc/systemd/system/multi-user.target.wants/puppet.service → /lib/systemd/system/puppet.service.

Creat symlink /etc/systemd/system/multi-user.target.wants/pxp-agent.service → /lib/systemd/system/pxp-agent.service.

Eliminat /etc/systemd/system/multi-user.target.wants/pxp-agent.service.

Processament de desencadenants de libc-bin (2.28-0ubuntu1) …

Configuració de l’agent de titelles

 Editeu el fitxer de configuració de titelles al node d’agent.

[correu electrònic protegit]: ~ $ sudo gedit /etc/puppetlabs/puppet/puppet.conf

[principal]

certname = puppetagent

servidor = puppet.geekflare.com

medi ambient = producció

runinterval = 15m

Executeu l’ordre següent per iniciar el servei de titelles. Aquesta ordre també s’iniciarà automàticament després de l’arrencada.

[correu electrònic protegit]: ~ $ sudo / opt / puppetlabs / bin / puppet resource service puppet assure = running enable = true

servei {‘titella’:

assegurar => “corrent”,

habilitar => “veritat”,

Generar i signar certificats

Quan l’agent s’inicia per primera vegada, envia una sol·licitud de signatura de certificat al mestre de titelles. El mestre necessita comprovar i signar aquest certificat. Després d’això, l’agent ha de buscar catàlegs del màster i aplicar-los regularment als nodes de l’agent.

Ara que l’agent titella s’executa, executa l’ordre següent al node mestre per comprovar si ha rebut alguna sol·licitud de signatura de certificat.

Al node mestre

[correu electrònic protegit]: ~ $ sudo / opt / puppetlabs / bin / puppetserver llista de ca

Contrasenya [sudo] de geekflare:

Certificats sol·licitats:

puppetagent (SHA256) EA: 68: 23: B5: C3: 71: 2C: E6: 4A: 6A: 3B: 2F: 24: F5: B8: 5B: 50: F7: 3F: 12: 89: DE: B1: EB: D1: 0A: 74: 3E: 48: C3: D7: 35

Signa el certificat enviat per l’agent.

[correu electrònic protegit]: ~ $ sudo / opt / puppetlabs / bin / puppetserver llista de ca

Contrasenya [sudo] de geekflare:

Certificats sol·licitats:

puppetagent (SHA256) EA: 68: 23: B5: C3: 71: 2C: E6: 4A: 6A: 3B: 2F: 24: F5: B8: 5B: 50: F7: 3F: 12: 89: DE: B1: EB: D1: 0A: 74: 3E: 48: C3: D7: 35

Executeu la comanda següent per comprovar tota la llista de certificats. Un certificat ja hi és, és un valor predeterminat del node mestre i l’altre és del node agent.

[correu electrònic protegit]: ~ $ sudo / opt / puppetlabs / bin / puppetserver lista ca – tot

Certificats signats:

puppetagent (SHA256) EA: 68: 23: B5: C3: 71: 2C: E6: 4A: 6A: 3B: 2F: 24: F5: B8: 5B: 50: F7: 3F: 12: 89: DE: B1: EB: D1: 0A: 74: 3E: 48: C3: D7: 35

puppet.geekflare.com (SHA256) 71: 30: 5B: C8: C5: CE: 28: A0: 60: 5C: 4F: 39: 26: D0: FC: DA: DF: 0A: 0F: 4D: ED: D4: B1: 9C: 05: 1A: 38: 2F: D6: 5F: 9C: 06 alt noms: ["DNS: puppet.geekflare.com", "DNS: titella", "DNS: puppet.geekflare.com"]

Al node d’agent

Ara executeu aquesta ordre per comprovar si la connexió s’ha establert entre nodes de mestre i agent, i tot funciona correctament.

[correu electrònic protegit]: ~ $ sudo / opt / puppetlabs / bin / puppet agent –test

Informació: utilitzant l’entorn configurat “producció”

Informació: recuperació de complements

Informació: complement de recuperació

Informació: recuperació de locals

Informació: Catàleg de caché per a titelles

Informació: aplicació de la versió de configuració “1571171191”

Avís: catàleg aplicat en 0,02 segons

Exemple de titella

Posem un exemple simple de titelles. Crearé un manifest de titelles senzill, que crearà un directori amb un cert permís.

Al node mestre:

[correu electrònic protegit]: ~ $ sudo gedit /etc/puppetlabs/code/environments/production/manifests/site.pp

 Posa el contingut següent.

node “puppetagent” {# S’aplica només al node esmentat. Si no s’esmenta res, s’aplica a tothom.

file {‘/ home / test’: # Fitxer tipus de recurs

assegurar => “directori”, # Crea un directori

propietari => ‘root’, # Propietat

grup => “root”, # Nom del grup

mode => “0755”, # permisos del directori

}

}

Ara executeu la comanda següent per tal que un agent arribi per dominar i tirar de les configuracions. Després d’executar aquesta ordre, hauria de crear aquest directori al node d’agent.

Al node d’agent

[correu electrònic protegit]: ~ $ sudo / opt / puppetlabs / bin / puppet agent –test

Contrasenya [sudo] de geekflare:

Informació: utilitzant l’entorn configurat “producció”

Informació: recuperació de complements

Informació: complement de recuperació

Informació: recuperació de locals

Informació: Catàleg de caché per a puppetagent

Informació: aplicació de la versió de configuració “1571333010”

Avís: / Etapa [principal] / Principal / Node [puppetagent] / Fitxer [/ home / test] / assegurar-se: creat

Avís: catàleg aplicat en 0,05 segons

Executeu l’ordre ls per comprovar si el director s’ha creat correctament. 

[correu electrònic protegit]: ~ $ ls -l / home /

en total 32

drwxr-xr-x 13 geekflare geekflare 4096 jul 19 08:06 geekflare

drwx —— 2 arrel arrel 16384 23 d’octubre de 2018 perduda + trobada

drwxr-xr-x 23 geekflare geekflare 4096 17 oct, 11:02 geekflare

drwxr-xr-x 2 arrel arrel 4096 17 de octubre 13:23 prova

drwxr-xr-x 2 nom d’usuari del nom d’usuari 4096 29 de juny 09:38 nom d’usuari

Allà vas!

Conclusió

Aquest va ser un exemple senzill per demostrar el seu funcionament. Però imagineu-vos un escenari més gran, on heu d’instal·lar o aplicar una determinada configuració en centenars de servidors. Titella pot ajudar a aconseguir-ho en pocs minuts.

Si esteu involucrats en l’automatització i esteu interessats en aprendre més, podeu comprovar-ho Curs Udemy, que parla sobre Ansible, Titella i Salt.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map