本文介绍如何在k3s上安装Rainbond
1.安装Docker
curl http://sh.rainbond.com/install_docker | bash
2.安装K3s
curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC="--docker --disable traefik" sh -s - --advertise-address 192.168.3.162
参数解释:
- --docker:使用docker,默认是containerd。
- --disable traefik:禁用安装 traefik,因为traefik占用了80 443端口,Rainbond的Gateway也需使用80 443端口。
- --advertise-address:apiserver用来向集群成员发布的IP地址,生成kubeconfig文件后默认的地址是
127.0.0.1:6443
,对接Rainbond时获取不到这个地址,所以需将其暴露地址改为宿主机的IP。
将 kubeconfig
文件拷贝至默认的目录下
mkdir ~/.kube
cp /etc/rancher/k3s/k3s.yaml ~/.kube/config
3.安装Rainbond
docker run -d -p 7070:7070 \
--name=rainbond-allinone --restart=always \
-v ~/.ssh:/root/.ssh \
-v ~/rainbonddata:/app/data \
registry.cn-hangzhou.aliyuncs.com/goodrain/rainbond:v5.4.1-release-allinone
部署好后,访问7070端口,进入 集群
> 添加集群
> 对接已有的Kubernetes集群
,将K3s的 kubeconfig
文件拷贝过来。
修改kubeconfig文件中的server
字段为 --advertise-address
设置的值。
接下来就根据页面提示一步一步操作就好。
遇到的问题
- 安装K3s时没有指定
--advertise-address
导致一直对接不上。 - 指定
--advertise-address
放在INSTALL_K3S_EXEC
不生效,就很奇怪,放在结尾执行就生效。 - 对接k3s时,
kubeconfig
文件没有修改server
字段,导致一直离线。 - 服务器开了防火墙,没放
6443
端口,[手动尴尬] 我直接关闭firewalld
。
Rainbond是一个开源的云原生应用管理平台,使用简单,不需要懂容器和Kubernetes,支持管理多个Kubernetes集群,提供企业级应用的全生命周期管理,功能包括应用开发环境、应用市场、微服务架构、应用持续交付、应用运维、应用级多云管理等。