Infrastructure namespace pattern¶
The Infrastructure namespace pattern is an organizational practice in Kubernetes administration where operational tools and platform services are isolated within a dedicated namespace, commonly named infra or infrastructure.^[400-devops-06-kubernetes-k8s-learning-linux-04-jenkins-readme.md]
Implementation¶
This pattern is implemented by defining a specific namespace in the cluster configuration to serve as the exclusive home for continuous integration and deployment (CI/CD) tools.^[400-devops-06-kubernetes-k8s-learning-linux-04-jenkins-readme.md]
Example: Jenkins Deployment¶
In a typical DevOps setup, this pattern is applied when deploying Jenkins. Instead of placing the automation server in the default namespace, a dedicated namespace is created explicitly to host the Jenkins resources^[400-devops-06-kubernetes-k8s-learning-linux-04-jenkins-readme.md].
[kubectl](<./kubectl.md>) apply -f 01-jenkins.yaml
# namespace/infra created
# deployment.apps/jenkins created
# service/jenkins created
This approach ensures that infrastructure components, such as the Jenkins deployment, service, and ingress, are logically grouped and segregated from application workloads^[400-devops-06-kubernetes-k8s-learning-linux-04-jenkins-readme.md].
Related Concepts¶
- Kubernetes
- [[Namespace isolation]]
- DevOps
Sources¶
^[400-devops-06-kubernetes-k8s-learning-linux-04-jenkins-readme.md]