一、配置Agent

通常情况下,Jenkins Slave 会通过 Jenkins Master 节点的 50000 端口与之通信,所以需要开 启 Agent 的 50000 端口。

1.依次点击【Manage Jenkins】-【 Configure Global Security】

配置Agent-1

2.Agents这里选择【Fixed】,填写50000端口后,点击【Save】

配置Agent-2

3.选择k8s-node01作为Slave节点

$ kubectl label node k8s-node01 build=true

如果k8s-node01没有安装docker,则执行以下命令安装docker

$ yum install -y yum-utils device-mapper-persistent-data lvm2
$ yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
$ sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d'  /etc/yum.repos.d/CentOS-Base.repo
$ yum install docker-ce-19.03.* docker-ce-cli-19.03.* -y
$ systemctl daemon-reload && systemctl enable --now docker

如果k8s-node01的镜像仓库未配置证书,需要配置insecure-registry

$ vim /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "insecure-registries": ["192.168.1.33"]
}

二、Jenkins 配置 Kubernetes 单集群

1.依次点击【Manage Jenkins】-【Manage Nodes and Clouds】

Jenkins 配置 Kubernetes 多集群-1

2.点击【Configure Clouds】

Jenkins 配置 Kubernetes 多集群-2

3.点击 【Add a new cloud】,选择 kubernetes

Jenkins 配置 Kubernetes 多集群-3

4.在名称字段,输入集群的名称,一般按照可识别的名称即可,这里定义为study-kubernetes。之后点击 Kubernetes Cloud details,在凭据处选择之前添加 Kubernetes 证书,选择后点击【连接测试】,最后在凭据下方即可看到能否正常连接的结果,即k8s集群的安装版本。最后,点击【Save】

Jenkins 配置 Kubernetes 多集群-4

5.添加完 Kubernetes 后,在 Jenkinsfile 的 Agent 中,就可以选择该集群 作为创建 Slave 的集群。如果想要添加多个集群,重复上述的步骤即可。首先添加 Kubernetes 凭证,然后添加 Cloud 即可。