关于k3s
K3s是由Rancher Labs发布的一个轻量级Kubernetes发行版,这款产品专为在资源有限的环境中运行Kubernetes的研发和运维人员设计。
它是经过认证的Kubernetes发行版,其最低的系统要求为:
系统内核版本:Linux 3.10+
每个Server最低RAM要求:512 MB
每个节点RAM最低要求:75MB
磁盘空间最低要求:200 MB
支持的硬件架构:x86_64、 ARMv7、 ARM64
这些低配置的要求使得k3s非常适用于IoT相关的场景。
在GitLab中创建项目
在安装k3s之前,我们先在Gitlab上创建一个新的项目,称为api。
创建完成之后,我们点击侧边菜单栏里的Operations,并在下级菜单中选择Kubernetes。
我们现在有两个选项:
在GKE上创建一个新的Kubernetes集群
导入现有Kubernetes 集群的配置(无论这一集群在何处创建均可导入)
注意:在当前版本的GitLab中,新集群的创建仅限于GKE。
我们选择【Add existing cluster】这一选项卡。
在这一步中,我们需要填写几个字段来提供我们需要集成的集群配置。一直打开这个选项卡,暂时无需理会。现在,我们先去创建一个全新的Kubernetes集群。
创建一个k3s集群
我们现在将基于k3s启动一个Kubernetes集群。为什么是k3s呢?因为我想要表明设置它是多么容易。为了让步骤一目了然,我们仅仅设置一个节点的集群。
我已经配置了名为node1的Ubuntu 18.04服务器,我们在该主机上获得了一个shell之后,只需要运行以下命令来安装k3s,这是一个经过认证的Kubernetes集群。
root@node1:~ $ curl -sfL https://get.k3s.io | sh -
上面的命令类似于用于快速码头工人安装的命令:
curl https://get.docker.com | sh
安装完毕之后,可以在/etc/牧场主k3/k3。yaml中找到连接到集群的配置文件。
root@node1: ~猫/etc/rancher/k3s/k3s.yaml美元 apiVersion: v1 集群: ——集群: tCg certificate-authority-data: LS0tL…==服务器:https://localhost: 6443 名称:默认 背景: ——背景: 集群:默认 用户:默认 名称:默认 当前上下文:默认 :配置 偏好:{} 用户: ——名称:默认 用户: 密码:48 f4b b4e7…4 用户名:admin
本地kubectl将自动使用此配置。
kubectl美元得到节点 姓名身份角色年龄版本 node1主3 m v1.14.5-k3s做好了准备。1
注意:正如我们看到的快速启动那样(https://k3s。io/),添加额外的节点并不复杂,它基本上只需要从主服务器上的/var/lib/牧场主/k3/服务器/node-token获取一个令牌,并使用以下命令即可连接其他一些节点:
美元curl https://get.k3s同声传译。io | K3S_URL=https://myserver: 6443 K3S_TOKEN=XXX sh -
在Gitlab中集成
现在让我们获取在Gitlab项目中集成全新的k3集群所需的所有信息。
- <李>
集群名字:k3
李> <李>API服务器的URL:在配置文件中,API服务器指定为:https://localhost 6443。为了从外部访问,我们需要提供node1外部的IP地址。
李> <李>集群的CA证书:要向Gitlab提供集群CA证书,我们需要解码配置中指定的那个文件(就像它在64年基地中一样)。
李>kubectl美元——原始\配置视图 - o=jsonpath=' {.clusters [0] .cluster。certificate-authority-data} ' \ | base64 -解码实操教程丨如何将一个k3集群集成到Gitlab项目中