39 lines
923 B
Markdown
39 lines
923 B
Markdown
# Jenkins Kubernetes Integration
|
|
|
|
## Kubernetes Setup
|
|
|
|
Create *jenkins* user:
|
|
|
|
```sh
|
|
kubeadm kubeconfig user \
|
|
--client-name jenkins \
|
|
--config kubeadm-user.yaml \
|
|
--org jenkins \
|
|
> jenkins.kubeconfig
|
|
```
|
|
|
|
Configure Jenkins resources:
|
|
|
|
```sh
|
|
kubectl apply -f jenkins.yaml
|
|
```
|
|
|
|
|
|
## Jenkins Setup
|
|
|
|
Install [Kubernetes plugin][0].
|
|
|
|
Set *TCP port for inbound agents* setting (*Manage Jenkins* → *Configure Global
|
|
Security*) to *Fixed* and enter a number. Be sure to open this port with
|
|
*firewalld* on the Jenkins server.
|
|
|
|
Configure Kubernetes (*Manage Jenkins* → *Manage Nodes and Clouds* → *Configure
|
|
Clouds*:
|
|
|
|
* *Kubernetes URL*: https://kubernetes.pyrocufflink.blue:6443
|
|
* *Kubernetes server certificate key*: Contents of `/etc/kubernetes/pki/ca.crt`
|
|
* *Kubernetes Namespace*: jenkins
|
|
* *Credentials*: Certificate and private key from `jenkins.kubeconfig`
|
|
|
|
[0]: https://plugins.jenkins.io/kubernetes/
|