Si lo desea puede leer la documentación en Español.
Project to take the first steps in the GitOps work philosophy using Flux CD.
The project shows how to configure a Kubernetes cluster based on GitOps. The organization of folders and services deployed correspond to a hypothetical cluster used for development or staging environments. This cluster configuration is not ready to be used in production.
To get more out of the repository it is recommended to have basic knowledge about the GitOps work philosophy. You can expand your knowledge on this topic through this link from the Weaveworks website.
The systems used during the exercise were: Git, Terraform, Docker, Flux CD y Kubernetes. The platform used to create the Kubernetes cluster is Digital Ocean, but Minikube can also be used.
Flow to manage the infrastructure
Flow to manage the Kubernetes
├── infra
│ └── cluster.tf
├── namespaces
│ ├── admin
│ │ ├── namespace.yaml
│ │ └── sealed-secrets
│ │ └── sealed-secrets.yaml
│ ├── client-abc
│ │ ├── deployment.yaml
│ │ └── namespace.yaml
│ ├── client-def
│ │ ├── deployment.yaml
│ │ └── namespace.yaml
│ ├── flux-system
│ │ └── namespace.yaml
│ └── kube-system
│ ├── kube-state-metrics
│ │ └── kube-state-metrics.yaml
│ └── metrics-server
│ └── metrics-server.yaml
└── scripts
└── install.sh
Folder | Description |
---|---|
infra | Terraforms files to create the infrastructure in Digital Ocean. (Optional) |
namespaces | Structure of namespaces used in the cluster. Within each namespace are the applications that will be deployed. |
scripts | General utility folder. |
The following links will guide you in the creation of a Kubernetes cluster using the GitOps work philosophy.