Jenkins部署(部署成功)
title:2、Jenkins部署(部署成功) id:devops8-jenins-install slug:/devops8-jenins-install
01-Jenkins部署
dockerpulljenkins/inbound-agent:latest## LoadDockerImagekindloaddocker-imagejenkins/jenkins:2.415-jdk11--namedevopsclusterkindloaddocker-imagejenkins/inbound-agent:latest--namedevopscluster
以上2个镜像拉取速度很慢哦:(耐心等待一会儿哦)
Step2 部署Jenkins
- 已经编写好了一套K8s 清单文件和一个声明式的Argo APP。【具体参考代码库】,我们直接拉取代码执行就好。
bash
[root@devops8 jenkins]#pwd/root/myiac-gitee/devops/jenkins[root@devops8 jenkins]#lsagent-manifestsjenkins-agent-argoapp.yamljenkins-argoapp.yamlmanifestsrun.sh[root@devops8 jenkins]# sh -x run.sh +kindloaddocker-imagejenkins/jenkins:2.415-jdk11--namedevopsclusterImage:"jenkins/jenkins:2.415-jdk11"withID"sha256:27aa51b3ca68eb5974570b2f685c948b4bfa60b41c5af4807a05411f11333457"foundtobealreadypresentonallnodes.+kindloaddocker-imagejenkins/inbound-agent:latest--namedevopsclusterImage:"jenkins/inbound-agent:latest"withID"sha256:bf21eca245df406d71cbc13bbfdbf51c69b491041e51aff052e9f3cce9fab10f"foundtobealreadypresentonallnodes.+mkdir-p/data/storage/kubernetes/jenkins+chmod-R777/data/storage/kubernetes/jenkins+kubectl-nargocdapply-fjenkins-argoapp.yamlapplication.argoproj.io/jenkinscreated+mkdir-p/data/storage/kubernetes/jenkins-build-cache+chmod-R777/data/storage/kubernetes/jenkins-build-cache+mkdir-p/data/storage/kubernetes/jenkins-workspace+chmod-R777/data/storage/kubernetes/jenkins-workspace[root@devops8 jenkins]#
- 添加Hosts
bash
192.168.1.200jenkins.idevops.site
- 这里,我们看下本次涉及的相关配置文件
Step3 Jenkins初始化配置
- 从日志中获取解锁秘钥:在ArgoCD选中jenkins pod 然后进入LOGS菜单。
- web访问jenkins.idevops.site
【注意: 插件安装界面,选择自定义,然后什么插件都不选择哈 避免网络问题】
Step4 创建Agent
更新完代码,记得推送,再拉取代码。
bash
[root@devops8 myiac-gitee]#pwd/root/myiac-gitee[root@devops8 myiac-gitee]#git add -A[root@devops8 myiac-gitee]#git commit -m"commit"[main 3c393c7] commit5fileschanged,137insertions(+),2deletions(-)createmode100644k8s/.terraform.lock.hclcreatemode120000k8s/.terraform/providers/registry.terraform.io/hashicorp/null/3.1.1/linux_amd64createmode120000k8s/.terraform/providers/registry.terraform.io/tehcyx/kind/0.0.12/linux_amd64createmode100644k8s/terraform.tfstate[root@devops8 myiac-gitee]#git pushwarning:push.defaultisunset;itsimplicitvalueischanginginGit2.0from'matching'to'simple'.Tosquelchthismessageandmaintainthecurrentbehaviorafterthedefaultchanges,use:gitconfig--globalpush.defaultmatchingTosquelchthismessageandadoptthenewbehaviornow,use:gitconfig--globalpush.defaultsimpleSee'git help config'andsearchfor'push.default'forfurtherinformation.(the'simple'modewasintroducedinGit1.7.11.Usethesimilarmode'current'insteadof'simple'ifyousometimesuseolderversionsofGit)Countingobjects:26,done.Deltacompressionusingupto4threads.Compressingobjects:100%(12/12),done.Writingobjects:100%(20/20),9.46 KiB |0bytes/s,done.Total20(delta 2),reused 0 (delta0)remote:PoweredbyGITEE.COM[GNK-6.4]Togit@gitee.com:onlyonexl/myiac-gitee.git57d543c..3c393c7main->main[root@devops8 myiac-gitee]#[root@devops8 myiac-gitee]#git pullAlreadyup-to-date.[root@devops8 myiac-gitee]#git status# On branch mainnothingtocommit,workingdirectoryclean
Step5 部署Agent
bash
#注意:这部分在之前的代码里已经创建过了哦,这里不需要再创建了。## Jenkins build cache#mkdir -p /data/storage/kubernetes/jenkins-build-cache#chmod -R 777 /data/storage/kubernetes/jenkins-build-cache## Jenkins agent build workspace#mkdir -p /data/storage/kubernetes/jenkins-workspace#chmod -R 777 /data/storage/kubernetes/jenkins-workspace[root@devops8 jenkins]#pwd/root/myiac-gitee/devops/jenkins[root@devops8 jenkins]#lsagent-manifestsjenkins-agent-argoapp.yamljenkins-argoapp.yamlmanifestsrun.sh[root@devops8 jenkins]#kubectl -n argocd apply -f jenkins-agent-argoapp.yaml application.argoproj.io/jenkins-agentcreated
- 报错解决
遇到Agent日志出现下面错误,需要安装Instance identity插件解决。【记得插件安装完成后重启Jenkins】
bash
SEVERE:http:5java.io.IOException:http:4atorg.jenkinsci.remoting.engine.JnlpAgentEndpointResolver.resolve(JnlpAgentEndpointResolver.java:284)3athudson.remoting.Engine.innerRun(Engine.java:724)2athudson.remoting.Engine.run(Engine.java:540)