cat > /etc/systemd/system/node.service <<EOF
[Unit]
Description=Goodrain Rainbond node
After=network.target
[Service]
Type=simple
User=root
LimitCORE=infinity
LimitNOFILE=102400
LimitNPROC=102400
EnvironmentFile=-/opt/rainbond/envs/node.sh
PermissionsStartOnly=true
ExecStart=/opt/rainbond/scripts/start-node.sh
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
EOF
cat > /opt/rainbond/scripts/start-node.sh <<EOF
#!/bin/bash
NODE_OPTS="--log-level=info --auto-scheduler=true --kube-conf=/opt/rainbond/etc/kubernetes/kubecfg/admin.kubeconfig --etcd=http://<etcd地址> --hostIP=<新增网关节点ip> --run-mode master --noderule manage"
exec /usr/local/bin/node $NODE_OPTS
EOF
cat > /opt/rainbond/etc/node/node_host_uuid.conf <<EOF
host_uuid=<node_uuid, 可以用uuidgen生成>
EOF
从管理节点同步文件
编辑新增网关节点 /opt/rainbond/conf/network.yaml
IP为新增网关节点
NODENAME为新增网关节点node的uuid
# 安装docker
export VERSION=18.06 && curl -fsSL http://rainbond-pkg.oss-cn-shanghai.aliyuncs.com/releases/docker/install-docker.sh | bash -s docker
cat > /etc/docker/daemon.json <<EOF
{
"insecure-registries": ["goodrain.me"],
"bip": "172.30.42.1/16",
"userland-proxy": false,
"storage-driver": "overlay2",
"max-concurrent-downloads": 10,
"log-driver": "json-file",
"log-level": "warn",
"log-opts": {
"max-size": "20m",
"max-file": "2"
}
}
EOF
# 启动docker
systemctl daemon-reload
systemctl restart docker
/etc/resolv.conf
,添加管理节点ip,支持goodrain.me等域名解析/etc/hosts
,添加域名解析<管理节点ip> kubeapi.goodrain.me goodrain.me repo.goodrain.me lang.goodrain.me maven.goodrain.me region.goodrain.me
systemctl enable node
systemctl start node
# node启动后根据/opt/rainbond/conf目录下配置文件生成对应服务systemd配置文件并启动
有两种方案:
调整域名解析 将域名解析到vip或者是slb的ip
grctl domain --ip <vip/slb>
更新数据库信息
# 仅vip方案
docker exec -it rbd-db mysql -e "update console.region_info set tcpdomain='<vip>';"