k3s安装jenkins-x

本地运行的K3s集群上安装Jenkins X


注意
确保你已经登录了GitHub,否则点击以下链接你将得到一个404错误
本篇指南将指导你如何在你使用k3s的笔记本电脑上安装Jenkins X
如果你正在使用Mac OS,你可以参照这篇指南来构建k3s。你无需在剩余部分的教程中安装kalm

前提条件

K3s

确保你已经创建了一个k3s集群
如果你没有安装好的k3s集群,你可以通过执行以下指令安装一个:

# We don't support Kubernetes 1.22+ yet
curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=v1.21 sh -s - --write-kubeconfig-mode 644
sudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/k3s-config
# Set it also in the bashrc or zshrc file, or you can flatten both of these configs into a single file
export KUBECONFIG=~/.kube/config:~/.kube/k3s-config

使用以下指令验证k3s已经成功安装:

kubectl get nodes
  • 你稍后需要开启多个终端,所以设置这些环境变量在bashrc或者zshrc可能对你有帮助
nano ~/.bashrc
#go to the end of the file and paste the export command
export KUBECONFIG=~/.kube/config:~/.kube/k3s-config

可选项

  • 如果以上方法未生效,拷贝配置文件到~/.kube/config替换(如果你没有其它的集群,此方法应该有效)
sudo rm ~/.kube/k3s-config  #to make k3s uses ~/.kube/config
sudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/config
  • 如果仍然显示无权限
sudo chmod 777 ~/.kube/config #warning: this maybe vulnerable to multiple users

稍后在安装和配置Jenkins X期间,节点的值将会被使用
更多的安装选项查看k3s安装指南,但是记住我们暂未支持K8s 1.22+ 版本

Docker

你需要安装docker使用非root用户管理

Vault

安装vault命令行工具。参照vault文档如何在你的平台安装vault。
确保你已经有vault在启用k8s认证的docker容器中运行。

docker run --name jx-k3s-vault -d --cap-add=IPC_LOCK -e 'VAULT_DEV_ROOT_TOKEN_ID=myroot' -e 'VAULT_DEV_LISTEN_ADDRESS=0.0.0.0:8200' --net host vault:latest

使用docker logs jx-k3s-vault验证vault是否正确启动
然后在vault中启用k8s认证

export VAULT_ADDR='http://0.0.0.0:8200'
# you may want to set this at the end of the ~/.bashrc file or ~/.zshrc either to be accesible for all terminals you open like the way we did above
vault auth enable kubernetes

注意:如果你看到报错Error enabling kubernetes auth: Post “https://127.0.0.1:8200/v1/sys/auth/kubernetes”: http: server gave HTTP response to HTTPS client,尝试执行命令vault login myroot

Github

Jenkins-X

  • 确认你已经安装了jx 3.0 binary并且把它放到你的*$PATH*目录,jx admin operator将会使用它

Jenkins X v3 安装

  • 通过点击此处,从jx3-k3s-vault模板生成一个集群git仓库
  • 编辑jx-requirements.yaml文件中vault url的值。替换"http://:8200"
  • 提交并推送你的变更:
git add .
git commit -m "fix: set vault url"
git push origin main
  • 设置GIT_USERNAME (机器人用户名) 和 GIT_TOKEN (机器人个人准入凭证) 环境变量并运行:
jx admin operator --username $GIT_USERNAME --token $GIT_TOKEN --url <url of the cluster git repo> --set "jxBootJobEnvVarSecrets.EXTERNAL_VAULT=\"true\"" --set "jxBootJobEnvVarSecrets.VAULT_ADDR=http://<replace with k3s node name>:8200"

注意:第一个任务将会失败

未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值