当前位置:   article > 正文

2022 年全国职业院校技能大赛高职组云计算赛项试卷-容器云-3_在 kubernetes 集群中新建命名空间 gitlab-ci,将 gitlab 部署到该命名空间

在 kubernetes 集群中新建命名空间 gitlab-ci,将 gitlab 部署到该命名空间下,depl

首先介绍一下GitLab:

GitLab是一个基于Web的Git仓库管理器,提供Git仓库管理、代码评审、问题跟踪、活动动态、Wiki和持续集成/持续部署(CI / CD)管道。与其竞争对手GitHub不同,GitLab还提供免费的私有仓库。

GitLab由Dmitriy Zaporozhets和Valery Sizov于2011年创建。它使用Ruby和Go编写,并提供两个版本:GitLab社区版(CE)和GitLab企业版(EE)。

GitLab CE是一款开源软件,而GitLab EE具有为企业级组织设计的额外功能。 GitLab EE中的一些功能包括LDAP组同步,审计日志和多个合并请求的审批者。

GitLab已经成为开发人员中非常流行的工具,在2021年有超过100,000个组织在使用它。它的流行可以归因于其广泛的功能集、活跃的开发社区以及作为开源软件提供的事实。

接下来开始今天的正题:

【任务 3 】容器云应用部署:基于 Kubernetes 构建 CICD[8.0 分]

该公司决定采用 Kubernetes + GitLab CI 来构建 CICD 环境,以缩短新功能开发上线周

期,及时满足客户的需求,实现 DevOps 的部分流程,来减轻部署运维的负担,实现可视化

容器生命周期管理、应用发布和版本迭代更新,请完成 GitLab CI + Kubernetes 的 CICD 环

境部署(构建持续集成所需要的所有软件包在软件包 CICD-Runner.tar.gz 中)。CICD 应用系

统架构如下:

【适用平台】私有云

【题目 1】安装 GitLab 环境[1 分]

在Kubernetes集群中新建命名空间gitlab-ci,将GitLab部署到该命名空间下,Deployment和 Service 名称均为 gitlab,以 NodePort 方式将 80 端口对外暴露为 30880,设置 GitLab 服务root 用户的密码为 admin@123,将项目包 demo-2048.tar.gz 导入到 GitLab 中并命名为demo-2048。

完成后提交 master 节点的用户名、密码和 IP 地址到答题框。(需要用到的软件包路径

CICD-Runner.tar.gz)

1.GitLab 部署正确且能正常访问得 0.5 分;

2.项目导入成功得 0.5 分。

在Kubernetes集群中创建命名空间gitlab-ci:

kubectl create namespace gitlab-ci

部署GitLab到gitlab-ci命名空间下。首先,创建一个名为gitlab-deployment.yaml的文件,然后将以下内容复制到该文件中:

  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4.   name: gitlab
  5.   namespace: gitlab-ci
  6. spec:
  7.   replicas: 1
  8.   selector:
  9.     matchLabels:
  10.       app: gitlab
  11.   template:
  12.     metadata:
  13.       labels:
  14.         app: gitlab
  15.     spec:
  16.       containers:
  17.       - name: gitlab
  18.         image: gitlab/gitlab-ce:latest
  19.         ports:
  20.         - containerPort: 80
  21.         env:
  22.         - name: GITLAB_OMNIBUS_CONFIG
  23.           value: "external_url 'http://gitlab.example.com/'; gitlab_rails['initial_root_password'] = 'admin@123'"

将GitLab部署到Kubernetes集群:

kubectl apply -f gitlab-deployment.yaml

创建一个名为gitlab-service.yaml的文件,然后将以下内容复制到该文件中:

  1. apiVersion: v1
  2. kind: Service
  3. metadata:
  4.   name: gitlab
  5.   namespace: gitlab-ci
  6. spec:
  7.   selector:
  8.     app: gitlab
  9.   ports:
  10.     - protocol: TCP
  11.       port: 80
  12.       targetPort: 80
  13.       nodePort: 30880
  14.   type: NodePort

在Kubernetes集群中创建GitLab服务:

kubectl apply -f gitlab-service.yaml

现在,GitLab已成功部署在Kubernetes集群中,并将80端口对外暴露为30880。GitLab服务root用户的密码已设置为admin@123。

接下来,我们将讨论如何将项目包demo-2048.tar.gz导入到GitLab中并命名为demo-2048:

1登录GitLab,使用设置的root用户密码admin@123。

2创建一个新项目:点击“New project”,然后选择“Create blank project”。

3在“Project name”中输入demo-2048,然后点击“Create project”。

4在项目页面的右上角,点击“Import project”,选择“Repo by URL”。

5将demo-2048.tar.gz上传到一个可访问的HTTP或HTTPS URL。

6在“Git repository URL”中输入demo-2048.tar.gz文件的URL,然后点击“Import project”。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/77640
推荐阅读
相关标签
  

闽ICP备14008679号