吉利蛋
#1
【 使用环境 】测试环境
【 OB or 其他组件 】obd
【 使用版本 】4.2.0
【问题描述】我用obd部署了一套集群 10.0.21.65~10.0.21.67 作为ocp的元数据集群,其中proxy的配置文件部分如下:
obproxy-ce:
style: default
depends:
- oceanbase-ce
servers:
- 10.0.21.65
- 10.0.21.66
- 10.0.21.67
global:
home_path: /home/admin/obproxy
prometheus_listen_port: 2884
listen_port: 2883
enable_obproxy_rpc_service: false
obproxy_sys_password: 打码
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
enable_cluster_checkout: false
rs_list: 10.0.21.65:2881
cluster_name: myocp
observer_root_password: 打码
然后呢我把这3台机器逐一reboot,reboot到10.0.21.65的时候ocp web无法访问,报interval500,排查了以后发现是机器重启后proxy没启动,又执行了一次obd cluster start bfocp -c obproxy-ce以后ocp web恢复,请问通过obd部署的proxy部署以后没有自启动是不是有点坑呢,observer倒是重启后自启动了
4 个赞
淇铭
#3
OBD 部署的 OBProxy 默认不会开机自启;obproxyd 仅做运行期监控。
吉利蛋
#4
有没有办法调配置文件让proxy变成能开机自启动的呢
淇铭
#5
需在 OS 层增加 systemd/cron,或用 obd cluster start ... -c obproxy-ce 封装成开机服务。
–/etc/systemd/system/obd-obproxy-myocp.service
[Unit]
Description=Start obproxy-ce (myocp) via OBD
After=network-online.target
Wants=network-online.target
–若 observer 已配置 enable_auto_start,可加上(按实际 service 名改):
–After=obd_oceanbase_myocp.service
[Service]
Type=oneshot
RemainAfterExit=yes
User=admin
Environment=HOME=/home/admin
–obd 路径按实际修改,常见为 /usr/bin/obd 或 ~/.local/bin/obd
ExecStart=/usr/bin/obd cluster start <deploy_name> -c obproxy-ce
ExecStop=/usr/bin/obd cluster stop <deploy_name> -c obproxy-ce
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable obd-obproxy-myocp.service
–试跑
sudo systemctl start obd-obproxy-myocp.service
obd cluster display <deploy_name> -c obproxy-ce
2 个赞