安装代理需要满足一些特定用户帐户必备条件。
Windows目标计算机用户帐户要求
- 要安装代理,
- 用户必须是管理员,或者
- 属于管理员组的非管理员。
Linux 目标计算机用户帐户要求
对于 Linux 目标计算机,Telegraf 代理有两个用户帐户,例如安装用户和运行时用户。在代理安装期间提供的用户凭据用于安装用户。
arcuser 是运行时用户,需要一组代理组件运行所必需的特权。
- /tmp 挂载点应使用 exec 挂载选项挂载。
- 以下是用户安装代理所需的最低权限,应在 sudoers 文件中显示出来:
例如,对于名为 telegrafinstall 的用户,可以在 /etc/sudoers 文件或文件夹 /etc/sudoers.d/ 中找到 sudoers 文件:
Defaults:telegrafinstall !requiretty Cmnd_Alias ARC_INSTALL_USER_COMMANDS=/usr/bin/cp*,/bin/cp*,/usr/bin/mkdir*,/bin/mkdir*,/usr/bin/chmod*,/bin/chmod*,/opt/vmware/ucp/bootstrap/uaf-bootstrap.sh,/opt/vmware/ucp/ucp-minion/bin/ucp-minion.sh telegrafinstall ALL=(ALL)NOPASSWD: ARC_INSTALL_USER_COMMANDS
运行时用户必备条件
可通过两种方式在 Linux 目标计算机中创建运行时用户:自动和手动。运行时用户具有标准名称和组,分别为 arcuser 和 arcgroup。如果选中在 Linux 虚拟机上创建具有在代理安装过程中所需权限的运行时用户复选框,则会自动创建 arcuser 和 arcgroup。此复选框在默认情况下已选中。在基于脚本的安装过程中,还会自动创建运行时用户。如果选择手动创建 arcuser 和 arcgroup,手动创建步骤如下:
创建
arcgroup 和
arcuser,并将
arcgroup 关联为
arcuser 的主要组。
- arcgroup 必须是 arcuser 的主要组。
可以使用以下命令创建 arcgroup 和 arcuser:
groupadd arcgroup
useradd arcuser -g arcgroup -M -s /bin/false
- 创建的 arcuser 必须没有主目录,并且无法访问登录 shell。
例如,在添加 arcuser 和 arcgroup 后,arcuser 的 /etc/passwd 条目如下所示。
arcuser:x:1001:1001::/home/arcuser:/bin/false
- arcuser 必须具有无密码的特定特权集(如下所述),且这些特权必须写入 /etc/sudoers 文件或文件夹 /etc/sudoers.d/ 中:
Defaults:arcuser !requiretty Cmnd_Alias VAPCOMMANDS=/usr/bin/systemctl * ucp-telegraf.service, !/usr/bin/systemctl * * ucp-telegraf.service, /bin/systemctl * ucp-telegraf.service, !/bin/systemctl * * ucp-telegraf.service, /usr/bin/systemctl * ucp-minion.service, !/usr/bin/systemctl * * ucp-minion.service, /bin/systemctl * ucp-minion.service, !/bin/systemctl * * ucp-minion.service, /usr/bin/systemctl * salt-minion.service, !/usr/bin/systemctl * * salt-minion.service, /bin/systemctl * salt-minion.service, !/bin/systemctl * * salt-minion.service, /usr/bin/systemctl * ucp-salt-minion.service, !/usr/bin/systemctl * * ucp-salt-minion.service, /bin/systemctl * ucp-salt-minion.service, !/bin/systemctl * * ucp-salt-minion.service, /usr/bin/netstat, /bin/netstat, /opt/vmware/ucp/tmp/telegraf_post_install_linux.sh, /opt/vmware/ucp/bootstrap/uaf-bootstrap.sh, /opt/vmware/ucp/content/runscript.sh, /opt/vmware/ucp/ucp-minion/bin/ucp-minion.sh, /usr/bin/systemd-run, /bin/systemd-run arcuser ALL=(ALL) NOPASSWD: VAPCOMMANDS