Tutorial de titelles: solució única per a la gestió de configuracions

Puppet Tutorial és el segon bloc de la sèrie de blocs Puppet. Parla d’arquitectura de titelles, components i un exemple per desplegar mysql i php mitjançant Puppet.

Tutorial de titelles

Puppet Tutorial és el segon bloc de la sèrie de blocs Puppet. Espero que hagueu llegit el meu bloc anterior a “ Què és Titella ”Que explica la gestió de la configuració i per què és important amb l’ajut de casos d’ús.



En aquest tutorial de titelles es tractaran els següents temes:



Què és la gestió de configuracions?

En el meu bloc anterior , He fet una introducció a la Gestió de la configuració i quins reptes ens ajuda a superar. En aquest tutorial de titelles, us explicaré les diferents activitats interdependents de la gestió de configuracions.Abans, però, entenem què és Element de configuració (CI). Un ítem de configuració és qualsevol component de servei, element d’infraestructura o un altre ítem que s’hagi de gestionar per assegurar l’èxit de la prestació dels serveis. Els exemples d’IC inclouen documents, programari, models i plans de requisits individuals.



La gestió de la configuració consta dels elements següents:

  • Identificació de la configuració
  • Gestió del canvi
  • Comptabilitat de l'estat de la configuració
  • Auditories de configuració

El diagrama següent explica aquests components:

què és l'etiqueta br en html

Components de gestió de configuracions - Tutorial de titelles - Edureka



Identificació de la configuració: És el procés de:

  • Etiquetatge d'elements de configuració de programari i maquinari amb identificadors únics
  • Identificar la documentació que descriu un element de configuració
  • Agrupar els elements de configuració relacionats en línies de base
  • Etiquetatge de revisions dels elements de configuració i línies de base.

Gestió del canvi: És un enfocament sistemàtic per fer front al canvi tant des de la perspectiva d’una organització com de l’individu.

Comptabilitat de l'estat de configuració: Això inclou el procés d’enregistrament i informe de descripcions d’elements de configuració (per exemple, maquinari, programari, firmware, etc.) i totes les sortides de la línia de base durant el disseny i la producció. En cas de sospita de problemes, es pot determinar ràpidament la verificació de la configuració de la línia de base i les modificacions aprovades.

Auditories de configuració: Les auditories de configuració proporcionen un mecanisme per determinar el grau en què l'estat actual del sistema és coherent amb la línia de base i la documentació més recents. Bàsicament, es tracta d’una revisió formal per verificar que el producte que s’entrega funcionarà tal com s’anuncia, promociona o de qualsevol manera prometuda als clients. Utilitza la informació disponible com a resultat de les auditories i proves de qualitat juntament amb la informació de comptabilitat de l’estat de la configuració, per assegurar que s’ha construït allò que es requeria.

Comprenem la gestió de la configuració amb un cas d’ús. Suposem que si heu d’actualitzar un programari concret o voleu substituir-lo, en aquest cas s’hauria de seguir el diagrama de flux següent per a una gestió de configuració exitosa:

Ara és el moment correcte per entendre l'arquitectura de titelles.

Tutorial de titelles - Arquitectura de Titella

Puppet utilitza una arquitectura Master-Slave. El diagrama següent mostra el mateix:

A la imatge anterior es realitzen les funcions següents:

  • L’agent de titelles envia els fets al mestre de titelles. Els fets són bàsicamentparell de dades clau / valor que representa algun aspecte de l’estat esclau, com ara la seva adreça IP, el temps d’activitat, el sistema operatiu o si es tracta d’una màquina virtual. Més endavant explicaré els fets al bloc.
  • Puppet Master utilitza els fets per compilar un catàleg que defineix com s’ha de configurar l’esclau. Catàlegés un document que descriu l'estat desitjat per a cada recurs que Puppet Master gestiona en un esclau. Més endavant explicaré detalladament els catàlegs i els recursos.
  • Puppet Slave informa al Mestre indicant que la configuració està completa, que es pot veure al tauler de Titelles.

Mireu aquest vídeo tutorial de Puppet per comprendre millor Puppet.

Tutorial de titelles per a principiants | Formació DevOps | Edureka

Puppet Tutorial: Puppet Master and Slave Communication

Puppet Master and Slave es comunica a través deun canal xifrat segur amb l'ajut de SSL. El diagrama següent mostra el mateix:

Com podeu veure a la imatge anterior:

  • Puppet Slave demana el certificat de Puppet Master.
  • Després de rebre el certificat de Puppet Master, el Mestre sol·licita el certificat de Slave.
  • Un cop el Mestre ha signat el certificat d’esclau, l’esclau sol·licita configuració / dades.
  • Finalment, Puppet Master enviarà la configuració a Puppet Slave.

Vegem ara diversos components de titelles.

Tutorial de titelles: components de Titella

Manifestos: Cada esclau té els detalls de la seva configuració en Puppet Master, escrita en la llengua nativa de Puppet. Aquests detalls s’escriuen en el llenguatge que Puppet pot entendre i s’anomenen Manifest. Estan composts de codi Puppet i els seus noms de fitxer utilitzen el fitxer .pp extensió. Es tracta bàsicament de programes de titelles.
Per exemple: Podeu escriure un Manifest a Puppet Master que creï un fitxer i instal·li el servidor Apache a tots els esclaus de titelles connectats al Puppet Master.

Mòdul: Un mòdul de titelles és una col·lecció de manifests i dades (com ara fets, fitxers i plantilles) i tenen una estructura de directoris específica. Els mòduls són útils per organitzar el vostre codi Puppet, ja que us permeten dividir el vostre codi en diversos Manifestos. Els mòduls són paquets de codi i dades autònoms.

Recurs: Els recursos són la unitat fonamental per modelar configuracions de sistemes. Cada recurs descriu alguns aspectes d'un sistema, com ara un servei o paquet específic.

Característica: Facter recopila informació bàsica (dades) sobre Puppet Slave, com ara detalls de maquinari, configuració de xarxa, tipus i versió del sistema operatiu, adreces IP, adreces MAC, claus SSH i molt més. Aquests fets es posen a la disposició dels Manifestos de Puppet Master com a variables.

Mcollective: És un marc que permet executar diversos treballs en paral·lel en diversos esclaus. Realitza diverses funcions com:

  • Interactueu amb clústers d’esclaus, ja sigui en grups reduïts o desplegaments molt grans.
  • Utilitzeu un paradigma de difusió per distribuir les sol·licituds. Tots els esclaus reben totes les sol·licituds al mateix temps, les sol·licituds tenen filtres adjunts i només els esclaus que coincideixen amb el filtre actuaran sobre les sol·licituds.
  • Utilitzeu eines senzilles de línia d’ordres per trucar a esclaus remots.
  • Escriviu informes personalitzats sobre la vostra infraestructura.

Catàlegs: Un catàleg descriu l'estat desitjat de cada recurs gestionat en un esclau. És una recopilació de tots els recursos que el Mestre de Titelles aplica a un determinat esclau, així com les relacions entre aquests recursos.Els catàlegs són compilats per un Puppet Master a partir de dades proporcionades per Manifest i Slave (com ara fets, certificats i un entorn si es proporciona), així com dades externes opcionals (com ara dades d’un classificador d’esclaus extern, recursos exportats, i funcions). Aleshores, el mestre serveix el catàleg compilat a l’esclau quan se li sol·liciti.

Ara, en aquest tutorial de titelles, la meva següent secció se centrarà en les pràctiques.

Tutorial de titelles: pràctiques

Us mostraré com implementar MySQL i PHP des de Puppet Master fins a Puppet Slave. Només faig servir un esclau amb finalitats de demostració, hi pot haver centenars d'esclaus connectats a un mestre. Per desplegar PHP i MySQL utilitzaré mòduls predefinits disponibles a forge.puppet.com. També podeu crear els vostres propis mòduls.

Pas 1: A Puppet Master instal·leu mòduls MySQL i PHP.

Executeu això:

1) el mòdul titella instal·la puppetlabs-mysql –version 3.10.0

Aquest mòdul MySQL instal·la, configura i gestiona el servei MySQL. Aquest mòdul gestiona la instal·lació i la configuració de MySQL, així com amplia Puppet per permetre la gestió de recursos MySQL, com ara bases de dades, usuaris i subvencions.

2) instal·lar el mòdul titella mayflower-php –version 4.0.0-beta1

arraylist de tipus java de nombres enters

Aquest mòdul s’utilitza per gestionar PHP, en particular php-fpm. PHP-FPM (FastCGI Process Manager) és una implementació alternativa de PHP FastCGI amb algunes funcions addicionals útils per a llocs de qualsevol mida, especialment llocs més ocupats.

Pas 2: A Puppet Manifests s’inclouen el servidor MySQL i PHP.

Executeu això: vi /etc/puppet/manifests/site.pp

Podeu utilitzar qualsevol altre editor com vim, gedit, etc. En aquest fitxer site.pp afegiu el següent:

include ':: mysql :: server' include ':: php'

Deseu i deixeu de fer-ho.

Pas 3: Puppet Slaves treu la seva configuració del Mestre periòdicament (després de cada 30 minuts). Avaluarà el manifest principal i aplicarà el mòdul que especifica la configuració de MySQL i PHP. Si voleu provar-ho immediatament, heu d'executar l'ordre següent a cada node esclau:

Executeu això: agent de titelles -t

Per tant, MySQL i PHP s’instal·len correctament al node esclau.

Pas 4: Per comprovar la versió de MySQL i PHP instal·lats:

obtenir la longitud de la matriu js

Executeu això:

1) mysql -v

2) PHP -version

Enhorabona! MySQl i PHP ja estan en funcionament al vostre esclau de titelles. Aquí només us he mostrat un esclau, però imagineu-vos si hi ha centenars d’esclaus. En aquest cas, el vostre treball es fa tan fàcil. Només cal que especifiqueu les configuracions de Puppet Master i Puppet Slaves avaluarà automàticament el manifest principal i aplicarà el mòdul que especifica la configuració de MySQL i PHP.

Si ho trobeu Tutorial de titelles rellevant, fes un cop d'ull al per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. El curs de formació en certificació Edureka DevOps ajuda els estudiants a adquirir experiència en diversos processos i eines DevOps com Puppet, Jenkins, Nagios i GIT per automatitzar diversos passos en SDLC.