Linux平台启动方式¶
Service方式启动¶
在Linux平台下执行service oscaragentd start可启动agent服务;执行service oscaragentd stop可停止agent服务;执行service oscaragentd restart可重启agent服务;执行service oscaragentd status可查询agent服务,如图所示:
oscaragentd所在目录为/etc/init.d/目录下,也可以通过/etc/init.d/ oscaragentd start/stop/restart进行服务管理。
Systemctl方式启动¶
如果Linux平台支持systemctl管理服务, 安装oscaragent时将会在系统目录 /usr/lib/systemd/system/ 下注册文件名为 oscaragentd.service 的服务。
// 启动oscaragent服务 systemctl start oscaragentd // 查询oscaragent服务状态 systemctl status oscaragentd // 停止oscaragent服务 systemctl stop oscaragentd // 允许oscaragent服务开机自启 systemctl enable oscaragentd // 禁止oscaragent服务开机自启 systemctl disable oscaragentd
命令行方式启动¶
在控制台里若已配置SZ_OSCAR_HOME环境变量,可直接执行oscaragent -c启动agent服务,或切到神通数据库安装目录下bin目录,找到oscaragent,执行./oscaragent -c以命令行方式启动agent服务,Ctrl+C可停止agent服务。
非ROOT用户启动条件¶
非root用户安装 oscaragent 服务请查看文档 LINUX系统非root用户安装使用说明
oscaragent 运行,ipv4环境会调用 ip addr del (ipv6 环境会调用 ifconfig)去卸载浮动IP。 如果 oscaragent 是普通用户, 当调用 ip addr del 卸载浮动ip时,卸载进程需要 cap_net_admin,cap_net_raw,cap_sys_resource 权限。 如果普通用户没有以上执行 ip 或 ifconfig 的权限, 会造成权限不足的报错,oscaragent 将无法完成浮动ip的卸载。
对于非ROOT用户,有以下两种解决方式:
- 给要使用的程序 ip ifconfig 需要的cap_net_admin,cap_net_raw,cap_sys_resource 权限
使用 setcap cap_net_admin,cap_net_raw,cap_sys_resource=eip 命令修改ifconfig、ip 文件的权限
例如, 切换 root 用户,执行以下命令
setcap cap_net_admin,cap_net_raw,cap_sys_resource=eip "/usr/sbin/ifconfig"
setcap cap_net_admin,cap_net_raw,cap_sys_resource=eip "/bin/ip"
- 使用 chmod u+s 给程序所有用户执行权限
例如, 切换 root 用户,执行以下命令
chown -hR root:root /bin/ip
chmod u+s /bin/ip
chown -hR root:root /usr/sbin/ifconfig
chmod u+s /usr/sbin/ifconfig
修改完成后,重启oscaragent服务生效。