Kubernetes Jenkins service and Ingress configuration¶
This configuration enables external access to a Jenkins deployment running on a Kubernetes cluster via an Ingress resource and a ClusterIP Service.^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]
Service Configuration¶
The jenkins-svc Service is configured to route traffic to the Jenkins pods based on the app: jenkins label selector.^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]
It exposes two ports to handle different types of network traffic^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]:
- HTTP (Port 8080): This port targets port
8080on the container and is used for the main Jenkins web interface^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]. - Agent (Port 50000): This port targets port
50000and is dedicated for communication between the Jenkins master and build agents^[400-devops-06-kubernetes-k8s-jenkins-k8s.md].
Ingress Configuration¶
External access is configured using an Ingress resource named jenkins-ing that utilizes the NGINX Ingress Controller (ingressClassName: nginx).^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]
The Ingress rule maps the hostname yudady.gq to the Jenkins service^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]:
* Host: yudady.gq^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]
* Path: / (Prefix match)^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]
* Backend: The traffic is forwarded to the jenkins-svc service on port 8080^[400-devops-06-kubernetes-k8s-jenkins-k8s.md].
Related Concepts¶
Sources¶
^[400-devops-06-kubernetes-k8s-jenkins-k8s.md]