当前位置: 代码迷 >> 综合 >> Jenkins Kubernetes静态agent节点的构建
  详细解决方案

Jenkins Kubernetes静态agent节点的构建

热度:95   发布时间:2023-09-30 12:02:48.0

K8s部署静态节点


在命令行中启动节点java -jar agent.jar -jnlpUrl http://139.198.166.235:8080/computer/build%2D02/jenkins-agent.jnlp -secret 942d7e769a43f65388751ee954af20e90fa0c5f8bdb19e0584db4cc61adab8ba -workDir "/var/jenkins"
Run from agent command line, with the secret stored in a file:echo 942d7e769a43f65388751ee954af20e90fa0c5f8bdb19e0584db4cc61adab8ba > secret-file
java -jar agent.jar -jnlpUrl http://139.198.166.235:8080/computer/build%2D02/jenkins-agent.jnlp -secret @secret-file -workDir "/var/jenkins"

 我们不需要对agent创建service去访问它,这就是一个执行引擎,执行完了挂掉 。

[root@master cicd]# cat agent.yaml 
kind: Deployment
apiVersion: apps/v1
metadata:labels:k8s-app: jenkinsagentname: jenkinsagentnamespace: devops
spec:replicas: 1revisionHistoryLimit: 10selector:matchLabels:k8s-app: jenkinsagenttemplate:metadata:labels:k8s-app: jenkinsagentnamespace: devopsname: jenkinsagentspec:containers:- name: jenkinsagentimage: jenkins/inbound-agentsecurityContext:privileged: trueimagePullPolicy: IfNotPresentresources:limits:cpu: 1000mmemory: 2Girequests:cpu: 500mmemory: 512Mienv:- name: JENKINS_URLvalue: http://139.198.166.235:8080- name: JENKINS_SECRETvalue: 942d7e769a43f65388751ee954af20e90fa0c5f8bdb19e0584db4cc61adab8ba- name: JENKINS_AGENT_NAMEvalue: build-02- name: JENKINS_AGENT_WORKDIRvalue: /home/jenkins/workspace
[root@master cicd]# kubectl apply -f agent.yaml 
deployment.apps/jenkinsagent created[root@master cicd]# kubectl get pod -n devops
NAME                          READY   STATUS    RESTARTS   AGE
jenkins-797ccbdbc5-84jdl      1/1     Running   0          13m
jenkinsagent-586d9594-8pn9w   1/1     Running   0          8s
[root@master cicd]# kubectl logs -f jenkinsagent-586d9594-8pn9w -n devops
Oct 28, 2021 3:22:40 AM hudson.remoting.jnlp.Main createEngine
INFO: Setting up agent: build-02
Oct 28, 2021 3:22:40 AM hudson.remoting.jnlp.Main$CuiListener <init>
INFO: Jenkins agent is running in headless mode.
Oct 28, 2021 3:22:41 AM hudson.remoting.Engine startEngine
INFO: Using Remoting version: 4.11
Oct 28, 2021 3:22:41 AM org.jenkinsci.remoting.engine.WorkDirManager initializeWorkDir
INFO: Using /home/jenkins/workspace/remoting as a remoting work directory
Oct 28, 2021 3:22:41 AM org.jenkinsci.remoting.engine.WorkDirManager setupLogging
INFO: Both error and output logs will be printed to /home/jenkins/workspace/remoting
Oct 28, 2021 3:22:41 AM hudson.remoting.jnlp.Main$CuiListener status
INFO: Locating server among [http://139.198.166.235:8080/]
Oct 28, 2021 3:22:41 AM org.jenkinsci.remoting.engine.JnlpAgentEndpointResolver resolve
INFO: Remoting server accepts the following protocols: [JNLP4-connect, Ping]
Oct 28, 2021 3:22:41 AM hudson.remoting.jnlp.Main$CuiListener status
INFO: Agent discovery successfulAgent address: 139.198.166.235Agent port:    50000Identity:      67:e8:d2:73:d1:cf:01:f6:6c:a4:cb:b3:0f:25:8c:3d
Oct 28, 2021 3:22:41 AM hudson.remoting.jnlp.Main$CuiListener status
INFO: Handshaking
Oct 28, 2021 3:22:41 AM hudson.remoting.jnlp.Main$CuiListener status
INFO: Connecting to 139.198.166.235:50000
Oct 28, 2021 3:22:41 AM hudson.remoting.jnlp.Main$CuiListener status
INFO: Trying protocol: JNLP4-connect
Oct 28, 2021 3:22:41 AM org.jenkinsci.remoting.protocol.impl.BIONetworkLayer$Reader run
INFO: Waiting for ProtocolStack to start.
Oct 28, 2021 3:22:42 AM hudson.remoting.jnlp.Main$CuiListener status
INFO: Remote identity confirmed: 67:e8:d2:73:d1:cf:01:f6:6c:a4:cb:b3:0f:25:8c:3d
Oct 28, 2021 3:22:42 AM hudson.remoting.jnlp.Main$CuiListener status
INFO: Connected

Jenkins Kubernetes静态agent节点的构建

同样的,这个agent pod里面是没有mvn这些构建工具的,可以使用卷的形式挂载进去。或者使用这个镜像作为基础镜像将工具打入到这个镜像里面更加方便。

  相关解决方案