User Tools

Site Tools


sre_nre

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
sre_nre [2024/06/02 03:43] – [Enhanced CI/CD Pipeline with Network Reliability] ososre_nre [2024/10/17 21:42] (current) – external edit 127.0.0.1
Line 15: Line 15:
   - Define SLOs (Service Level Objectives) for network and application performance.   - Define SLOs (Service Level Objectives) for network and application performance.
   - Implement network observability to monitor latency, packet loss, and throughput.   - Implement network observability to monitor latency, packet loss, and throughput.
- 
-**Learning Outcomes**: Gain experience in CI/CD tools, network monitoring, automation, and defining performance metrics. 
- 
-==== Enhanced CI/CD Pipeline with Network Reliability ==== 
- 
-=== Project: Comprehensive CI/CD Pipeline with Integrated Network Monitoring and Automation === 
-**Existing Projects to Expand**: Your current CI/CD pipeline setup and any network monitoring projects. 
- 
-**Goals**: 
-  * Develop a robust CI/CD pipeline using Jenkins or GitHub Actions. 
-  * Integrate network monitoring tools like Prometheus, Grafana, and Loki. 
-  * Automate network configuration and management using Ansible or SaltStack. 
-  * Define SLOs (Service Level Objectives) for network and application performance. 
-  * Implement network observability to monitor latency, packet loss, and throughput. 
  
 **Learning Outcomes**: Gain experience in CI/CD tools, network monitoring, automation, and defining performance metrics. **Learning Outcomes**: Gain experience in CI/CD tools, network monitoring, automation, and defining performance metrics.
Line 39: Line 25:
     - Asegúrate de tener `git` y `composer` instalados en tu máquina.     - Asegúrate de tener `git` y `composer` instalados en tu máquina.
     - Clona el repositorio forkeado de PicoCMS:     - Clona el repositorio forkeado de PicoCMS:
-      <code> +      <code>git clone https://github.com/<YOUR_USERNAME>/<YOUR_REPOSITORY> pico 
-      git clone https://github.com/<YOUR_USERNAME>/<YOUR_REPOSITORY> pico +      cd pico</code>
-      cd pico +
-      </code>+
     - Instala las dependencias:     - Instala las dependencias:
-      <code> +      <code>curl -sSL https://getcomposer.org/installer | php 
-      curl -sSL https://getcomposer.org/installer | php +      php composer.phar install</code>
-      php composer.phar install +
-      </code>+
  
   - Configura tu servidor web:   - Configura tu servidor web:
     - Accede a tu servidor web y navega al directorio de instalación:     - Accede a tu servidor web y navega al directorio de instalación:
-      <code> +      <code>cd /var/www/html</code>
-      cd /var/www/html +
-      </code>+
     - Clona tu repositorio en el servidor:     - Clona tu repositorio en el servidor:
-      <code> +      <code>git clone https://github.com/<YOUR_USERNAME>/<YOUR_REPOSITORY> pico
-      git clone https://github.com/<YOUR_USERNAME>/<YOUR_REPOSITORY> pico+
       cd pico       cd pico
-      php composer.phar install +      php composer.phar install</code>
-      </code>+
  
 == Step 2: Configuración de GitHub Actions para CI/CD == == Step 2: Configuración de GitHub Actions para CI/CD ==
Line 100: Line 78:
                 DEPLOY_KEY: ${{ secrets.DEPLOY_KEY }}                 DEPLOY_KEY: ${{ secrets.DEPLOY_KEY }}
               run: |               run: |
-                ssh -o StrictHostKeyChecking=no -i $DEPLOY_KEY user@your_server "cd /var/www/html/pico && git pull && php composer.phar update" +                ssh -o StrictHostKeyChecking=no -i $DEPLOY_KEY user@your_server "cd /var/www/html/pico && git pull && php composer.phar update"</code>
-      </code>+
  
 == Step 3: Configuración de Deploy Key == == Step 3: Configuración de Deploy Key ==
  
   - Genera una llave SSH para despliegue:   - Genera una llave SSH para despliegue:
-    - En tu máquina local, genera una nueva llave SSH sin passphrase: +    - En tu máquina local, genera una nueva llave SSH sin passphrase: <code>ssh-keygen -t rsa -b 4096 -C "deploy-key" -f deploy_key</code> 
-      <code> +    - Copia la llave pública al servidor: <code>ssh-copy-id -i deploy_key.pub user@your_server</code>
-      ssh-keygen -t rsa -b 4096 -C "deploy-key" -f deploy_key +
-      </code> +
-    - Copia la llave pública al servidor: +
-      <code> +
-      ssh-copy-id -i deploy_key.pub user@your_server +
-      </code> +
   - Configura la llave privada como secreto en GitHub:   - Configura la llave privada como secreto en GitHub:
     - Ve a la configuración de tu repositorio en GitHub.     - Ve a la configuración de tu repositorio en GitHub.
Line 121: Line 91:
 == Step 4: Pruebas y Ajustes == == Step 4: Pruebas y Ajustes ==
  
-  Realiza un commit y push para probar el workflow:+  Realiza un commit y push para probar el workflow:
     - Haz cambios en tu repositorio local y sube los cambios:     - Haz cambios en tu repositorio local y sube los cambios:
-      <code> +<code> 
-      git add . +git add . 
-      git commit -m "Setup CI/CD pipeline" +git commit -m "Setup CI/CD pipeline" 
-      git push origin main +git push origin main 
-      </code>+</code>
  
-  Monitorea la ejecución en GitHub Actions:+  Monitorea la ejecución en GitHub Actions:
     - Ve a la pestaña "Actions" en tu repositorio de GitHub y revisa el progreso del workflow.     - Ve a la pestaña "Actions" en tu repositorio de GitHub y revisa el progreso del workflow.
     - Asegúrate de que el pipeline se ejecute correctamente y despliegue los cambios al servidor.     - Asegúrate de que el pipeline se ejecute correctamente y despliegue los cambios al servidor.
Line 138: Line 108:
     - Instala y configura Prometheus y Grafana en tu servidor para monitorizar métricas.     - Instala y configura Prometheus y Grafana en tu servidor para monitorizar métricas.
     - Añade los exportadores necesarios para monitorizar tu aplicación web y red.     - Añade los exportadores necesarios para monitorizar tu aplicación web y red.
- 
   - Automatiza configuraciones de red con Ansible:   - Automatiza configuraciones de red con Ansible:
     - Crea playbooks de Ansible para automatizar tareas de configuración y despliegue de la red.     - Crea playbooks de Ansible para automatizar tareas de configuración y despliegue de la red.
sre_nre.1717299809.txt.gz · Last modified: 2024/10/17 21:42 (external edit)