0
点赞
收藏
分享

微信扫一扫

(十二)centos7案例实战——swap虚拟内存配置

快乐小码农 2023-05-20 阅读 52

一、前置条件

1、安装好k8s集群

这里先要搭建好一个K8s集群,笔者这边就采用使用了一个一主一丛的k8s集群,k8s集群的版本使用1.19.5版本,服务器的配置:2核4G,操作系统: CentOS Linux release 7.9.2009 (Core)

主机名        ip
k8smaster192.168.19.8
k8sworker        192.168.19.9

具体的安装步骤可以按照文档来进行:使用kubeadm安装kubernetes_v1.19.x | Kuboard

2、安装好 Kuboard来管理k8s集群

安装完成后,安装 Kuboard v3 - kubernetes,按照指令:

 Kuboard 安装完成后,

  • 在浏览器中打开链接 http://192.168.19.8:30080

  • 输入初始用户名和密码,并登录

    • 用户名: admin
    • 密码: Kuboard123

3、安装好 IngressClass来进行服务暴露

在集群的IngressClass管理中安装ingressController

 4、创建test命名空间

后续我们通过jenkinszhong 部署的服务放在这个命名空间中,在k8s集群的master节点上执行如下指令:

5、在Kuboard 配置好docker私服的相关配置信息

6、在k8s的master和worker节点上配置docker的私服地址

 在/etc/docker/daemon.json文件中添加

然后重启docker服务,master和worker都需要执行

测试docker能否进行登录,执行如下命名:

发现是能够正常登录的 

二、在项目代码中添加k8s的部署文件

1、在项目代码的docker文件夹中添加,pipe-line.yml文件

文件内容如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  namespace: test
  name: pipeline
  labels:
    app: pipeline
spec:
  replicas: 2
  selector:
    matchLabels:
      app: pipeline
  template:
    metadata:
      labels:
        app: pipeline
    spec:
      imagePullSecrets:
        - name: harbor
      containers:
        - name: pipeline
          image: 192.168.19.7:80/repo/mytest:v1.0.10
          imagePullPolicy: Always
          ports:
            - containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
  namespace: test
  labels:
    app: pipeline
  name: pipeline
spec:
  selector:
    app: pipeline
  ports:
    - port: 8081
      targetPort: 8080
  type: NodePort
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  namespace: test
  name: pipeline
spec:
  ingressClassName: ingress
  rules:
    - host: zhang.pipeline.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: pipeline
                port:
                  number: 8081

2、添加域名解析

在window的hosts文件中添加如下域名解析:

C:\Windows\System32\drivers\etc\hosts文件

192.168.19.8  zhang.pipeline.com

3、配置jenkins流水线

3-1、现在k8smaster的/usr/local/目录下创建k8smaster目录

3.2、在jenkins上新增一个publish over ssh

 

3.3、在项目的任务中添加一个文件传输任务,并执行pod的部署及滚动更新

 4、测试部署后的流水线构建情况

 可以看到已经执行成功,至此我们完成了基于jenkins并集成k8s集群进行CICD的流水线建设

举报

相关推荐

0 条评论