当前位置:   article > 正文

gitlab-ci操纵k8s集群_gitlab-ci kubectl

gitlab-ci kubectl

1.ssh k8s集群,获得k8s集群操作权限

先按照此连接配置ssh

Gitlab配置CI/CD 使用ssh完成自动化部署

 在gitlab-ci里面用以下命令

  script:ssh hostname@$SERVER_HOST "./upgrade.sh"

在update.sh里面写kubectl命令脚本

2.基于证书连接kubernetes集群

获取kubectl集群证书,在目录下/etc/kubernetes/admin.conf

拷贝过来放在项目的根目录。里面server的地址可能是localhost,改为此K8s管理阶段服务器的Ip

  1. [root@master ~]# cat /etc/kubernetes/admin.conf
  2. apiVersion: v1
  3. clusters:
  4. - cluster:
  5. certificate-authority-data: ****
  6. server: https://192.168.XX.XX:6443
  7. name: kubernetes
  8. contexts:
  9. - context:
  10. cluster: kubernetes
  11. user: kubernetes-admin
  12. name: kubernetes-admin@kubernetes
  13. current-context: kubernetes-admin@kubernetes
  14. kind: Config
  15. preferences: {}
  16. users:
  17. - name: kubernetes-admin
  18. user:
  19. client-certificate-data: ****
  20. client-key-data: ****

为gitlab-ci配置kuebctl命令。

  1. image:
  2. name: bitnami/kubectl:latest
  3. script: kubectl get pods -n --kubeconfig admin.conf

  3.基于kubernetes agent 连接kubernetes和gitlab

配置代理文件

在仓库下的默认分支下创建目录

.gitlab/agents/<agent-name> 

创建config.yaml文件

  1. ci_access:
  2. projects:
  3. - id: <repository-name>

项目注册代理

假定上文说的agent-name是acbot,现在目标里面出现了相应的代理。选择并注册就可以

会生成一串令牌和注册文件,注意必须保存下来。用其命令在想要操作的K8s集群部署gitlab-agent就可以

  1. helm repo add gitlab https://charts.gitlab.io
  2. helm repo update
  3. helm upgrade --install XX gitlab/gitlab-agent \
  4. --namespace XX \
  5. --create-namespace \
  6. --set image.tag=v15.10.0 \
  7. --set config.token=XXX \
  8. --set config.kasAddress=XXX

然后gitlb页面里面显示连接成功

 配置gitlab-ci

  1. script:
  2. - kubectl config get-contexts //这里会显示一个context和上文注册的agent对应,对应的仓库名和agent名
  3. - kubectl config use-context <repository-name>:<agent-name> //使用刚才显示的context
  4. - kubectl get pods -A// 现在切换到目标K8s的上下文环境了

这里的repository-name是config.yaml所在的仓库名称,而不是当前仓库名称。

如果是在不知道怎么配的话就提前get-contexts  用里面的上下文(如果get-contexts没看到想要的,就说明agent没连接上)

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

闽ICP备14008679号