前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DevOps 1 - Jenkins @ K8S 安装笔记

DevOps 1 - Jenkins @ K8S 安装笔记

原创
作者头像
谢正伟
修改2020-06-17 18:06:22
5400
修改2020-06-17 18:06:22
举报
文章被收录于专栏:云原生研究

安装 jenkins

1 创建一个新的 namespace。此处不需要 sidecar 自动注入。

代码语言:txt
复制
apiVersion: v1
kind: Namespace
metadata:
  name: cicd
spec:
  finalizers:
    - kubernetes

2 创建 Deployment 部署 jenkins 应用。下面的脚本没有绑定 volume,实际使用的时候可能需要较大空间,建议绑定额外的存储磁盘 -v jenkins_home:/var/jenkins_home。参考官方容器说明:https://github.com/jenkinsci/docker/blob/master/README.md

代码语言:txt
复制
apiVersion: apps/v1
kind: Deployment
metadata:
  name: jenkins
  namespace: cicd
  labels:
    app: jenkins
    version: v2.60.3
spec:
  replicas: 1 
  selector:
    matchLabels:
      app: jenkins
      version: v2.60.3
  template:
    metadata:
      labels:
        app: jenkins
        version: v2.60.3
    spec:
      containers:
        - name: jenkins
          image: jenkins:2.60.3-alpine
          ports:
          - containerPort: 8080
            protocol: TCP
          - containerPort: 50000
            protocol: TCP  

3 创建 Service,记得要放开 8080 和 50000 的访问端口。其中 50000 端口是内部代理端口,安装插件等操作都要使用此端口。

代码语言:txt
复制
apiVersion: v1
kind: Service
metadata:
  name: jenkins
  namespace: cicd
  labels:
    app: jenkins
spec:
  ports:
  - port: 8080
    name: http
  - port: 50000
    name: agent
  selector:
    app: jenkins

4 创建 ingress-gateway 开放外网访问,由于我的集群已经开通了 istio,所以直接使用了 istio 的ingress gateway

代码语言:txt
复制
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: jenkins-gateway
  namespace: cicd
spec:
  selector:
    istio: ingressgateway 
  servers:
  - port:
      number: 8080
      name: http
      protocol: HTTP
    hosts:
    - "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: jenkins-gateway
  namespace: cicd
spec:
  hosts:
  - "*"
  gateways:
  - jenkins-gateway
  http:
  - match:
    - uri:
        prefix: /
    route:
    - destination:
        host: jenkins
        port:
          number: 8080

Jenkins 初始化

现在访问 http://ip:8080,发现 Jenkins 启动了。

1 进入 pod 中,查看初始密码。

代码语言:txt
复制
kubectl exec jenkins-769cdbbdfb-4fk9s -n cicd -- cat /var/jenkins_home/secrets/initialAdminPassword

2 输入密码,选择安装插件进入下一步,我选择了推荐插件。等待若干分钟/小时,等他安装。

3 创建管理员用户。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装 jenkins
  • Jenkins 初始化
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档