2020年11月1日星期日

kubernetes 环境 jenkins CI/CD 配置文档

jenkins CI/CD 配置文档

1.全局工具配置

1.1 maven配置

默认 settings 提供

​ 文件路径:/usr/local/bin/apache-maven-3.3.9/conf/settings.

默认全局 settings 提供

​ 文件路径 :/usr/local/bin/apache-maven-3.3.9/conf/settings.

1.2 jdk

别名:jdk8

JAVA_HOME :/usr/local/openjdk-8

1.3 git

Name :Default

Path to Git executable :/usr/bin/git

1.4 maven

name :maven

MAVEN_HOME : /usr/local/bin/apache-maven-3.3.9

2.下载kubernetes 插件

2.1 kubernetes plugin 安装

首先进入插件管理页面【系统管理】->【管理插件】->【可选插件】,搜索kubernetes plugin,勾选要安装的插件,然后点击【直接安装】。

2.2 配置kubernetes

单击【系统管理】 - >【系统设置】,找到【云】,然后点击【新增一个云】

WX20200102-151850.pngfile

name:kubernetes

禁用https证书检查:false

kubernetes URL:https://kubernetes.default.svc.cluster.local

Kubernetes 服务证书 key : 为k8s集群生成的ca证书

cat /etc/kubernetes/pki/ca.crt

JenkinsURL (服务名.命名空间.svc.cluster.local:端口)

连接超时:5

读取超时:15

凭据:根据下面命令获取

##1.直接使用二进制源码包安装cfsslwget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64chmod +x cfssl_linux-amd64mv cfssl_linux-amd64 /usr/local/bin/cfsslwget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64chmod +x cfssljson_linux-amd64mv cfssljson_linux-amd64 /usr/local/bin/cfssljsonwget https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64chmod +x cfssl-certinfo_linux-amd64mv cfssl-certinfo_linux-amd64 /usr/local/bin/cfssl-certinfoexport PATH=/usr/local/bin:$PATH#准备证书签名请求mkdir /usr/local/k8s/cfsslcd /usr/local/k8s/cfsslvi admin-csr.json{ "CN": "admin", "hosts": [], "key": { "algo": "rsa", "size": 2048 }, "names": [ {  "C": "CN",  "ST": "HangZhou",  "L": "XS",  "O": "system:masters",  "OU": "System" } ]}#3.创建证书和私钥cd /usr/local/k8s/cfsslcfssl gencert -ca=/etc/kubernetes/pki/ca.crt -ca-key=/etc/kubernetes/pki/ca.key --profile=kubernetes admin-csr.json | cfssljson -bare admin# 生成以下三个文件ls -l admin.csradmin-key.pemadmin.pem#4.我们可以通过openssl来转换成pkc格式: openssl pkcs12 -export -out ./jenkins-admin.pfx -inkey ./admin-key.pem -in ./admin.pem -passout pass:secret#生成jenkins-admin.pfxpfx文件ls jenkins-admin.pfx

下载jenkins-admin.pfx到本地保存

将证书内容填写,点击凭据后面的添加,点击Jenkins

得到jenkins-admin.pfk文件后,点击Jenkins配置Credentials后面的Add,配置如下

上传证书

1341090-20190812121333313-1393693991.pngfile

选择文件 jenkins-admin.pfk

22.pngfile

输入密码 secret,后面的内容可以不填写,点击添加。

33.pngfile

选择 凭据,点击连接测试。

出现 Connection test successful 表示连接成功。

2.3配置 Pod Template

构建slave镜像

docker pull cnych/jenkins:jnlp6docker tag cnych/jenkins:jnlp6 harbor.demo.com/private/demo-jenkins:jnlpdocker push harbor.demo.com/private/demo-jenkins:jnlp

设置Pod Template ( jenkinsfile 中label标签和标签列表设置保持一致)

WX20200102-154511.pngfile

添加卷
WX20200102-154721.pngfile

Service Account:jenkins

3.gitlab 设置

下载gitlab插件

系统管理—系统配置-Gitlab

WX20200102-155116.pngfile

GitLab API token API token 在gitlab-settings-Access Token获取

WX20200102-155245.pngfile

WX20200102-155641.pngfile

4.新建pipeline任务

podTemplate(label: '100kip', cloud: 'kubernetes') { node('100kip') {  environment {   harborHost = ""   harborCertificate = ""   kubeconfigId = ""   privateHarbor = ""   version=""   images=""   yamlPath="";  }  stage('Clone') {   echo "1.Clone Stage"   checkout([$class: 'GitSCM',    branches: [[name: '*/${branch}']],    doGenerateSubmoduleConfigurations: false,    extensions: [[$class: 'CloneOption', depth: 1, honorRefspec: true, noTags: true, reference: '', shallow: true]],    submoduleCfg: [],    userRemoteConfigs: [[credentialsId: 'jenkins_gitlab', url: '${git_url}']]]    )  }  stage('pom version') {   echo "2.pom version"   def pom = readMavenPom file: 'pom.

本文由博客群发一文多发等运营工具平台 OpenWrite 发布

原文转载:http://www.shaoqun.com/a/485934.html

easel:https://www.ikjzd.com/w/1721

c88是什么:https://www.ikjzd.com/w/1017.html

白色清关:https://www.ikjzd.com/w/1410


jenkinsCI/CD配置文档1.全局工具配置1.1maven配置默认settings提供​ 文件路径:/usr/local/bin/apache-maven-3.3.9/conf/settings.默认全局settings提供​ 文件路径:/usr/local/bin/apache-maven-3.3.9/conf/settings.1.2jdk别名:jdk8JAVA_HOME:/usr/lo
欧苏丹:https://www.ikjzd.com/w/1756
淘粉:https://www.ikjzd.com/w/1725
荐读好文|调研了2069家企业:疫情之外,还有一场硬仗:https://www.ikjzd.com/home/116451
珠海马戏节门票怎么预定?珠海长隆马戏节门票预定多少钱?:http://tour.shaoqun.com/a/30587.html
LV带着18箱「小怪物」漂流,又一位副业天后诞生!:http://fashion.shaoqun.com/a/279727.html

没有评论:

发表评论

跨境电商资讯:外贸宣传平台有哪些(出口的

现在很多做外贸的人都非常关注 外贸企业怎么推广 ,而现在推广的途径和平台有很多,企业如果都做,成本和时间精力是一个问题,而且并不是所有的推广渠道都是有用的。今天云程网络就来为大家盘点几个有效的外贸推广渠道。 一、海外社交媒体营销 Facebook,领英等海外社交媒体营销在近几年得...