Încerc să configurez Jenkins într-un cluster Digital Ocean Kubernetes. Folosesc un controler de intrare NGINX deoarece vreau să îmi accesez serverul dintr-un subdomeniu (jenkins.example.com). Totul funcționează bine până acum, am interfața mea de utilizare pe respectivul domeniu securizat cu un certificat personalizat. Am început să întâmpin probleme când încercam să-mi conectez agenții (sau sclavii pe care i-am citit în altă parte?) la server.
Ceea ce am incercat
Am încercat să configurez un echilibrator de încărcare, dar nu am reușit să-l fac să funcționeze, deoarece folosesc Digital Ocean și majoritatea documentelor pe care le-am găsit au fost pentru GKE / EKS și altele, care au propriul lor LB intern. Am încercat și să cartografiez o rută /agenți
pe numele portului serviciului apoi pe alt serviciu cu tip „ClusterIP”, fără succes (nu a fost găsit de la Jenkins).
Configurația mea actuală
jenkins-deployment.yaml
apiVersion: apps/v1
fel: Desfăşurare
metadate:
nume: jenkins-dep
etichete:
aplicație: jenkins
specificație:
replici: 1
selector:
matchLabels:
aplicație: jenkins
șablon:
metadate:
etichete:
aplicație: jenkins
specificație:
containere:
- nume: jenkins
imagine: jenkins/jenkins:lts-jdk11
imagePullPolicy: IfNotPresent
porturi:
- containerPort: 8080
- containerPort: 50000
jenkins-service.yaml
apiVersion: v1
fel: Serviciu
metadate:
nume: jenkins-svc
etichete:
aplicație: jenkins
specificație:
tip: NodePort
selector:
aplicație: jenkins
porturi:
- nume: ui
protocol: TCP
port: 8080
targetPort: 8080
nodePort: 32500
- nume: agenti
protocol: TCP
port: 50000
targetPort: 50000
nodePort: 32501
jenkins-ingress.yaml
apiVersion: networking.k8s.io/v1
fel: Intrare
metadate:
nume: jenkins-ingress
specificație:
tls:
- gazde:
- jenkins.example.com
secretName: tls-secret
reguli:
- gazdă: jenkins.example.com
http:
trasee:
- cale: /
pathType: Prefix
backend:
serviciu:
nume: jenkins-svc
port:
nume: ui
#- cale: /agents
# pathType: Prefix
# backend:
# serviciu:
# nume: jenkins-svc
# port:
# nume: agenți
Concluzia este: cum fac disponibil portul Jenkins 50000 pentru ca agenții să se conecteze pe serverul meu? Sau cum aș putea schimba setările Jenkins pentru a găzdui o astfel de configurație?