-1- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
1)Rundeck 
1.1 Configuración de ambiente de trabajo 
Lo primero es...
-2- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
#service rundeckd restart 
9. Abrir Navegador(Chrome o Firefox) 
1...
-3- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
osVersion: 2.6.32-431.5.1.el6.x86_64 
description: Apache server n...
-4- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
Pwd: rundeck 
11. Logearse con el usuario rundeck: 
#su - rundeck ...
-5- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
Usuario:”usuario” 
Contraseña:"P4ssw0rd" 
7. Usuario debería tener...
-6- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
1.3 Aprendiendo a crear Jobs 
Creando nuestros primero Jobs Tareas...
-7- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
8. Selecccionar Script –Execute an inline script 
9. En el editor ...
-8- 
A u t o r : J o e l R i c h a r d M o y a L u p e 
1.4 Integración con Jenkins 
Invocando Rundeck desde Jenkins Tarea...
Próxima SlideShare
Cargando en…5
×

Tz2014 workshop rundeck

856 visualizaciones

Publicado el

Steps to laboratory

Publicado en: Software
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
856
En SlideShare
0
De insertados
0
Número de insertados
160
Acciones
Compartido
0
Descargas
9
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Tz2014 workshop rundeck

  1. 1. -1- A u t o r : J o e l R i c h a r d M o y a L u p e 1)Rundeck 1.1 Configuración de ambiente de trabajo Lo primero es configurar nuestros servidores. Tareas Pasos Detallados 1. Verificar acceso al servidor Apache 1. Abrir una consola de Putty 2. Conectarse con el usuario administrador a la máquina de pruebas Comando: ssh root@172.20.200.68 Contraseña: P4ssw0rd 3. Verificar configuración de red #ifconfig IP: 172.20.200.68 GW: 172.20.200.1 DNS: 172.20.0.21 Proxy: 172.20.240.5:8080 2. Verificar acceso al servidor Rundeck 1. Abrir otra consola de Putty 2. Conectarse con el usuario administrador a la maquina del Rundeck Comando: ssh root@172.20.200.XX Contraseña: P4ssw0rd 3. Verificar configuración de red #ifconfig IP: 172.20.200.XX GW: 172.20.200.1 DNS: 172.20.0.21 Proxy: 172.20.240.5:8080 3. Verificación de los servicios de Rundeck 1. En la consola de Putty conectada a la máquina de Rundeck (172.20.200.XX) verificar si el servicio de Rundeck está corriendo #service rundeckd status 2. Abrir el archivo de configuración rundeck-config.properties #sudo nano /etc/rundeck/rundeck-config.properties 3. Cambiar el valor de la variable grails.serverURL valor por la IP que le corresponda grails.serverURL=http://172.20.200.XX:4440 4. Guardar los cambios 5. Abrir el archivo de configuración framework.properties #sudo nano /etc/rundeck/framework.properties 6. Cambiar el valor de la variable framework.server.url valor por la IP que le corresponda framework.server.url = http://172.20.200.XX:4440 7. Guardar los cambios 8. Reiniciar el servicio
  2. 2. -2- A u t o r : J o e l R i c h a r d M o y a L u p e #service rundeckd restart 9. Abrir Navegador(Chrome o Firefox) 10. Abrir un Tab con el siguiente url: http://172.20.200.XX:4440/ 11. Ingresar con el usuario administrador Usuario: admin Contraseña: admin 4. Verificación de los servicios de Jenkins 1. En la consola de Putty conectada a la máquina de Rundeck (172.20.200.XX) verificar si el servicio de Jenkins está corriendo # service jenkins status 2. Abrir un Tab con el siguiente url: http://172.20.200.XX:8080/ 3. Ingresar con el usuario administrador Usuario: admin Contraseña: P4ssw0rd 1.2 Configurando proyectos Creando y configurando nuestro proyecto. Tareas Pasos Detallados 1. Crear un nuevo proyecto 1. Click en el boton “New Project” 2. Escribir el nombre del proyecto (Evita e uso de espacios o caracteres especiales) 3. En el panel Resource Model hacer click en “Edit” 4. Cambiar el formato del archivo de configuración de nodos. Change Format: “resourceyaml” 5. Actualizar el nombre del archivo “resources” File path: /var/Rundeck/project/${project}/etc/resources.yml 6. Elegir la opción “Generate” 7. Dejar los otros valores por defecto 8. Click en “Save” 9. Click en “Create” 2. Agregar Nodos 1. Ir a la consola de Putty y conectarse como administrador a la máquina de Rundeck 2. Editar el archivo de configuración #sudo nano /var/rundeck/project/${project}/etc/resources.yml 3. Aumentar las siguientes lineas Apache: tags: '' osFamily: unix username: rundeck osArch: amd64
  3. 3. -3- A u t o r : J o e l R i c h a r d M o y a L u p e osVersion: 2.6.32-431.5.1.el6.x86_64 description: Apache server node nodename: 172.20.200.68 hostname: 172.20.200.68 osName: Linux Ubuntu 4. Guardar los cambios en el archivo 5. Volver a rundeck Ir a al menu “Nodes” 6. Revisar si el nodo fue agregado con la información que se puso en el archivo de configuración en el anterior paso. 7. Seleccionar el nodo Apache agregado y correr un comando ”Node Action>Run a command on 1 Node” 8. En el campo de texto Command poner algún comando Shell por ejemplo: echo “Hola Mundo” 9. Click en el botón Run on 1 node 3. Configurar acceso remoto y permisos al usuario de Rundeck Nota: Pasos adicionales, necesarios debido a la clonación de las maquinas 1. Ir a la consola de Putty y conectarse como administrador a la máquina de Rundeck 2. Editar el archivo passwd #sudo nano /etc/passwd 3. Verificar que el usuario rundeck tenga la línea /bin/bash #rundeck:x:106:113:Rundeck user account:/var/lib/rundeck:/bin/bash 4. Modificar el owner a la carpeta rundeck #cd /var/lib/ #sudo chown rundeck:rundeck rundeck 5. Loguerarse con el usuario rundeck #su -rundeck 6. Generar llaves con el siguiente comando #ssh-keygen 7. Dejar todos los valores por defecto y continuar 8. Llaves debería haber sido creadas en el folder /var/lib/rundeck/.ssh 9. Salir de las sesión #exit Nota: No se realizara estos pasos debido a que se esta compartiendo el servidor con otros usuarios y ya se los realizaron previamente. 10. En el nodo que fue agregado crear un nuevo usuario llamado Rundeck y configurar su contraseña #sudo useradd -m -G users,root -s /bin/bash rundeck #sudo passwd rundeck
  4. 4. -4- A u t o r : J o e l R i c h a r d M o y a L u p e Pwd: rundeck 11. Logearse con el usuario rundeck: #su - rundeck 12. Crear el directorio ssh y configurar sus permisos #mkdir .ssh && chmod 700 .ssh 13. Crear el archivo authorized_keys dentro el directorio .ssh #vim authorized_keys #chmod 600 .ssh/authorized_keys 14. Ir a la consola de Putty y conectarse como administrador a la máquina de Rundeck 15. Ir al directorio de las llaves (publicas/privadas) cd /var/lib/rundeck/.ssh 16. Exportar la llave publica en el servidor de pruebas, utilizando el siguiente comando: cat id_rsa.pub | ssh rundeck@172.20.200.68 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys" 17. La contraseña es P4ssw0rd 18. Ir a la máquina de pruebas 172.20.200.68 y verificar si la llave fue agregada correctamente #sudo nano /home/rundeck/.ssh/authorized_keys 19. Volver a la consola de rundeck 20. Seleccionar el nodo Apache agregado y correr un ”Node Action>Run a command on 1 Node” 21. En el campo de texto Command poner algún comando Shell por ejemplo: echo “Hola Mundo” 22. Click en el botón “Run on 1 node” 23. El job debería correr satisfactoriamente, revisar la información relacionada con la ejecución y los logs. 4. Crear Usuarios 1. Ir a la consola de Putty y conectarse como administrador a la máquina de Rundeck 2. Ir al siguiente directorio /etc/rundeck/ #cd /etc/rundeck/ 3. Editar el archivo de configuración realm.properties #sudo nano realm.properties 4. Agregar usuario de la siguiente manera: usuario: MD5:8efe310f9ab3efeae8d410a8e0166eb2,user Nota: Puede generar la contraseña en MD5 en el siguiente sitio http://www.md5.cz/ 5. Guardar los cambios en el archivo 6. Ir a la página de Rundeck y Ingresar con el usuario creado
  5. 5. -5- A u t o r : J o e l R i c h a r d M o y a L u p e Usuario:”usuario” Contraseña:"P4ssw0rd" 7. Usuario debería tener permisos restringidos, debido a que el usuario pertenece solo al grupo de Users Nota: para modificar el nivel de permiso puede modificar el archivo admin.aclpolicy #nano /etc/rundeck/admin.aclpolicy
  6. 6. -6- A u t o r : J o e l R i c h a r d M o y a L u p e 1.3 Aprendiendo a crear Jobs Creando nuestros primero Jobs Tareas Pasos Detallados 1. Crear primer job 1. Abrir la pagina de Rundeck en el url: http://172.20.200.XX:4440/ 2. Ingresar con el usuario administrador 3. Seleccionar el proyecto creado anteriormente. 4. Ir al menú jobs y hacer click en “Create a new job” 5. Llenar los siguientes campos Job Name: PrimerJob Description: Hola mundo 6. Click en “Add a step” a. Selecccionar Script –Execute an inline script b. En el editor mostrado escribir el siguiente comando #echo “Hola mundo” 7. Guardar el step creado 8. En la opcion Nodes seleccionar “Dispatch to Nodes” 9. En Filter hacer click in Show all nodes 10. Seleccionar el servidor Apache 11. Dejar los otros valores por defecto y hacer click en Create para guardar los cambios en el Job 12. Hacer click en “Run Job Now” 2. Crear un job con parámetros 1. Abrir la pagina de Rundeck en el url: http://172.20.200.XX:4440/ 2. Ingresar con el usuario administrador 3. Seleccionar el proyecto creado anteriormente. 4. Ir al menú jobs y hacer click en “Create a new job” 5. Llenar los siguientes campos Job Name: OtherJob Description: Job con parametros 6. Click en “Add an option” a. Option Name: nombre b. Description: Nombre completo c. Default value: Joel_moya d. Dejar otros valores por defecto e. Note en la opcion ”Usage” que el nombre de la variable es mostrado ${option.nombre} f. Click en save para guardar los cambio en los parametros 7. Click en “Add a step”
  7. 7. -7- A u t o r : J o e l R i c h a r d M o y a L u p e 8. Selecccionar Script –Execute an inline script 9. En el editor mostrado escribir el siguiente comando #mkdir /home/rundeck/@option.nombre@ 10. Guardar el step creado 11. En la Opcion Nodes seleccionar Dispatch to Nodes 12. En Filter hacer click in Show all nodes 13. Seleccionar el servidor Apache 14. Dejar los otros valores por defecto y hacer click en Create para guardar los cambios en el Job 15. Hacer click en Run Job Now 3. Crear un job con manejo de errores 1. Seleccionar el job creado en el anterior paso 2. Click en el submenú “Definition” 3. Click en “Duplicate to a New Job” 4. Cambiar el “Job Name“ 5. Ir al step creado en la seccion “Workflow“ 6. Selecccionar el script script 7. Hacer click en el botón “+error handler” 8. Un nuevo editor será mostrado escribir los siguientes comandos # cd /home/rundeck #rm -rf @option.nombre@ #echo el directorio El Job ha fallado porque el folder existía, el job correrá nuevamente 9. Guardar el step creado 10. En el campo “Retry” poner un valor 1 11. Dejar los otros valores por defecto y hacer click en Create para guardar los cambios en el Job 12. Hacer click en Run Job Now 4. Ejecutar comandos en línea 1. Ir al menú “Commands“ 2. En el campo de texto “Command” poner un comando Shell #whoami 3. En la “Opcion Nodes” seleccionar “Dispatch to Nodes” 4. En “Filter” hacer click in Show all nodes 5. Seleccionar el servidor Apache 6. Click en el botón “Run on 1 node” 7. El nombre del usuario debería ser mostrado en la ejecución del server. 8. Click en “Save as a Job” 9. Guardar el nuevo job con diferente nombre 10. Click en “Create”
  8. 8. -8- A u t o r : J o e l R i c h a r d M o y a L u p e 1.4 Integración con Jenkins Invocando Rundeck desde Jenkins Tareas Pasos Detallados 1. Integración con Jenkins – Configurando el pluging 1. Abrir un Tab con el siguiente url: http://172.20.200.XX:8080 2. Ingresar con el usuario administrador Usuario: admin Contraseña: P4ssw0rd 3. Ir al menú de configuración “Jenkins>Manage Jenkins>Configure System” 4. Buscar la configuración del pluging de Jenkins y configurarlo de la siguiente manera: URL: http://172.20.200.XX:4440 Login: admin Password:admin 5. Buscar la configuración del plugin the Jenkins y configurarlo de la siguiente manera: 2. Creando un Job para publicar una aplicación en Apache Rundeck 1. Crear un nuevo Job, hacer click en “Create a new job” 2. Llenar los siguientes campos Job Name: JenkinsTriggerJob 3. Click en “Add a step” c. Selecccionar Script –Execute an inline script d. En el editor mostrado escribir el siguiente comando #ssh rundeck@172.20.200.68 mkdir /var/www/html/joelmoya #scp -rp /var/lib/jenkins/jobs/Deploy/workspace/ rundeck@172.20.200.68:/var/www/html/joelmoya 4. Guardar el step creado 5. En la opcion Nodes seleccionar “Execute locally” 6. Dejar los otros valores por defecto y hacer click en Create para guardar los cambios en el Job Jenkins 1. En Jenkins crear un nuevo job “New Item>Freestyle project” 2. Seleccione Git en “Source Code management” 3. Repository URL:https://github.com/TiendaNube/sample-php-app.git 4. En la sección “Post-build Action” seleccione Rundeck 5. Poner el ID de un de los jobs de Rundeck 6. 99234298-cfdd-496f-b992-b165fcd34803 7. Guardar los cambios 8. Note que el Icono de Rundeck aparece en el menú de la izquierda y también se puede ver detalles del Job 9. Correr el Job en Jenkins

×