Skip to content

pdrhenrick/projeto-hdi-linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Bootcamp Prático - Analista Linux Júnior (HDI) Este repositório documenta o estudo prático e os scripts que criei em preparação para o processo seletivo de Analista Linux Jr. (HDI/Tech for It).

O objetivo foi simular, em uma VM Linux (Ubuntu), os 3 projetos da "Ficha de Skills".

Módulo 1 e 2: Servidor Web (Apache) e Health Check Objetivo: Instalar um servidor web e monitorá-lo.

Ações:

1. Instalei o Apache (sudo apt install apache2).

2. Gerenciei o serviço com systemctl status/start/stop.

3. Chequei os logs em tempo real com tail -f /var/log/apache2/access.log.

4.  Criei o script health_check.sh (veja o arquivo no repo) para checar disco (df -h), memória (free -m) e o status do serviço.

5. Dei permissão com chmod 755.

Módulo 3: Backup Automatizado com Shell Script + AWS S3 Objetivo: Criar um backup automático da pasta do site e enviá-lo para a nuvem (AWS S3).

Ações:

1. AWS: Criei um Bucket S3 e um usuário IAM com permissão AmazonS3FullAccess.

2. VM Linux: Instalei o aws-cli (sudo snap install aws-cli --classic).

3. VM Linux: Configurei as chaves (que vazaram e foram recriadas) com aws configure.

4. Script: Criei o backup_s3.sh (veja o arquivo no repo) que usa rsync para o backup local e aws s3 sync para enviar à nuvem.

5. Automação: Agendei o script no crontab -e para rodar todo dia às 3h da manhã (0 3 * * * ...).

Módulo 4: Kubernetes (Minikube) Objetivo: Provar o conhecimento conceitual ("<1 Ano (Estudo)") na prática.

Ações:

1. Instalei o kubectl (via snap), o docker.io (via apt) e o minikube (via binário).

2. Iniciei o cluster local: minikube start --driver=docker.

3. Criei um Deployment Nginx: kubectl create deployment meu-site-hdi --image=nginx.

4. Chequei o Pod (kubectl get pods) e vi o status "Running".

5. Criei um Service para expor o app: kubectl expose deployment meu-site-hdi --type=NodePort --port=80.

6. Acesse o app na minha máquina local via minikube service meu-site-hdi --url.

Módulo 5: Automação com Ansible (Conceitual)

Objetivo: Entender o próximo passo da automação (além do Shell Script). Conceito: A vaga pede conhecimento em Ansible AAP. Meu conhecimento em Ansible é conceitual: entendo que ele usa Playbooks (em formato YAML) para garantir o "estado desejado" de múltiplos servidores ao mesmo tempo. Minha Ponte: Meu ponto forte é a lógica de automação. Eu já faço isso há anos com Shell Script (Projeto 2) e PowerShell. Para mim, aprender a sintaxe (YAML) do Ansible é a parte mais fácil, pois a mentalidade de automação eu já tenho.

Módulo 6: Ferramentas de CI/CD (Conceitual)

Objetivo: Entender como a infraestrutura dá suporte ao desenvolvimento. Conceito: A vaga pede experiência em ferramentas de CI/CD (como Jenkins, GitLab CI). Meu conhecimento aqui é conceitual. Minha Ponte:** Eu entendo o que é o pipeline:

1.  **CI (Continuous Integration):** A prática de automatizar o "build" (construção) e o "teste" do código toda vez que um desenvolvedor faz um *commit*. O objetivo é achar *bugs* o mais rápido possível.

2.  **CD (Continuous Deployment):** O próximo passo. Depois que o código passa nos testes do CI, o pipeline automaticamente "deploya" (envia) a nova versão para o ambiente (ex: para o **Kubernetes**).

Meu Papel: Entendo que meu papel na infraestrutura é dar suporte a essa esteira, garantindo que o Kubernetes esteja saudável para receber os deploys e que os scripts de automação (como Ansible) funcionem corretamente.

About

Projeto prático para vaga de Analista Linux Jr, cobrindo Fundamentos de Linux, Shell Script, AWS S3 e Kubernetes (Minikube).

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages