-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #12 from vertigobr/develop
0.8.1
- Loading branch information
Showing
20 changed files
with
1,173 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -31,3 +31,4 @@ kubeconfig | |
node_modules/ | ||
.docusaurus/ | ||
build/ | ||
init-keys.json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
![](https://img.shields.io/badge/status-In%20development-yellow) | ||
![](https://img.shields.io/badge/license-Apache%202.0-blue) | ||
![Release Helm chart](https://github.com/vertigobr/vkpr/workflows/Release%20Helm%20chart/badge.svg) | ||
# VKPR - Vertigo Kubernetes Production Runtime | ||
|
||
O VKPR é inspirado no [projeto BKPR](https://github.com/bitnami/kube-prod-runtime) da Bitnami, mas é implementado puramente com Helm charts. | ||
|
||
[🇺🇸 🇬🇧 English](README.md) | [🇧🇷 🇵🇹 Português](README_pt.md) | ||
|
||
## Descrição | ||
|
||
O VKPR foi criado para simplificar a adoção de Kubernetes. Ele é composto por charts de terceiros, organizados de forma a suportar o uso de Kubernetes em produção com mínimo esforço. | ||
|
||
O VKPR está estruturado em pilhas (*stacks*) que agrupam componentes que suportam uma funcionalidade correlata. As *stacks* atuais são: | ||
|
||
- **[Ingress stack](#ingress-stack):** | ||
- NGINX Ingress Controller | ||
- ExternalDNS | ||
- **[Logging stack](#logging-stack):** | ||
- Loki | ||
- **[Monitoring stack](#monitoring-stack):** | ||
- Prometheus Operator | ||
- Grafana | ||
- Prometheus | ||
- Alertmanager | ||
- **[Security stack](#security-stack):** | ||
- cert-manager | ||
- Vault | ||
- Keycloak | ||
- **[Backup stack](#backup-stack):** | ||
- Velero | ||
|
||
## Instalação | ||
|
||
A instalação do VKPR usa o [helm](https://helm.sh/): | ||
|
||
```sh | ||
helm repo add vertigo https://charts.vertigo.com.br | ||
helm repo update | ||
helm upgrade -i -f values.yaml -n vkpr vkpr vertigo/vkpr | ||
``` | ||
|
||
Leia a [Documentação do VKPR](https://charts.vertigo.com.br/docs/) para estudar cenários específicos de instalação. | ||
|
||
## Stacks | ||
|
||
### Ingress stack | ||
|
||
O **Ingress stack** foca em produzir formas de conexão externa aos recursos dentro do cluster Kubernetes. | ||
|
||
- [NGINX Ingress Controller](https://charts.vertigo.com.br/docs/stacks#nginx-ingress-controller) é um Ingress Controller para Kubernetes que usa o NGINX como proxy reverso e balanceador de carga (*load balancer*). | ||
- [ExternalDNS](https://charts.vertigo.com.br/docs/stacks#externaldns) é um componente para Kubernetes que configura automaticamente serviços de DNS públicos para que serviços do cluster possam ser descobertos por nomes DNS comuns. | ||
|
||
### Logging stack | ||
|
||
O **Logging Stack** cuida da coleta de logs distribuídos para posterior pesquisa. | ||
|
||
- [Loki](https://charts.vertigo.com.br/docs/stacks#loki) é um sistema de coleta e agregação de logs inspirado no Prometheus que é escalável, disponível e multi-tenant. | ||
|
||
### Monitoring stack | ||
|
||
O **Monitoring Stack** é dedicado à observação e coleta de métricas tanto para o cluster como para serviços e aplicações individualmente. | ||
|
||
- [Prometheus Operator](https://charts.vertigo.com.br/docs/stacks#prometheus-operator) permite instalar e gerenciar nativamente o Prometheus e seus componentes no Kubernetes. O Prometheus Operator contém os seguintes mídulos: | ||
- [Grafana](https://grafana.com/oss/grafana/) permite pesquisar e visualizar métricas e logs. | ||
- [Prometheus](https://grafana.com/oss/prometheus/) é um sistema de monitoração com um rico modelo de dados multidimensional, uma linguagem de pesquisa concisa e rica (PromQL), uma base de séries temporais eficiente, além de mais de 150 integrações com sistemas de terceiros. | ||
- [Alertmanager](https://prometheus.io/docs/alerting/latest/alertmanager/) lida com alertas enviados por outras aplicações (entre elas o próprio Prometheus). | ||
|
||
### Security stack | ||
|
||
O **Security Stack** é focado em ferramentas de segurança que cuidam de questões onipresentes para sistemas (como gestão de identidade e segredos). | ||
|
||
- [cert-manager](https://charts.vertigo.com.br/docs/stacks#cert-manager) é um componente para Kubernetes que automatiza a gestão e emissão de certificados TLS (HTTPS) por diversos emissores externos. | ||
- [Vault](https://charts.vertigo.com.br/docs/stacks#vault) é uma solução que protege, armazena e restringe acesso a tokens, senhas, certificados, chaves de APIs e outros tantos elementos restritos típicos de sistemas modernos. | ||
- [Keycloak](https://charts.vertigo.com.br/docs/stacks#keycloak) é uma solução de código aberto para Gestão de Identidade e Acesso útil para aplicações e serviços modernos. | ||
|
||
### Backup stack | ||
|
||
O **Backup Stack** foca em ferramentas de backup e restore que auxiliam na migração e/ou restauração de um cluster e seus volumes. | ||
|
||
- [Velero](https://charts.vertigo.com.br/docs/stacks#velero) é uma ferramenta de código aberto para backup e restore de clusters Kubernetes, sendo útil para *disaster recovery* e/ou migração de clusters e seus recursos. | ||
|
||
## Versões dos charts | ||
|
||
<!-- @import "VERSIONS.md" --> | ||
Veja [Versões dos Charts e Subchart do VKPR](VERSIONS.md). | ||
|
||
## Requisitos | ||
|
||
- Kubernetes >= 1.15 | ||
- Helm >= 3 | ||
|
||
## Contribuindo | ||
|
||
Pull requests e Merge Requests são bem-vindos! Por favor, primeiro abra uma issue e discuta conosco sobre a mudança proposta e tenha certeza que a testou previamente. | ||
|
||
## Suporte | ||
|
||
O suporte à comunidade se dará através de issues abertas. | ||
Para suporte corporativo entre em contato com [email protected]. | ||
|
||
## Licença | ||
|
||
VKPR é licenciado via [Apache License Version 2.0](LICENSE). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
|
||
| Charts | VKPR 0.8.1 | | ||
| ---------------------------------------------------------------------------------------------- | ---------- | | ||
| [cert-manager](https://charts.vertigo.com.br/docs/stacks#cert-manager) | `1.0.3` | | ||
| [ExternalDNS](https://charts.vertigo.com.br/docs/stacks#externaldns) | `3.4.9` | | ||
| [Loki](https://charts.vertigo.com.br/docs/stacks#loki) | `2.0.0` | | ||
| [Keycloak](https://charts.vertigo.com.br/docs/stacks#keycloak) | `9.5.0` | | ||
| [NGINX Ingress Controller](https://charts.vertigo.com.br/docs/stacks#nginx-ingress-controller) | `3.7.1` | | ||
| [Kube Prometheus Stack](https://charts.vertigo.com.br/docs/stacks#prometheus-operator) | `10.3.1` | | ||
| [Vault](https://charts.vertigo.com.br/docs/stacks#vault) | `0.8.0` | | ||
| [Velero](https://charts.vertigo.com.br/docs/stacks#velero) | `2.13.3` | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
version: '2' | ||
services: | ||
oidc-example: | ||
image: vertigo/vkpr-oidc-demo:latest | ||
network_mode: "host" | ||
ports: | ||
- 5443:5443 | ||
environment: | ||
- AUTHORIZATION_ENDPOINT=http://keycloak.localdomain:8080/auth/realms/vkpr/protocol/openid-connect/auth | ||
- TOKEN_ENDPOINT=http://keycloak.localdomain:8080/auth/realms/vkpr/protocol/openid-connect/token | ||
- LOGOUT_ENDPOINT=http://keycloak.localdomain:8080/auth/realms/vkpr/protocol/openid-connect/logout | ||
- JWKS_URI=http://keycloak.localdomain:8080/auth/realms/vkpr/protocol/openid-connect/certs | ||
- REGISTRATION_ENDPOINT=http://keycloak.localdomain:8080/auth/realms/vkpr/clients-registrations/openid-connect | ||
- DISABLE_HTTPS=true | ||
- REVOCATION_ENDPOINT= | ||
- ISSUER=http://keycloak.localdomain:8080/auth/realms/vkpr | ||
- CLIENT_ID=oidc-demo | ||
- CLIENT_SECRET=60e50da1-b492-4995-9574-763fa285456c | ||
- REDIRECT_URI=http://localhost:5443/callback | ||
- BASE_URL=http://localhost:5443 | ||
- VERIFY_SSL_SERVER=false | ||
- DEBUG=true | ||
jwt-example: | ||
image: vertigo/vkpr-jwt-demo:latest | ||
network_mode: "host" | ||
ports: | ||
- 8000:8000 | ||
environment: | ||
- KEYCLOAK_AUTH_URL=http://vkpr-keycloak-http.default.svc/auth | ||
- KEYCLOAK_REALM=springboot | ||
- KEYCLOAK_CLIENT_ID=springboot-client | ||
- KEYCLOAK_CLIENT_SECRET=e28e961b-2f86-4877-a696-b76cd231105 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
path "/secret/*" { | ||
capabilities = ["read", "list"] | ||
} |
Oops, something went wrong.