Tutoriales y Manuales
Entradas Mensuales
-
►
2024
(Total:
1090
)
- ► septiembre (Total: 50 )
-
►
2023
(Total:
710
)
- ► septiembre (Total: 65 )
-
▼
2022
(Total:
967
)
-
▼
noviembre
(Total:
78
)
- Disponible qBittorrent 4.5
- Meta es multada en Europa con 265M€ por no cumplir...
- Proyecto OWASP: cabeceras de seguridad
- Estados Unidos prohíbe equipos de telecomunicacion...
- Puppet: la navaja suiza para la automatización de ...
- ¿Qué es la función Overdrive de un monitor?
- A la venta casi 500 millones de números de teléfon...
- MEGA Backup, nueva función de copia de seguridad p...
- En San Francisco (EE.UU.) los robots policía ya ti...
- Stable Diffusion 2.0, una AI capaz de sintetizar y...
- Reino Unido pide desconectar cámaras de seguridad ...
- La webcam cumple 31 años y nació para vigilar una ...
- Detectan páginas falsas de MSI Afterburner que min...
- Adobe te obliga a pagar una suscripción para rotar...
- Pagar para desbloquear toda la potencia de los Mer...
- Llevar tu PC o portátil a reparar puede poner en r...
- Los trabajadores del iPhone (FoxConn) en China se ...
- Europa tiene 2 de los 5 superodenadores más potent...
- Generali sufre un ciberataque a sus sistemas de in...
- La página web del Parlamento Europeo, víctima de u...
- Intel On Demand: el pago por desbloquear caracterí...
- Prohiben en las escuelas de Francia usar versiones...
- Wazuh: plataforma de seguridad de código abierto
- Twitter e Instagram preparan el cifrado de extremo...
- Polícia Italiana crea servicio IPTV falso para pod...
- Vanuatu: un país entero paralizado por un ataque d...
- Google pagó 360M$ a Activision Blizzard para evita...
- Donald Trump vuelve a Twitter tras la ajustada enc...
- La nueva Inteligencia Artificial de Google es capa...
- ¿Qué es el Subsistema de Windows para Linux? WSL
- La NSA recomienda dejar de usar C y C++ por altern...
- Meta descubre a más empleados vendiendo cuentas de...
- Arrestados dos rusos responsables de Z-Library, un...
- Los empleados de Twitter dimiten en masa tras el u...
- Tecnología de Intel FakeCatcher es capaz de detect...
- La VPN de Google One disponible para Windows y Mac
- La UE estudia mandar al espacio los centros de dat...
- Seagate presenta discos duros tan rápidos como los...
- Google implementará Privacy Sandbox en Android 13 ...
- Las peores contraseñas del 2022
- Activar el bloqueo dinámico en Windows 10-11 usand...
- PayPal te cobrará una comisión si no la utilizas e...
- Polícia de España desarticula red contenidos pirat...
- Google acuerda pagar una multa de 391 millones $ p...
- El CEO de FTX había implementado una puerta traser...
- C1b3rWall Academy: edición 2022‑2023 del curso gra...
- Dimiten de Twitter los directores de seguridad y p...
- Apple podría estar rastreando a sus usuarios aunqu...
- Detenido un importante operador ruso del ransomwar...
- Un hackeo roba a Hacienda de España datos de medio...
- El Gobierno de Catar hackeó a la FIFA para obtener...
- Crean un casco de realidad virtual que te mata de ...
- Diferencias entre Proxy's, VPN's y TOR
- Las nuevas cuentas verificadas de pago crean confu...
- Mozilla se plantea seguir dando soporte a Firefox ...
- Robados a Telefónica 2 millones de € en iPhones de...
- Herramienta oculta de Facebook te permite eliminar...
- EE.UU. incauta U$S1,4 mil millones en Bitcoin roba...
- ¿Qué es Mastodon? el Twitter descentralizado
- Orange España sufre una filtración de datos privad...
- Encuentran software Gimp con malware en la primera...
- Aumentan los intentos de robo de cuentas verificad...
- Elon Musk despide por error trabajadores de Twitte...
- PortMaster es una aplicación gráfica cortafuegos b...
- El fabricante alemán de neumáticos Continental es ...
- Cómo escanear códigos QR de forma segura
- China podrá acceder a los datos de usuarios europe...
- Un exempleado de Apple se enfrenta a 25 años de pr...
- AMD presenta nuevas tarjetas gráficas Radeon RX 79...
- Flipper Zero: dispositivo para pruebas radiofrecue...
- Google dice adiós a Hangouts y a la app de Street ...
- Elon Musk tiene previsto despedir a la mitad de lo...
- EnCodec es el nuevo códec de audio de Meta
- Los parches de OpenSSL ya están disponibles
- La Guardia Civil detiene a un menor de 17 años por...
- Hackearon el teléfono personal de Liz Truss
- Vulnerabilidades en la interfaz web de dispositivo...
- Elon Musk cobrará 8$ al mes en Twitter por la veri...
- ► septiembre (Total: 72 )
-
▼
noviembre
(Total:
78
)
-
►
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
Después de ver qué es una vCPU y la diferencia entre núcleos (cores) e hilos en los procesadores, pasamos a explicar toda la nomenclatura d...
-
iperf3 es la última versión del popular programa iperf para medir el ancho de banda entre dos o más equipos en red local o Internet . Es...
-
A finales del mes de agosto hablábamos de que los legisladores estadounidense habían solicitado la investigación de TP-Link . Y así, ya ten...
Puppet: la navaja suiza para la automatización de los administradores de sistemas
Puppet es una herramienta que permite desplegar configuraciones, instalar paquetes en diferentes servidores a través de código. Es una herrramienta para realizar Infrastructure as a Code (IaaC) La diferencia de Puppet frente a otros como Ansible, es que puppet tiene instalado un agente en el equipo que se asegura de que la configuración indicada en el código de Puppet se mantiene. Si el código de puppet indica que la máquina tiene que tener el firewall encendido y un usuario lo deshabilita, el agente de Puppet volverá a activarlo cuando realice su check.
Infraestructura
- Puppet Master
- Puppet Agent
- Comunicación entre los nodos
Puppet Master
Servidor donde se alojan los módulos y configuraciones que indicará a los clientes cual es el estado deseado por el administrador.
Módulos
Un módulo se compone de
- Manifests
- Templates
- Ficheros
Manifest
Scripts en ruby con el código que realizará la gestión de la configuración. Existen módulos para diferentes tipos de software, por ejemplo:
- Zabbix Server / Proxy / Agent / Agent 2
- Firewalld
- NTP
Son los encargados de realizar la instalación en caso de que se solicite en la configuración o template.
Template
Es la configuración que se desea para un software que se haya instalado, por ejemplo para poder indicar a Zabbix Agent cual es su servidor y servidor activo, para el NTP cual es su servidor desde donde sincronizarse, para el Firewalld cuales son las reglas que debe aplicar. Tambien poder indicarle el estado del servicio, si siempre ha de estar encendido.
También permite indicar la creación de usuarios, copiar las claves RSA que deben autorizar el login...
Ficheros
A diferencia de los templates, los ficheros simplemente son instrucciones de copiar uno o varios ficheros al cliente, de forma que siempre tenga el fichero disponible o instalado. Uno de los posibles usos es copiar certificados a la root trusted store para que el cliente pueda confiar en los equipos de la red interna.
Certificate Authority
La comunicación entre el servidor Puppet Master y los clientes se realiza mediante certificados SSL. El cliente enviará su CSR al servidor de Puppet Master y este lo podrá firmar para autorizar a la máquina a integrarse en la infraestructura y establecer una comunicación entre ellos de forma segura.
Puppet Agent
Compuesto por:
Agent
Servicio que se ha de instalar en el cliente para que pueda realizar la comunicación con el servidor para obtener nuevas configuraciones y comunicar el nivel de compliance (si cumple o no lo indicado en la configuración) en el que se encuentra la máquina.
Facter
Responsable de recolectar el estado en el que se encuentra el cliente para que el agente pueda comunicarlo al servidor. El servidor le indicará las tareas pendientes a realizar para cumplir al 100% con la configuración deseada.
Comunicación entre los nodos
- Agente: Envía un CSR al puppet master (posible cliente)
- Master: Firma el certificado y se lo envía al cliente (confirma como cliente al agente)
- Agente: Envía su estado al servidor
- Master: Compara con el fichero de configuración para ese agente y le indica las tareas que debe realizar.
Los pasos 3 y 4 se repiten regularmente para asegurar que el cliente mantiene la configuración que le ha indicado el servidor.
Instalación del servidor
Requisitos previos
La máquina debe tener acceso a internet en el proceso de instalación
Configuración del hostname
La instalación del servidor necesita que se configure correctamente el nombre del equipo.
hostnamectl set-hostname puppet-master
Añada el nombre de dominio en el fichero
/etc/hosts
con el FQDN.echo "127.0.0.1 puppet-master.home.local puppet-master" >> /etc/hosts
Configuración de la IP
Ya sea a través de una reserva DHCP en el DHCP server o bien configurando de forma estática la IP en el servidor, asegúrese que la máquina tiene una IP estática.
Configuración del firewall
Si la máquina tiene instalado un
Firewall local y/o tiene un Firewall perimetral/segmentación, asegurese
de que permite el puerto 8140/tcp
para la comunicación entre los agentes y el servidor.
Iptables
iptables -I INPUT -p tcp -m tcp --dport 8140 -j ACCEPT
service iptables save
service iptables save
UFW
ufw allow 8140
Firewalld
firewall-cmd --permanent --zone=public --add-port=8140/tcp
Reinicio
Finalmente reinicie el equipo para
que tenga en cuenta le nuevo nombre de la máquina y sobre todo para
validar y comprobar que las configuraciones de la ip estática y el
firewall se mantienen.
reboot
Instalación
Proceda con la instalación del Puppet Master
Instalación del servidor
wget https://apt.puppet.com/puppet-release-bullseye.deb
dpkg -i puppet-release-bullseye.deb
apt update
apt install -y puppetserver
source /etc/profile.d/puppet-agent.sh
Confirme la versión instalada
puppetserver -v
Edite el fichero de configuración de Puppet
nano /etc/default/puppetserver
y modifique la RAM máxima que va a consumir la Java Virtual Machine (JVM). Por defecto viene configurada con 2Gb, sin embargo para entornos pequeños puede usar 512Mb.
Cambie el valor de las variables
JAVA_ARGS="-Xms2g -Xmx2g"
al valor deseado
JAVA_ARGS="-Xms512m -Xmx512m"
Guarde los cambios. Configure el servidor
puppet config set server puppet.psc.local --section main
puppet config set runinterval 10m --section main
puppet config set environment production --section server
puppet config set dns_alt_names puppet,puppet.psc.local --section server
Finalmente active y inicie el servicio.
systemctl enable puppetserver
systemctl start puppetserver
El primer arranque de puppet tardará un poco, espere a que finalice sin errores.
A continuación ejecute el siguiente código. Esto aplicará a todos los nodos que tengan Puppet instalado. Modificará el fichero hosts añadiendo dichas lineas. Si dispone de un servidor DNS en el entorno, entonces no será necesario.
Cuidado si habilita el valor purge => true
ya que eliminará cualquier cambio que se realice a mano en los ficheros hosts de las máquinas.
cat <<endblock >> /etc/puppetlabs/code/environments/production/manifests/site.pp
node default {
resources { 'host': purge => true }
host { 'localhost': ip => '127.0.0.1', }
host { 'puppet-master.psc.local': ip => '192.168.0.3', host_aliases => [ 'puppet-master', 'puppet' ] }
host { 'puppet-client.psc.local': ip => '192.168.0.4', host_aliases => [ 'puppet-client'] }
}
endblock
Si en el propio servidor ejecuta
cat /etc/hosts
Posteriormente ejecuta
puppet agent -vt
Y vuelve a visualizar el fichero hosts
cat /etc/hosts
Podrá ver que el contenido es el siguiente
# HEADER: This file was autogenerated at 2022-11-01 17:23:13 +0100
# HEADER: by puppet. While it can still be managed manually, it
# HEADER: is definitely not recommended.
# Your system has configured 'manage_etc_hosts' as True.
# As a result, if you wish for changes to this file to persist
# then you will need to either
# a.) make changes to the master file in /etc/cloud/templates/hosts.debian.tmpl
# b.) change or remove the value of 'manage_etc_hosts' in
# /etc/cloud/cloud.cfg or cloud-config from user-data
#
192.168.0.3 puppet-master.psc.local puppet-master puppet
127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts
192.168.0.4 puppet-client.psc.local puppet-client
En el fichero sites.pp del entorno, también puede indicar que software o configuraciones van a tener los equipos de dicho entorno.
Configuración de entorno
Por defecto Puppet Server crea un entorno llamado production. Podemos crear tantos como nos interese, sin embargo proceda con la configuración de que viene por defecto para comprobar que la instalación es correcta.
Configuración de la jerarquía
En puppet se puede definir una jerarquia a la hora de aplicar los ficheros de configuración.
- La configuración del nodo en concreto
- La configuración de la familia de sistema operativo
- Paquetes comunes
Edite el fichero
nano /etc/puppetlabs/code/environments/production/hiera.yaml
y modifíquelo para tener el siguiente contenido. Se ha cambiado el trusted.certname por hostname y se ha añadido el osfamily.
---
version: 5
defaults:
# The default value for "datadir" is "data" under the same directory as the hiera.yaml
# file (this file)
# When specifying a datadir, make sure the directory exists.
# See https://puppet.com/docs/puppet/latest/environments_about.html for further details on environments.
datadir: data
data_hash: yaml_data
hierarchy:
- name: "Per-node data (yaml version)"
path: "nodes/%{::trusted.certname}.yaml"
- name: "Per-os data"
path: "osfamily/%{::osfamily}"
- name: "Other YAML hierarchy levels"
paths:
- "common.yaml"
Como posibles parámetros del node, existen los siguientes
::trusted.certname
Usa el FQDN del equipo como nombre del fichero, recomendable si el mismo puppet gestiona equipos de diferentes dominios y puede colisionar el nombre.
::hostname
Usa solo el hostname de la máquina, si solo va a gestionar los dominios de un equipo y no van a colisionar nunca.
Common packages
En la carpeta del entorno, cree el fichero common_packages.pp
cd /etc/puppetlabs/code/environments/production/manifests/
nano common_packages.pp
Y añada el contenido deseado, por ejemplo puede añadir los siguientes paquetes que por lo general se suelen usar en los sistemas Linux.
class common_packages {
package { 'net-tools':
ensure => 'installed'
}
package { 'htop':
ensure => 'installed'
}
package { 'fail2ban':
ensure => 'installed'
}
}
Ahora cree el fichero de paquetes comunes para el environment.
cat <<endblock >> /etc/puppetlabs/code/environments/production/data/common.yaml
---
classes:
- common_packages
endblock
echo "hiera_include('classes')" >>
Quedando de la siguiente manera
root@puppet-master:~# cat /etc/puppetlabs/code/environments/production/manifests/site.pp
node default {
resources { 'host': purge => true }
host { 'localhost': ip => '127.0.0.1', }
host { 'puppet-master.psc.local': ip => '192.168.0.3', host_aliases => [ 'puppet-master', 'puppet' ] }
host { 'puppet-client.psc.local': ip => '192.168.0.4', host_aliases => [ 'puppet-client'] }
}
hiera_include('classes')
Reincie el servidor puppet y realice la prueba
systemctl restart puppetserver
Instalación del cliente
Requisitos previos
Configuración del hostname
Proceda a configurar el hostname en la máquina cliente, es indiferente el nombre que le ponga, pero ha de ser un nonmbre no usado en la red local
Cliente 1 que será un servidor Web Nginx
hostnamectl set-hostname nginx-01
Cliente 2 que será un servidor de MariaDB
hostnamectl set-hostname nginx-01
Cliente 3 que será un equipo de un usuario
hostnamect set-hostname laptop-guille
Configuración del fichero hosts
/etc/hosts
de la máquina cliente. Suponiendo que la IP del servidor es 192.168.0.10
, su hostname es my-puppet-server
y que el dominio local es home.local
echo "192.168.0.3 puppet-master puppet-master.psc.local" >> /etc/hosts
Compruebe que tiene conectividad
ping -c 4 puppet-master.psc.local
A continuación instale el Puppet Agent
wget https://apt.puppet.com/puppet-release-bullseye.deb
dpkg -i puppet-release-bullseye.deb
apt update
apt install -y puppet-agent
source /etc/profile.d/puppet-agent.sh
Realice la configuración inicial ejecutando los siguiente comandos
puppet config set runinterval 10m --section main
puppet config set server puppet-master.psc.local --section agent
puppet config set ca_server puppet-master.psc.local --section agent
puppet config set environment production --section agent
y podrá ver los cambios en el fichero /etc/puppetlabs/puppet/puppet.conf
. A continuación active el servicio en el arranque e inicie el cliente
systemctl enable puppet
systemctl start puppet
Finalmente genere la petición al servidor y espere a que sea aceptada por el servidor
puppet ssl bootstrap
Gestión de los clientes
Cuando un nuevo nodo se quiere unir a la infraestructura de Puppet, este debe enviar una petición de enroll al servidor al puppet-master
con el comando visto en el anterior post puppet ssl bootstrap
.
Conéctese al servidor mediante ssh y compruebe si hay certificados pendientes de autorizar con
Listar clientes pendientes de autorizar
puppetserver ca list
Listar todos los clientes
Para ver todos los clientes ya sean autorizados o pendientes
puppetserver ca list --all
Autorizar un cliente nuevo
Supongamos que tenemos el cliente puppet-client.psc.local, para firmarlo debe ejecutar el comando
puppetserver ca sign --certname puppet-client.psc.local
Autorizar un cliente nuevo
Supongamos que tenemos el cliente puppet-client.psc.local, para firmarlo debe ejecutar el comando
puppetserver ca sign --certname puppet-client.psc.local
Eliminar un cliente actual
Si desea desautorizar un cliente o eliminarlo de la infraestructura de puppet para que no pueda comunicarse con el servidor, ejecute el siguiente comando.
puppetserver ca clean --certname puppet-client.psc.local
Configuración del cliente con template
Ahora ya dispone de un cliente en el entorno (realmente dos si tiene en cuenta el propio servidor). Por lo que llega el momento de usar código para configurar las opciones que quiera que esten en la máquina cliente.
Volviendo a revisar el fichero /etc/puppetlabs/code/environments/production/hiera.yaml
encuentra que el parámetro datadir contiene la ruta relativa a donde
reside el fichero hiera.yaml. Tal y como indica, se encuentra a la misma
altura.
cd /etc/puppetlabs/code/environments/production/data
Y tal y como se ha indicado en el fichero hiera.yaml los ficheros de los nodos residiran en una carpeta interna llamada nodes
. Por defecto no existe, por lo que hay que crearla. Lo mismo sucede para los templates de sistema operativo (osfamily
).
mkdir -p /etc/puppetlabs/code/environments/production/data/{nodes,osfamily}
Cree el fichero para el nodo llamado puppet-client con
nano /etc/puppetlabs/code/environments/production/data/nodes/puppet-client.psc.local.yaml
Y añada el siguiente contenido de ejemplo, que instalará y configurará el agente Zabbix
---
classes:
- zabbix_agent2
zabbix_agent2::zabbix_version: '6.2'
zabbix_agent2::repo_manage: true
zabbix_agent2::package_manage: true
zabbix_agent2::package_ensure: present
zabbix_agent2::package_name: ['zabbix-agent2']
zabbix_agent2::service_enable: true
zabbix_agent2::service_ensure: 'running'
zabbix_agent2::service_manage: true
zabbix_agent2::service_name: 'zabbix-agent2'
zabbix_agent2::service_provider: ~
zabbix_agent2::service_hasstatus: true
zabbix_agent2::service_hasrestart: true
zabbix_agent2::config:
PidFile: '/run/zabbix/zabbix_agent2.pid'
LogFile: '/var/log/zabbix/zabbix_agent2.log'
LogFileSize: 0
Server: '192.168.0.24'
ServerActive: '192.168.0.24'
Hostname: "%{::hostname}"
Include: '/etc/zabbix/zabbix_agent2.d/*.conf'
ControlSocket: '/tmp/agent.sock'
Debe asegurarse de que tiene el módulo instalado en el servidor. Por defecto no viene, así que debe proceder a instalarlo.
puppet module install puppetlabs-apt
puppet module install puppetlabs-stdlib --version 6.6.0 --force
puppet module install gjerjens-zabbix_agent2
A continuación, en el cliente, ejecute el comando de actualización de puppet
puppet agent -vt
En el primer intento, puede que falle la instalación, ya que no habrá introducido el repositorio. Por lo que una vez vuelva a ejecutarlo se deberá instalar el paquete sin problemas.
Crear un nuevo entorno Puppet
Puede interesar tener varios entornos en el sistema Puppet por ejemplo porque quiere montar el entorno de production, staging, development... o quiere gestionar los equipos de diferentes empresas desde un mismo servidor.
Para ello tan solo debe copiar la carpeta de production y todas sus subcarpetas
cd /etc/puppetlabs/code/environments/
cp -r production development
Elimine los ficheros contenidos en data/nodes
ya que son nodos que pertenecen al otro environment.
cd /etc/puppetlabs/code/environments/development/data/nodes
rm -f *.yaml
Edite el fichero common.yaml
del environment para poner los paquetes y versiones que le interesen para la versión de development.
La instalación de un módulo por defecto se instala en el entorno production
, para instalarlo en el nuevo environment, se debe indicar con el parámetro --environment xxxxxx
.
puppet module install --environment development MODULE_TO_INSTALL
Módulos
- Genéricos de sistema
- Seguridad y bastionado
- Monitorización
- Elastic stack
Genéricos de sistema
Aquellos módulos que son para configurar básicos para realizar configuraciones del sistema operativo.
puppet module install puppetlabs-ntp
puppet module install saz-timezone
puppet module install puppetlabs-accounts
puppet module install puppetlabs-apt
puppet module install stm-debconf
puppet module install puppet-yum
puppet module install puppetlabs-yumrepo_core
puppet module install puppet-keepalived
puppet module install puppet-logrotate
puppet module install puppetlabs-concat
puppet module install puppetlabs-inifile
puppet module install puppetlabs-postgresql
puppet module install puppetlabs-stdlib
puppet module install puppetlabs-transition
puppet module install puppetlabs-translate
Seguridad y bastionado
Aquellos módulos que permiten configurar el bastionado del equipo
puppet module install saz-sudo
puppet module install puppet-trusted_ca
puppet module install puppet-firewalld
Monitorización
Sensu
puppet module install sensu-sensu
Zabbix Agent 2
El módulo de Zabbix Agent 2 no oficial, necesita cumplir una dependencia de la librería stdlib, pero esta ha de ser superior a la 4.13.0 e inferior a la 7.0.0 ya que sino dará el siguiente error a la hora de instalarlo.
Para ello primero forzaremos la versión de la librería de stdlib a la 6.6.0
puppet module install puppetlabs-stdlib --version 6.6.0 --force
Y posteriormente instalaremos la versión del módulo de Zabbix Agent 2
puppet module install gjerjens-zabbix_agent2
Template para nodo
---classes:- zabbix_agent2zabbix_agent2::zabbix_version: '6.2'zabbix_agent2::repo_manage: truezabbix_agent2::package_manage: truezabbix_agent2::package_ensure: presentzabbix_agent2::package_name: ['zabbix-agent2']zabbix_agent2::service_enable: truezabbix_agent2::service_ensure: 'running'zabbix_agent2::service_manage: truezabbix_agent2::service_name: 'zabbix-agent2'zabbix_agent2::service_provider: ~zabbix_agent2::service_hasstatus: truezabbix_agent2::service_hasrestart: truezabbix_agent2::config:PidFile: '/run/zabbix/zabbix_agent2.pid'LogFile: '/var/log/zabbix/zabbix_agent2.log'LogFileSize: 0Server: '192.168.0.24'ServerActive: '192.168.0.24'Hostname: "%{::hostname}"Include: '/etc/zabbix/zabbix_agent2.d/*.conf'ControlSocket: '/tmp/agent.sock'
Elastic stack
Para instalar los módulos para Elastic y Kibana
puppet module install elastic-elastic_stack
puppet module install elastic-elasticsearch
puppet module install elastic-kibana
0 comentarios :
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.