极狐GitLab 管理 K3S 集群实践指南
K3S 是一个轻量级的 Kubernetes 发行版,安装运行所需的资源比完整的 Kubernetes 少,因此在一些资源受限制的场景中会经常用到,比如边缘计算。本文将演示如何用极狐GitLab 管理 K3S 集群。具体的步骤包括 Kubernetes 集群的创建、极狐GitLab Kubernetes Agent 的创建、极狐GitLab Kubernetes Agent 的安装以及 Kubernetes Cluster Dashboard 的配置和管理。K3S 的流程和步骤也是类似的。
极狐GitLab 为 GitLab 的中国发行版,可以一键安装部署,部署详情可以查看官方指南 https://dl.gitlab.cn/uz3208dj 。
整体步骤
- 安装好一个可用的 K3S集群;
- 极狐GitLab Kubernetes Agent 的注册;
- 极狐GitLab Kubernetes Agent 的安装;
- K3S Cluster Dashboard 的配置和管理;
K3S 的安装和集群的搭建
根据 K3S 官网指南,使用如下命令即可完成 K3S 集群的安装:
$ curl -sfL https://get.k3s.io | sh -
安装完毕以后,可以对 K3S 集群进行查看:
$ k3s --version
k3s version v1.30.4+k3s1 (98262b5d)
go version go1.22.5
$ export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
vm-20-9-ubuntu Ready control-plane,master 34h v1.30.4+k3s1
$ kubectl get ns
NAME STATUS AGE
default Active 34h
gitlab-agent-k3s-gitlab Active 22m
kube-node-lease Active 34h
kube-public Active 34h
kube-system Active 34h
极狐GitLab Kubernetes Agent 的注册
在极狐GitLab 项目中添加一个 agent 文件夹,诸如 .gitlab/agent/k3s-gitlab:
在其中添加 config.yaml文件,内容如下:
observability:
logging:
level: info
user_access:
access_as:
agent: {}
projects:
- id: xiaomage-devops/Kubernetes-Agent
- id: jh-xiaomage-devops/go-demo
groups:
- id: xiaomage-devops
- id: jh-xiaomage-devops
以上步骤就完成了极狐GitLab Kubernetes Agent 的注册。下面对 Agent 进行安装。
极狐GitLab Kubernetes Agent 的安装
在项目 --> 运维 --> Kubernetes 集群中选择连接集群:
此时,需要选择一个代理,选择在上面创建的代理即可,也就是 k3s-gitlab
:
选择 k3s-gitlab
然后点击注册即可:
拷贝上述命令并在命令行终端中直接执行:
$ helm repo add gitlab https://charts.gitlab.io
$ helm repo update
$ helm upgrade --install k3s-gitlab gitlab/gitlab-agent \
--namespace gitlab-agent-k3s-gitlab \
--create-namespace \
--set image.tag=v17.3.0 \
--set config.token=glagent-token \
--set config.kasAddress=wss://kas.jihulab.com
"gitlab" has been added to your repositories
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "gitlab" chart repository
Update Complete. ⎈Happy Helming!⎈
Release "k3s-gitlab" does not exist. Installing it now.
NAME: k3s-gitlab
LAST DEPLOYED: Sun Aug 25 09:59:33 2024
NAMESPACE: gitlab-agent-k3s-gitlab
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Thank you for installing gitlab-agent.
Your release is named k3s-gitlab.
## Changelog
### 1.17.0
- The default replica count has been increased from `1` to `2` to allow a zero-downtime upgrade experience.
You may use `--set replicas=1` to restore the old default behavior.
查看 Agent 的状态:
kubectl -n gitlab-agent-k3s-gitlab get pods
NAME READY STATUS RESTARTS AGE
k3s-gitlab-gitlab-agent-v2-6686cc78d4-6rrzx 1/1 Running 0 34m
k3s-gitlab-gitlab-agent-v2-6686cc78d4-r7d5v 1/1 Running 0 34m
接着可以在项目 --> 运维 --> Kubernetes 集群中查看集群的状态:
K3S 集群已安装成功。
添加 K3S cluster Dashboard
在极狐GitLab 项目 --> 运维 --> 环境中选择新建环境:
填写环境名称、选择代理(k3s-gitlab
),然后点击保存:
就可以看到该 k3s 集群下面的所有资源都在极狐GitLab 上展示了:
点击 pod右侧的 View logs可以查看 pod 的日志:
点击 pod右侧的三个点,还可以对 pod进行删除:
本文由博客群发一文多发等运营工具平台 OpenWrite 发布