当前位置: 首页 > article >正文

5.《DevOps》系列K8S部署CICD流水线之K8S通过Yaml部署GitLab

架构

服务器IP 服务名称 硬件配置
192.168.1.100 k8s-master 8核、16G、120G
192.168.1.101 k8s-node1 8核、16G、120G
192.168.1.102 k8s-node2 8核、16G、120G
192.168.1.103 nfs 2核、4G、500G

操作系统:Rocky9.3

后续通过K8S部署Jenkins

NFS的SC创建参考:2.《DevOps》系列K8S部署CICD流水线之部署NFS网络存储与K8S创建StorageClass-CSDN博客

此时部署GitLab需要先部署Redis、PostgreSQL

如果部署后拉取镜像失败,可以找个有docker的机器,拉取相关镜像,然后上传到K8S的两个node节点

#有docker的机器操作

docker pull redis:latest

docker pull sameersbn/postgresql:latest

docker pull sameersbn/gitlab:latest

docker save -o redis.tar redis:latest

docker save -o postgresql.tar sameersbn/postgresql:latest

docker save -o gitlab.tar sameersbn/gitlab:latest

#上传tar包到两个k8s节点进行操作

ctr -n k8s.io  image import redis.tar redis:latest

ctr -n k8s.io  image import postgresql.tar sameersbn/postgresql:latest

ctr -n k8s.io  image import gitlab.tar sameersbn/gitlab:latest

部署Redis

#创建目录

mkdir -p /home/k8s/gitlab

cd /home/k8s/gitlab

vim gitlab_redis_dp_svc_pvc.yaml

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: redis-pvc
  namespace: devops
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: "nfs-client" #写入之前部署好的SC名称
  resources:
    requests:
      storage: 2Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redis
  namespace: devops
  labels:
    name: redis
spec:
  replicas: 1
  selector:
    matchLabels:
      name: redis
  template:
    metadata:
      name: redis
      labels:
        name: redis
    spec:
      containers:
        - name: redis
          image: redis:latest
          imagePullPolicy: IfNotPresent
          po

http://www.kler.cn/a/315759.html

相关文章:

  • PostgreSQL分区表:基础语法与运维实践
  • 【大数据测试HBase数据库 — 详细教程(含实例与监控调优)】
  • UDP协议和TCP协议之间有什么具体区别?
  • 4.4 软件设计:UML顺序图
  • Sigrity SPEED2000 Power Ground Noise Simulation模式如何查看PDS系统的自阻抗操作指导
  • 深入理解接口测试:实用指南与最佳实践5.0(三)
  • C++从入门到起飞之——多态 全方位剖析!
  • 通信工程学习:什么是NFVI网络功能虚拟化基础设施层
  • Apache HttpComponents HttpClient
  • Blender软件三大渲染器Eevee、Cycles、Workbench对比解析
  • mysql学习教程,从入门到精通,SQL 删除数据(DELETE 语句)(18)
  • Tron/ETH/MATIC/TRX链上智能合约项目开发
  • 【系统架构设计师】软件架构的风格(经典习题)
  • SpringBoot启动横幅输出到控制台。
  • fiddler抓包07_抓IOS手机请求
  • 预付费计量系统实体模型
  • 在Docker中运行Tomcat:打造高效可移植的Java Web服务器
  • 01_RabbitMQ安装及工作模式
  • 阿里HPN-用于大型语言模型训练的数据中心网络
  • Kafka 下载安装及使用总结
  • JavaWeb初阶 day1
  • 从零开始学习Linux(14)---线程池
  • 『功能项目』QFrameWorkBug关联Slot(插槽)【67】
  • C++:使用tinyxml2获取节点下元素
  • android kotlin Extension扩展函数
  • HashMap源码