Alberto González
SysAdmin/DevOps/SRE
Empezar como no, agradeciendo a todo aquel que a hecho de forma directa o indirecta que hoy me sienta uno mas dentro de la comunidad GNU/Linux, en especial a aquellos que me ofrecieron una oportunidad cuando apenas me entendía con el pingüino.
Por supuesto, existe una cantidad finita pero inmensa, de blogueros, administradores de wikis, autores… a los que he acudido con gran frecuencia cuando las cosas se torcían; esto, y los libros sean seguramente el mayor de los favores que se le puede hacer a un autodidacta.
GRACIAS!
De alguna forma tenía que devolver ese favor y que menos que creando este blog para ayudar a aquellos que se inician o necesitan información básica sobre herramientas enfocadas a la administración de sistemas, servicios o por ejemplo el acceso gratuito al material necesario para superar la certificación «LPIC-1 Linux Server Professional».
He ejercido como SysAdmin/DevOps/SRE en el departamento de desarrollo de productos de la compañía Wellness Telecom, en la cual mi mayor parte del tiempo a estado dedicado a la automatización del despliegue del backend Big Data para las Smart Cities y mejorar/evolucionar el workflow de desarrollo de productos mediante la integración y entrega continua de nuevos evolutivos Software. Actualmente pertenezco al departamento «Engineering» de la compañia EUIGS IT perteneciente a Admiral Group en la cual se gestionan las IT de aseguradoras de primer nivel en ámbito internacional (UK, Italia, Francia y España).
Espero que sea de utilidad para aquellos que necesitan un último «halo de esperanza» durante la configuración o administración de un servicio, o como modelo de CV para los recruiters interesados en un perfil similar al aquí mostrado.
Un saludo!
Hola Alberto ! que tal todo?
Mira que llevo buscando un rato algun articulo para torpes/novatos explicando las diferencias entre Ansible, Puppet, Cheff, SaltStack, Docker, Kubernetes, Vagrant y Xen Orchestra?
Creo que no me dejo nada de lo que mas se escucha hoy en dia en Devops. Si se te ocurre algo mas tambien (pero mejor solo opensource).
He encontrado este articulo que no esta mal aunque no las menciona todas y tampoco me lo deja del todo claro.
https://www.javiergarzas.com/2015/08/docker-vs-puppet-vs-vagrant-vs-chef.html
y este tambien que parece mas extenso (ingles) ..
Requirements
Solution
Ansible (perhaps with Docker + Vagrant)
no upfront installation/agents on remote/slave machines – ssh should be enough
application components should use third-party software, e.g. HDFS, Spark’s cluster, deployed separately
configuration templating
environment requires/asserts, i.e. we need a JVM in a given version before doing deployment
deployment process run from Jenkins
Candidates and management summary
Ansible, Chef, Puppet, SaltStack, CFEngine
Docker and Vagrant are mentioned, too, for similar requirements.
Found on the net
Vocabulary
What is difference between docker, puppet, chef and vagrant?:
Tools at glance
Ansible
http://www.ansible.com
Current released version: 1.9.2
git clone
+cd
+source
– see http://docs.ansible.com/intro_installation.html#running-from-source/etc/ansible/hosts
.Chef
e.g. install apache, enable authn_ldap module, etc.
Puppet
Vagrant
:shell
providervagrant --version
vagrant [init|up|ssh|halt|destroy]
vagrant up
= starts VM off VagrantfileVagrantfile
andconfig.vm.box
Vagrantfile
and send pull request with the change to git repo.git pull
and follow alongvagrant destroy
,git pull
,vagrant up
, and do your workVagrantfile
– it’s a text file, remember?Docker
https://www.docker.com/
docker
command to interact with the Docker daemon and obtain information or perform actions on containers and images.docker info
docker ps
to list all running containers.docker run -d --name redis -p 6379:6379 redis
--name
gives the name of a containerredis
above, is for container’s name to use-d
flag to run a container in detached mode which gives you back control of your command line.-p container-port:host-port
mapscontainer-port
tohost-port
-v host-path:container-path
to mount a directory on a workstationhost-path
tocontainer-path
in the container--link redis:redis
to link toredis
container--name
switch.boot2docker help
boot2docker version
boot2docker up
for VM and Docker daemon to startdocker run hello-world
boot2docker halt
boot2docker upgrade
boot2docker shellinit
docker stop
stops an imagedocker ps
to list running imagesdocker rm
Dockerfile
= a text file used to build a Docker image and run a container based on that image.docker build -t myapp:latest .
builds a docker image namedmyapp
with taglatest
on the guest host’s diskdocker login
to login to the Docker hub~/.docker/config.json
with login credentialsSources / Credits
deployment-tool-ansible-puppet-chef-salt.md
hosted with ❤ by GitHub
pero falta ese toque tuyo para que se le quede a uno claro ;)
Estaria genial si pudieses añadir algunos ejemplos basicos de lo que hace uno y que el otro que se le parece no hace.. ventajas/desventajas tambien, etc.
Me quiero poner el dia ya que he vuelto al mundo del IT pero hay tanto que uno no da abasto y me gustaria al menos saber por donde van los tiros.
Muchas gracias,
Saludos!!
Me gustaMe gusta
Bueno ante todo lo siento por la tardía respuesta pero tengo esto algo descuidado porque cada día me falta mas el tiempo. El planteamiento no es malo, solo que igual habría que separar por grupos ya que has mencionado orquestadores/administradores de configuraciones de servicios (Puppet,Chef y Ansible). En esencia lo que hacen instalar y configurar un servicio remoto de forma automática solo que difieren en su funcionamiento. Dejando a Chef a un lado por estar mas orientado a código/programación, diríamos que Ansible es el mas sencillo de utilizar, te creas archivos de recetas (como si fueran shell script) solo que con una cierta estructura de archivos y carpetas además de que estos scripts están escritos en formato YAML. Luego con una plantilla donde almacenas servidores remotos, lanzas esos script a los servidores remotos. En esos script podrás añadir ordenes de instalar servicios, configurarlos y administrarlos. Puppet en cambio funciona con una arquitectura master-agente, es decir tienes un servidor central (podría ser tu portátil aunque es preferible un servidor dentro del «cloud» que vas a gestionar) y una granja de servidores cada uno con el agente instalado. A través del maestro podrás lanzar ordenes de monitorización del estado de la configuración de los servicios (por si alguien la hubiese modificado, la volverás a machacar), instalar, configurar y administrar servicios… Luego también as mencionado Docker, Vagrant y Xen… es mas complejo de explicar e igual si merece una entrada, pero quitando a Xen orchestra que es una interfaz o hipervisor para gobernarn Máquinas virtuales, Docker y Vagrant son una especie de virtualización, y digo especie porque aunque Vagrant si implementa kernel y un OS, Docker es un proceso en un sistema anfitrión (tu portátil mismo) en el que se encapsula una serie de ficheros y directorios que hacen funcionar un servicio (por ejemplo Apache) pero sobre el kernel y hardware del portátil (en este ejemplo). Vagrant es parecido solo que es mas enfocado a la virtualización, de hecho es necesario tener instalado un virtualizador como VirtualBox para usarlo. DIgamos que Vagrant te permite crear máquinas virtuales dentro de VirtualBox, VMware… de una forma super sencilla, ejecutando un comando y un archivo de configuración. Por último, Kubernetes o Swarm, son los principales orquestadores de contenedores (Docker es un tipo de contenedor, existen mas), es decir instalarías Kubernetes o Swarm en una serie de hosts, crearías un clúster de nodos y ahora podrás crear muchos contenedores (procesos) de forma fácil y distribuída. Sirve para ser mas flexibles a la hora de desplegar infraestructuras, balancear carga, ofrecer alta disponibilidad, etc… Bueno, igual no te he podido explicar todo lo bien que me gustaría, pero espero haberte despejado algunas dudas. un saludo.
Me gustaMe gusta
Hola Alberto, que tal? Ante todo muchisimas gracias por tu blog… siempre acabo aqui cuando necesito aclarar dudas.
Estaria genial tener una version pdf de todo para usarlo como manual «offline» :P
Queria comentarte el tema de libros.
Estoy preparandome el LPIC-1 101-102 (por cierto en nada pasan ya a la quinta edicion) y estoy con el libro de Christine Bresnahan y Richard Blum, Ediciones Anaya . El libro no esta mal– el orden un poco confuso pero bueno.. aprender se aprende.
Cuando pase el LPIC-1 y empiece con el LPIC 2 quisiera saber que libro comprar.
Has visto que hay otro que tambien esta por todos lados de Sébastien Rohaut de ediciones ENI..
Siempre tengo dudas entre estos 2. Sabrias recomendarme mas uno que otro?
Por cierto en tu seccion de libros recomendados , el de Administracion de Debian es todavia de la version Squeeze. Publicaron cosa de un anio la de Jessie.
Haz clic para acceder a debian-handbook.pdf
Por si quieres actualizar la seccion.
Muchas gracias otra vez!
Un saludo
Me gustaMe gusta
Este tambien tiene buena pinta : Certificacion Linux LPIC 1 en 10 dias. Adolfo Olivera
https://updocs.net/queue/certificacion-linux-lpic-1-en-10-dias-adolfo-olivera-a5b35f5364633f?&queue_id=-1&v=1536839347&u=ODcuMjI1LjI1MC4yMDI=
Me gustaMe gusta
Hola duvenaki, muchas gracias ante todo. Lo del libro de de la LPIC-1 entiendo que van sacando versiones a un paso acelerado pero no es mas porque ellos necesitan vender, a fin de cuenta no se están actualizando muchas cosas. Si que es cierto que ahora está la moda Devops, pero creo que para eso ya hay en marcha otra certificación y desconozco si hay libro oficial (yo estudio esas tecnologías por separado). Para zanjar esto, con el de ANAYA y con lo que encuentras en ese sitio hay mas que aprobar la LPIC con nota. Para la LPIC-2 uso el libro de ENI (Sebastien Bobillier y philippe Banquet). Está muy bien redactado y editado.
Con respecto a lo del libro de Debian, lo subo ahora mismo. Gracias por el aporte!
Me gustaMe gusta
Hola Alberto, tengo una duda sobre las certificaciones LPIC 1,2 y 3. Sobre todo la 1 que es al que me dispondría a sacar de ante mano. Primero felicitarte por tu web, un gran aporte de material increíble. Mi duda radica aqui: ¿Cómo es el tema de la renovación hay que renovar el certificado?¿Pero tienes que presentarte pasados 1,2 o 3 años de vuelta y pagar por el examen otra vez y hacerlo? ¿Cómo es no entiendo? GRacias
Me gustaMe gusta
Hola Alain, las certificaciones caducan cada 5 años, pero son auto renovables al superar el siguiente nivel, es decir: en 2016 te sacas la LPIC1, supuestamente en 2021 te caducaría, pero si en 2021 te sacas la LPIC2 tendrías ambas con validez hasta 2026. Si en 2026 te sacas la LPIC3, gozarías de todas tus certificaciones actualizadas y con validez hasta el año 2031. Si te lo montas bien, tienes 15 años de certificaciones válidas. Una vez pasado los 15 años si has estado trabajando en el sector, ten por seguro que la experiencia hablaría por si sola amigo!! ;).
Yo me propuse 7 años de validez. En esos 7 años mas los 3 anteriores de trabajo en el sector, te garantizas un puesto de trabajo digno y lo mejor de todo, unos conocimientos bastante afianzados.
Un saludo.
PD. Esta información viene de una fuente tan fiable como es lpic- España ;).
Me gustaMe gusta
Saludos Alberto. Muchas gracias por compartir tu conocimiento y tus experiencias. Es muy bueno tu blog.
Me gustaMe gusta
Gracias jathan!!
Me gustaMe gusta
Hola Óscar, me llamo Romualdo y vivo y trabajo en Nerja.
Desde hace un par de años trabajo con Ubuntu y ahora que me decidido a sacarme la certificación LPIC-1 he descubierto tu magnífico blog. He de darte la enhorabuena, no le falta de nada, tienes de todo. Así que durante mi travesía autodidacta pienso recurrir a tu blog para que me ayude en ella. Gracias por compartir. Me vas a tener como un asiduo visitante.
Recibe un cordial saludo.
Me gustaMe gusta
Bienvenido!! Romualdo, encantado de tenerte por aquí, a darle caña!!
Me gustaMe gusta
Hola acabo de descubrir tu blog, soy muy nuevo en Linux, de hecho me gustaría aprender acerca de la configuración de servidores en linux y algunos protocolos que se piden en las empresas como SAMBA y cosas asi.
Me gusta mucho el área de redes pero veo que es casi necesario también estas «cosas de linux», me considero una persona autodidacta asi que pienso que llegue al lugar adecuado en el momento adecuado.
He leeido el ¿por qué de la existencia de tu blog? y me parace un gran agradecimiento y caridad por tu parte. Como soy muy nuevo en esto me parace que comenzare en la sección de begginers , luego GNU/Linux y por último LPIC-1 ¿Es correcto?, Ah, por cierto tambien indagare en todo lo demas pero lo mencionado antes será mi estrategia de estudio.
Saludos desde México, mi nombre es Oscar, no me presente jeje, acabo de concluir mis estudios universitarios,
¡Gracias! y a convertirse en un pingüino armado.
Me gustaMe gusta
Hola Oscar!
Bienvenido a 4sysadmins!! Me alegra saber que tenemos a un nuevo miembro en la comunidad!! :D te voy a dejar algunos consejos a nivel personal, como empecé yo y en que creo que me equivoqué por si te puede ayudar.
Casi siempre evitamos el leer grandes libros y vamos directo a la práctica (yo, como muchos empecé así) mal hecho!, al final tuve que pararme y leer.
Como consecuencia de tu comentario, voy a crear un nuevo enlace donde publicaré los links de algunos de los libros que he leído y que recomiendo su lectura.
A parte de los libros (que puedes ir compaginándolos con la práctica) una buena forma de empezar, sería por ejemplo visitando enlaces que publiqué sobre las distribuciones de Linux para novatos (descarga e instálate una!!), además visita entradas de este y otros blogs en los que se te enseñe a montar tus propios servicios (samba, servidores de streaming, servidor web y correo, etc…) encontrarás algunas dificultades por el camino (instalación de paquetes que no vienen en los repositorios oficiales, satisfacer dependencias, edición de archivos de configuración, etc..) eso te hará mas fuerte!!
Simultáneamente te aconsejo que visite la página que tengo de comandos, una lectura superficial puede abrirte la mente a nuevos comandos que te permitirán hacer ciertas tareas en el sistema.
Por «último» estaría bien que te crearás algunos scripts de automatización de tareas en shell, esto te dará soltura a la hora de trabajar desde la línea de comandos.
Con esto irás cogiendo una buena base para poder comenzar a leer los capítulos del LPIC-1 donde definitivamente te harás un administrador de sistemas Jr. y comenzarás a ver todo de otro color!!.
PD1 No olvides que TODO lo que tengas que hacer en el sistema, configurar red, gráficos, zona horaria, etc.. lo hagas desde la línea de comandos.
PD2 Espero que estos consejos te sean de ayuda (a ti y a aquellos interesados en aprender Linux), a continuación te dejaré algunas entradas con las que podrás comenzar!!:
A darle caña!!
– Descarga e instala una distribución para novatos!!:
https://nebul4ck.wordpress.com/2015/05/06/distribuciones-gnulinux-para-novatos/
– Échale un ojo a la próxima pestaña de «Libros recomendados» que voy a crear, te pasaré el link.
– Acude a la página de comandos de vez en cuando para saber con que herramientas cuentas:
https://nebul4ck.wordpress.com/lpic-1-400/
– Algunas entradas para montar tus propios servicios:
Compartir archivos en linux: https://nebul4ck.wordpress.com/2015/08/25/como-compartir-archivos-en-gnulinux/
Administrar cuentas de usuarios: https://nebul4ck.wordpress.com/2015/08/25/como-compartir-archivos-en-gnulinux/
Comprimir y empaquetar archivos: https://nebul4ck.wordpress.com/2015/05/17/comprimir-archivos-en-linux/
Aprende a manejar Vi (un gran editor de texto) https://nebul4ck.wordpress.com/2015/05/11/uso-del-editor-vi/
– Algo sobre shell script: https://nebul4ck.wordpress.com/2015/03/20/4backup-programa-para-crear-copias-de-seguridad-full-diferenciales-e-incrementales/
– Libros recomendados: https://nebul4ck.wordpress.com/libros-gnulinux-recomendados/
Y ya sabes en el apartado de LPIC-1 Encontrarás mucha mas información!!
Me gustaMe gusta
¡ Hola nuevamente !
Únicamente te escribo para AGRADECERTE los consejos que me has dado como también la bibliografía y/o recursos adicionales.
Muy bien, ¡manos a la obra! :)
Me gustaLe gusta a 1 persona