raijin-server 0.2.6__tar.gz → 0.2.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {raijin_server-0.2.6/src/raijin_server.egg-info → raijin_server-0.2.7}/PKG-INFO +96 -79
- {raijin_server-0.2.6 → raijin_server-0.2.7}/README.md +95 -78
- {raijin_server-0.2.6 → raijin_server-0.2.7}/setup.cfg +1 -1
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/__init__.py +1 -1
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/cli.py +147 -2
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/calico.py +68 -3
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/cert_manager.py +33 -7
- raijin_server-0.2.7/src/raijin_server/modules/full_install.py +436 -0
- raijin_server-0.2.7/src/raijin_server/modules/prometheus.py +115 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/scripts/install.sh +3 -2
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/scripts/log_size_metric.sh +17 -13
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/scripts/pre-deploy-check.sh +2 -1
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/utils.py +37 -1
- {raijin_server-0.2.6 → raijin_server-0.2.7/src/raijin_server.egg-info}/PKG-INFO +96 -79
- raijin_server-0.2.6/src/raijin_server/modules/full_install.py +0 -209
- raijin_server-0.2.6/src/raijin_server/modules/prometheus.py +0 -30
- {raijin_server-0.2.6 → raijin_server-0.2.7}/LICENSE +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/pyproject.toml +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/config.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/healthchecks.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/__init__.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/apokolips_demo.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/bootstrap.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/essentials.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/firewall.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/grafana.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/hardening.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/harness.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/istio.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/kafka.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/kong.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/kubernetes.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/loki.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/minio.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/network.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/observability_dashboards.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/observability_ingress.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/sanitize.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/secrets.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/ssh_hardening.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/traefik.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/velero.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/modules/vpn.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/scripts/__init__.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/scripts/checklist.sh +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server/validators.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server.egg-info/SOURCES.txt +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server.egg-info/dependency_links.txt +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server.egg-info/entry_points.txt +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server.egg-info/requires.txt +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/src/raijin_server.egg-info/top_level.txt +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/tests/test_full_install_sequence.py +0 -0
- {raijin_server-0.2.6 → raijin_server-0.2.7}/tests/test_registry.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: raijin-server
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.7
|
|
4
4
|
Summary: CLI para automacao de setup e hardening de servidores Ubuntu Server.
|
|
5
5
|
Home-page: https://example.com/raijin-server
|
|
6
6
|
Author: Equipe Raijin
|
|
@@ -61,52 +61,29 @@ CLI em Python (Typer) para automatizar setup e hardening de servidores Ubuntu Se
|
|
|
61
61
|
|
|
62
62
|
## Requisitos
|
|
63
63
|
|
|
64
|
-
|
|
65
|
-
- Ubuntu Server 20.04+ (testado em 24.04)
|
|
66
|
-
- Permissões root/sudo
|
|
67
|
-
- Conectividade com internet
|
|
68
|
-
- Mínimo 4GB RAM, 20GB disco livre
|
|
69
|
-
- Ferramentas: `curl`, `apt-get`, `systemctl`
|
|
64
|
+
## Instalação (sempre em venv midgard)
|
|
70
65
|
|
|
71
|
-
|
|
72
|
-
- `helm` (>=3.8 para OCI)
|
|
73
|
-
- `kubectl`, `kubeadm`
|
|
74
|
-
- `velero`, `istioctl`
|
|
75
|
-
|
|
76
|
-
## Instalacao
|
|
77
|
-
|
|
78
|
-
Sem venv (global):
|
|
66
|
+
Use apenas o venv `~/.venvs/midgard` para padronizar ambiente e logs.
|
|
79
67
|
|
|
80
68
|
```bash
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
```bash
|
|
87
|
-
python -m venv .venv
|
|
88
|
-
source .venv/bin/activate
|
|
89
|
-
python -m pip install -e .
|
|
90
|
-
```
|
|
69
|
+
# 1) Criar/reativar venv midgard
|
|
70
|
+
python3 -m venv ~/.venvs/midgard
|
|
71
|
+
source ~/.venvs/midgard/bin/activate
|
|
72
|
+
pip install -U pip setuptools
|
|
91
73
|
|
|
92
|
-
|
|
74
|
+
# 2) Instalar a partir do source (dev)
|
|
75
|
+
pip install -U raijin-server
|
|
93
76
|
|
|
94
|
-
|
|
77
|
+
# 3) Uso com sudo preservando o venv
|
|
78
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server --version
|
|
79
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server validate
|
|
80
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install
|
|
95
81
|
|
|
96
|
-
|
|
97
|
-
# 1. Sair do venv atual (se estiver ativo)
|
|
82
|
+
# 4) Quando terminar
|
|
98
83
|
deactivate
|
|
84
|
+
```
|
|
99
85
|
|
|
100
|
-
|
|
101
|
-
rm -rf ~/.venvs/raijin
|
|
102
|
-
|
|
103
|
-
# 3. Criar venv novo
|
|
104
|
-
python3 -m venv ~/.venvs/raijin
|
|
105
|
-
source ~/.venvs/raijin/bin/activate
|
|
106
|
-
pip install -U pip setuptools
|
|
107
|
-
|
|
108
|
-
# 4. Instalar a versão mais recente
|
|
109
|
-
pip install -U raijin-server
|
|
86
|
+
> Dica: se precisar reinstalar, remova o venv (`rm -rf ~/.venvs/midgard`), recrie e repita o passo 2. O `-E` no sudo mantém o venv ativo para o Python.
|
|
110
87
|
|
|
111
88
|
# 5. Rodar usando root preservando o venv
|
|
112
89
|
sudo -E ~/.venvs/raijin/bin/raijin-server --version
|
|
@@ -124,30 +101,70 @@ deactivate
|
|
|
124
101
|
### Validar Sistema
|
|
125
102
|
```bash
|
|
126
103
|
# Verifica se o sistema atende pré-requisitos
|
|
127
|
-
sudo raijin-server validate
|
|
104
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server validate
|
|
128
105
|
```
|
|
129
106
|
|
|
130
107
|
### Menu Interativo
|
|
131
108
|
```bash
|
|
132
|
-
# Menu visual com
|
|
133
|
-
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
- `src/raijin_server/modules/`: Automações por tópico (hardening, network, essentials, firewall, kubernetes, calico, istio, traefik, kong, minio, prometheus, grafana, loki, harness, velero, kafka).
|
|
137
|
-
- `src/raijin_server/scripts/`: Shells empacotados usados pelos módulos e scripts auxiliares.
|
|
138
|
-
- `ARCHITECTURE.md`: Visão do desenho técnico.
|
|
139
|
-
- `AUDIT.md`: Relatório completo de auditoria e melhorias.
|
|
140
|
-
- `SECURITY.md`: Como reportar vulnerabilidades
|
|
109
|
+
# Menu visual com atalho para módulos
|
|
110
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server menu
|
|
111
|
+
```
|
|
112
|
+
|
|
141
113
|
### Execução Direta de Módulos
|
|
142
114
|
```bash
|
|
143
115
|
# Executar módulo específico
|
|
144
|
-
sudo raijin-server kubernetes
|
|
116
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kubernetes
|
|
145
117
|
|
|
146
118
|
# Dry-run (simula sem aplicar)
|
|
147
|
-
sudo raijin-server --dry-run kubernetes
|
|
119
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server --dry-run kubernetes
|
|
148
120
|
|
|
149
121
|
# Pular validações (não recomendado)
|
|
150
|
-
sudo raijin-server --skip-validation kubernetes
|
|
122
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server --skip-validation kubernetes
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
### Instalação Completa com seleção de passos
|
|
126
|
+
```bash
|
|
127
|
+
# Rodar tudo (padrão)
|
|
128
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install
|
|
129
|
+
|
|
130
|
+
# Escolher passos antes de rodar
|
|
131
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --select-steps
|
|
132
|
+
|
|
133
|
+
# Definir lista fixa (ordem original preservada)
|
|
134
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --steps "kubernetes,calico,cert_manager,traefik"
|
|
135
|
+
|
|
136
|
+
# Pedir confirmação a cada módulo
|
|
137
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --confirm-each
|
|
138
|
+
|
|
139
|
+
# Modo debug: snapshots + diagnose pós-módulo
|
|
140
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --debug-mode
|
|
141
|
+
|
|
142
|
+
# Apenas snapshots após cada módulo (pós-kubernetes)
|
|
143
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --snapshots
|
|
144
|
+
|
|
145
|
+
# Apenas diagnose pós-módulo (ex.: cert-manager)
|
|
146
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --post-diagnose
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Depuração e Logs (pós-Kubernetes)
|
|
150
|
+
```bash
|
|
151
|
+
# Ver todos os logs do CLI com pager (less)
|
|
152
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug logs --lines 400
|
|
153
|
+
|
|
154
|
+
# Seguir logs em tempo real
|
|
155
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug logs --follow
|
|
156
|
+
|
|
157
|
+
# Snapshot do cluster: nodes, pods e eventos (últimos 200)
|
|
158
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug kube --events 200
|
|
159
|
+
|
|
160
|
+
# Focar em um namespace (ex.: cert-manager)
|
|
161
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug kube --namespace cert-manager --events 150
|
|
162
|
+
|
|
163
|
+
# Consultar logs do kubelet via journalctl
|
|
164
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug journal --service kubelet --lines 300
|
|
165
|
+
|
|
166
|
+
# Consultar outro serviço systemd (ex.: containerd)
|
|
167
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug journal --service containerd --lines 200
|
|
151
168
|
```
|
|
152
169
|
|
|
153
170
|
### Automação via Arquivo de Configuração
|
|
@@ -161,41 +178,41 @@ sudo raijin-server --skip-validation kubernetes
|
|
|
161
178
|
|
|
162
179
|
```bash
|
|
163
180
|
# 1. Validar sistema
|
|
164
|
-
sudo raijin-server validate
|
|
181
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server validate
|
|
165
182
|
|
|
166
183
|
# 2. Base do sistema
|
|
167
|
-
sudo raijin-server essentials
|
|
168
|
-
sudo raijin-server hardening
|
|
169
|
-
sudo raijin-server network # OPCIONAL: pule se IP já configurado via provedor ISP
|
|
170
|
-
sudo raijin-server firewall
|
|
184
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server essentials
|
|
185
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server hardening
|
|
186
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server network # OPCIONAL: pule se IP já configurado via provedor ISP
|
|
187
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server firewall
|
|
171
188
|
|
|
172
189
|
# 3. Kubernetes
|
|
173
|
-
sudo raijin-server kubernetes
|
|
174
|
-
sudo raijin-server calico
|
|
175
|
-
sudo raijin-server secrets
|
|
176
|
-
sudo raijin-server cert-manager
|
|
190
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kubernetes
|
|
191
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server calico
|
|
192
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server secrets
|
|
193
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server cert-manager
|
|
177
194
|
|
|
178
195
|
# 4. Ingress (escolha um)
|
|
179
|
-
sudo raijin-server traefik
|
|
196
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server traefik
|
|
180
197
|
# OU
|
|
181
|
-
sudo raijin-server kong
|
|
198
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kong
|
|
182
199
|
|
|
183
200
|
# 5. Observabilidade
|
|
184
|
-
sudo raijin-server prometheus
|
|
185
|
-
sudo raijin-server grafana
|
|
186
|
-
sudo raijin-server observability-ingress
|
|
187
|
-
sudo raijin-server observability-dashboards
|
|
188
|
-
sudo raijin-server loki
|
|
201
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server prometheus
|
|
202
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server grafana
|
|
203
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server observability-ingress
|
|
204
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server observability-dashboards
|
|
205
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server loki
|
|
189
206
|
|
|
190
207
|
# 6. Storage e Mensageria (opcional)
|
|
191
|
-
sudo raijin-server minio
|
|
192
|
-
sudo raijin-server kafka
|
|
208
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server minio
|
|
209
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kafka
|
|
193
210
|
|
|
194
211
|
# 7. Backup
|
|
195
|
-
sudo raijin-server velero
|
|
212
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server velero
|
|
196
213
|
|
|
197
214
|
# 8. Service Mesh (opcional)
|
|
198
|
-
sudo raijin-server istio
|
|
215
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server istio
|
|
199
216
|
```
|
|
200
217
|
|
|
201
218
|
### IP Estático (pular se já configurado)
|
|
@@ -208,7 +225,7 @@ O módulo `network` é **opcional** quando:
|
|
|
208
225
|
Para pular automaticamente em automações:
|
|
209
226
|
```bash
|
|
210
227
|
export RAIJIN_SKIP_NETWORK=1
|
|
211
|
-
sudo raijin-server full-install
|
|
228
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install
|
|
212
229
|
```
|
|
213
230
|
|
|
214
231
|
O módulo detecta automaticamente se já existe um Netplan com IP estático e pergunta
|
|
@@ -222,12 +239,12 @@ se deseja pular. Se executar manualmente, basta responder "não" quando pergunta
|
|
|
222
239
|
### Comandos Úteis
|
|
223
240
|
```bash
|
|
224
241
|
# Versão (flag ou comando)
|
|
225
|
-
raijin-server --version
|
|
226
|
-
raijin-server -V
|
|
227
|
-
raijin-server version
|
|
242
|
+
~/.venvs/midgard/bin/raijin-server --version
|
|
243
|
+
~/.venvs/midgard/bin/raijin-server -V
|
|
244
|
+
~/.venvs/midgard/bin/raijin-server version
|
|
228
245
|
|
|
229
246
|
# Monitorar logs
|
|
230
|
-
|
|
247
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug logs --follow
|
|
231
248
|
|
|
232
249
|
# Rotacao de logs (default: 20MB, 5 backups)
|
|
233
250
|
# Ajuste via env:
|
|
@@ -317,7 +334,7 @@ O helper garante o caminho absoluto correto independentemente de onde o pacote f
|
|
|
317
334
|
O módulo [src/raijin_server/modules/apokolips_demo.py](src/raijin_server/modules/apokolips_demo.py) cria um namespace dedicado, ConfigMap com HTML, Deployment NGINX, Service e Ingress Traefik com uma landing page "Apokolips" para validar o tráfego externo.
|
|
318
335
|
|
|
319
336
|
```bash
|
|
320
|
-
sudo raijin-server apokolips-demo
|
|
337
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server apokolips-demo
|
|
321
338
|
```
|
|
322
339
|
|
|
323
340
|
Personalização rápida:
|
|
@@ -364,7 +381,7 @@ Isso permite manter o isolamento padrão enquanto libera acesso seletivo para in
|
|
|
364
381
|
Execute o modulo `secrets` para instalar os controladores:
|
|
365
382
|
|
|
366
383
|
```bash
|
|
367
|
-
sudo raijin-server secrets
|
|
384
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server secrets
|
|
368
385
|
```
|
|
369
386
|
|
|
370
387
|
Passos realizados:
|
|
@@ -28,52 +28,29 @@ CLI em Python (Typer) para automatizar setup e hardening de servidores Ubuntu Se
|
|
|
28
28
|
|
|
29
29
|
## Requisitos
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
- Ubuntu Server 20.04+ (testado em 24.04)
|
|
33
|
-
- Permissões root/sudo
|
|
34
|
-
- Conectividade com internet
|
|
35
|
-
- Mínimo 4GB RAM, 20GB disco livre
|
|
36
|
-
- Ferramentas: `curl`, `apt-get`, `systemctl`
|
|
31
|
+
## Instalação (sempre em venv midgard)
|
|
37
32
|
|
|
38
|
-
|
|
39
|
-
- `helm` (>=3.8 para OCI)
|
|
40
|
-
- `kubectl`, `kubeadm`
|
|
41
|
-
- `velero`, `istioctl`
|
|
42
|
-
|
|
43
|
-
## Instalacao
|
|
44
|
-
|
|
45
|
-
Sem venv (global):
|
|
33
|
+
Use apenas o venv `~/.venvs/midgard` para padronizar ambiente e logs.
|
|
46
34
|
|
|
47
35
|
```bash
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
python -m venv .venv
|
|
55
|
-
source .venv/bin/activate
|
|
56
|
-
python -m pip install -e .
|
|
57
|
-
```
|
|
36
|
+
# 1) Criar/reativar venv midgard
|
|
37
|
+
python3 -m venv ~/.venvs/midgard
|
|
38
|
+
source ~/.venvs/midgard/bin/activate
|
|
39
|
+
pip install -U pip setuptools
|
|
58
40
|
|
|
59
|
-
|
|
41
|
+
# 2) Instalar a partir do source (dev)
|
|
42
|
+
pip install -U raijin-server
|
|
60
43
|
|
|
61
|
-
|
|
44
|
+
# 3) Uso com sudo preservando o venv
|
|
45
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server --version
|
|
46
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server validate
|
|
47
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install
|
|
62
48
|
|
|
63
|
-
|
|
64
|
-
# 1. Sair do venv atual (se estiver ativo)
|
|
49
|
+
# 4) Quando terminar
|
|
65
50
|
deactivate
|
|
51
|
+
```
|
|
66
52
|
|
|
67
|
-
|
|
68
|
-
rm -rf ~/.venvs/raijin
|
|
69
|
-
|
|
70
|
-
# 3. Criar venv novo
|
|
71
|
-
python3 -m venv ~/.venvs/raijin
|
|
72
|
-
source ~/.venvs/raijin/bin/activate
|
|
73
|
-
pip install -U pip setuptools
|
|
74
|
-
|
|
75
|
-
# 4. Instalar a versão mais recente
|
|
76
|
-
pip install -U raijin-server
|
|
53
|
+
> Dica: se precisar reinstalar, remova o venv (`rm -rf ~/.venvs/midgard`), recrie e repita o passo 2. O `-E` no sudo mantém o venv ativo para o Python.
|
|
77
54
|
|
|
78
55
|
# 5. Rodar usando root preservando o venv
|
|
79
56
|
sudo -E ~/.venvs/raijin/bin/raijin-server --version
|
|
@@ -91,30 +68,70 @@ deactivate
|
|
|
91
68
|
### Validar Sistema
|
|
92
69
|
```bash
|
|
93
70
|
# Verifica se o sistema atende pré-requisitos
|
|
94
|
-
sudo raijin-server validate
|
|
71
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server validate
|
|
95
72
|
```
|
|
96
73
|
|
|
97
74
|
### Menu Interativo
|
|
98
75
|
```bash
|
|
99
|
-
# Menu visual com
|
|
100
|
-
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
- `src/raijin_server/modules/`: Automações por tópico (hardening, network, essentials, firewall, kubernetes, calico, istio, traefik, kong, minio, prometheus, grafana, loki, harness, velero, kafka).
|
|
104
|
-
- `src/raijin_server/scripts/`: Shells empacotados usados pelos módulos e scripts auxiliares.
|
|
105
|
-
- `ARCHITECTURE.md`: Visão do desenho técnico.
|
|
106
|
-
- `AUDIT.md`: Relatório completo de auditoria e melhorias.
|
|
107
|
-
- `SECURITY.md`: Como reportar vulnerabilidades
|
|
76
|
+
# Menu visual com atalho para módulos
|
|
77
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server menu
|
|
78
|
+
```
|
|
79
|
+
|
|
108
80
|
### Execução Direta de Módulos
|
|
109
81
|
```bash
|
|
110
82
|
# Executar módulo específico
|
|
111
|
-
sudo raijin-server kubernetes
|
|
83
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kubernetes
|
|
112
84
|
|
|
113
85
|
# Dry-run (simula sem aplicar)
|
|
114
|
-
sudo raijin-server --dry-run kubernetes
|
|
86
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server --dry-run kubernetes
|
|
115
87
|
|
|
116
88
|
# Pular validações (não recomendado)
|
|
117
|
-
sudo raijin-server --skip-validation kubernetes
|
|
89
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server --skip-validation kubernetes
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Instalação Completa com seleção de passos
|
|
93
|
+
```bash
|
|
94
|
+
# Rodar tudo (padrão)
|
|
95
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install
|
|
96
|
+
|
|
97
|
+
# Escolher passos antes de rodar
|
|
98
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --select-steps
|
|
99
|
+
|
|
100
|
+
# Definir lista fixa (ordem original preservada)
|
|
101
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --steps "kubernetes,calico,cert_manager,traefik"
|
|
102
|
+
|
|
103
|
+
# Pedir confirmação a cada módulo
|
|
104
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --confirm-each
|
|
105
|
+
|
|
106
|
+
# Modo debug: snapshots + diagnose pós-módulo
|
|
107
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --debug-mode
|
|
108
|
+
|
|
109
|
+
# Apenas snapshots após cada módulo (pós-kubernetes)
|
|
110
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --snapshots
|
|
111
|
+
|
|
112
|
+
# Apenas diagnose pós-módulo (ex.: cert-manager)
|
|
113
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install --post-diagnose
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Depuração e Logs (pós-Kubernetes)
|
|
117
|
+
```bash
|
|
118
|
+
# Ver todos os logs do CLI com pager (less)
|
|
119
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug logs --lines 400
|
|
120
|
+
|
|
121
|
+
# Seguir logs em tempo real
|
|
122
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug logs --follow
|
|
123
|
+
|
|
124
|
+
# Snapshot do cluster: nodes, pods e eventos (últimos 200)
|
|
125
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug kube --events 200
|
|
126
|
+
|
|
127
|
+
# Focar em um namespace (ex.: cert-manager)
|
|
128
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug kube --namespace cert-manager --events 150
|
|
129
|
+
|
|
130
|
+
# Consultar logs do kubelet via journalctl
|
|
131
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug journal --service kubelet --lines 300
|
|
132
|
+
|
|
133
|
+
# Consultar outro serviço systemd (ex.: containerd)
|
|
134
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug journal --service containerd --lines 200
|
|
118
135
|
```
|
|
119
136
|
|
|
120
137
|
### Automação via Arquivo de Configuração
|
|
@@ -128,41 +145,41 @@ sudo raijin-server --skip-validation kubernetes
|
|
|
128
145
|
|
|
129
146
|
```bash
|
|
130
147
|
# 1. Validar sistema
|
|
131
|
-
sudo raijin-server validate
|
|
148
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server validate
|
|
132
149
|
|
|
133
150
|
# 2. Base do sistema
|
|
134
|
-
sudo raijin-server essentials
|
|
135
|
-
sudo raijin-server hardening
|
|
136
|
-
sudo raijin-server network # OPCIONAL: pule se IP já configurado via provedor ISP
|
|
137
|
-
sudo raijin-server firewall
|
|
151
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server essentials
|
|
152
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server hardening
|
|
153
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server network # OPCIONAL: pule se IP já configurado via provedor ISP
|
|
154
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server firewall
|
|
138
155
|
|
|
139
156
|
# 3. Kubernetes
|
|
140
|
-
sudo raijin-server kubernetes
|
|
141
|
-
sudo raijin-server calico
|
|
142
|
-
sudo raijin-server secrets
|
|
143
|
-
sudo raijin-server cert-manager
|
|
157
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kubernetes
|
|
158
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server calico
|
|
159
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server secrets
|
|
160
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server cert-manager
|
|
144
161
|
|
|
145
162
|
# 4. Ingress (escolha um)
|
|
146
|
-
sudo raijin-server traefik
|
|
163
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server traefik
|
|
147
164
|
# OU
|
|
148
|
-
sudo raijin-server kong
|
|
165
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kong
|
|
149
166
|
|
|
150
167
|
# 5. Observabilidade
|
|
151
|
-
sudo raijin-server prometheus
|
|
152
|
-
sudo raijin-server grafana
|
|
153
|
-
sudo raijin-server observability-ingress
|
|
154
|
-
sudo raijin-server observability-dashboards
|
|
155
|
-
sudo raijin-server loki
|
|
168
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server prometheus
|
|
169
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server grafana
|
|
170
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server observability-ingress
|
|
171
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server observability-dashboards
|
|
172
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server loki
|
|
156
173
|
|
|
157
174
|
# 6. Storage e Mensageria (opcional)
|
|
158
|
-
sudo raijin-server minio
|
|
159
|
-
sudo raijin-server kafka
|
|
175
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server minio
|
|
176
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server kafka
|
|
160
177
|
|
|
161
178
|
# 7. Backup
|
|
162
|
-
sudo raijin-server velero
|
|
179
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server velero
|
|
163
180
|
|
|
164
181
|
# 8. Service Mesh (opcional)
|
|
165
|
-
sudo raijin-server istio
|
|
182
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server istio
|
|
166
183
|
```
|
|
167
184
|
|
|
168
185
|
### IP Estático (pular se já configurado)
|
|
@@ -175,7 +192,7 @@ O módulo `network` é **opcional** quando:
|
|
|
175
192
|
Para pular automaticamente em automações:
|
|
176
193
|
```bash
|
|
177
194
|
export RAIJIN_SKIP_NETWORK=1
|
|
178
|
-
sudo raijin-server full-install
|
|
195
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server full-install
|
|
179
196
|
```
|
|
180
197
|
|
|
181
198
|
O módulo detecta automaticamente se já existe um Netplan com IP estático e pergunta
|
|
@@ -189,12 +206,12 @@ se deseja pular. Se executar manualmente, basta responder "não" quando pergunta
|
|
|
189
206
|
### Comandos Úteis
|
|
190
207
|
```bash
|
|
191
208
|
# Versão (flag ou comando)
|
|
192
|
-
raijin-server --version
|
|
193
|
-
raijin-server -V
|
|
194
|
-
raijin-server version
|
|
209
|
+
~/.venvs/midgard/bin/raijin-server --version
|
|
210
|
+
~/.venvs/midgard/bin/raijin-server -V
|
|
211
|
+
~/.venvs/midgard/bin/raijin-server version
|
|
195
212
|
|
|
196
213
|
# Monitorar logs
|
|
197
|
-
|
|
214
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server debug logs --follow
|
|
198
215
|
|
|
199
216
|
# Rotacao de logs (default: 20MB, 5 backups)
|
|
200
217
|
# Ajuste via env:
|
|
@@ -284,7 +301,7 @@ O helper garante o caminho absoluto correto independentemente de onde o pacote f
|
|
|
284
301
|
O módulo [src/raijin_server/modules/apokolips_demo.py](src/raijin_server/modules/apokolips_demo.py) cria um namespace dedicado, ConfigMap com HTML, Deployment NGINX, Service e Ingress Traefik com uma landing page "Apokolips" para validar o tráfego externo.
|
|
285
302
|
|
|
286
303
|
```bash
|
|
287
|
-
sudo raijin-server apokolips-demo
|
|
304
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server apokolips-demo
|
|
288
305
|
```
|
|
289
306
|
|
|
290
307
|
Personalização rápida:
|
|
@@ -331,7 +348,7 @@ Isso permite manter o isolamento padrão enquanto libera acesso seletivo para in
|
|
|
331
348
|
Execute o modulo `secrets` para instalar os controladores:
|
|
332
349
|
|
|
333
350
|
```bash
|
|
334
|
-
sudo raijin-server secrets
|
|
351
|
+
sudo -E ~/.venvs/midgard/bin/raijin-server secrets
|
|
335
352
|
```
|
|
336
353
|
|
|
337
354
|
Passos realizados:
|