#powershell #zabbix
#powershell #zabbix
Вопрос:
чтобы распространять Zabbix в нашей компании, я хотел бы создать функцию для клиента Zabbix 5.2 в моем сценарии установки. Это также означает, что zabbix_agentd.exe регистрируется как сервис с соответствующими параметрами. Я, по-видимому, слишком глуп, чтобы сделать это с помощью процесса запуска.
Следующая строка служит примером .. Я попробовал несколько вещей, но не смог найти подходящее предложение и т. Д.
запуск-процесс -Путь к файлу cmd.exe -Список аргументов «/c c:program файлы (x86)zabbixzabbix_agend.exe —конфигурация C:Program Файлы (x86)Zabbixzabbix_agentd.win.conf —установить»
Я также надеюсь, что смогу передать путь к zabbix_agentd.exe как переменная
Надеюсь, у кого-нибудь есть совет.
Заранее спасибо
Ответ №1:
Для Windows я использую MSI для установки и проверяю реестр, если правильная версия уже установлена, иначе обновите.
Замените и на свой собственный.
$zabbixversion = (Get-ItemProperty -Path "HKLM:SOFTWAREZabbix SIAZabbix Agent (64-bit)").ProductVersion
if ($zabbixversion -eq "5.0.20.2400") {
write-host "Zabbix already installed"
exit
}
else
{
write-host "Uninstall Zabbix Agent"
msiexec /uninstall \<share>zabbix_agent-5.0.20-windows-amd64-openssl.msi server=<SERVERIP> sport=10050 lport=10050 SERVERACTIVE=<SERVERIP> rmtcmd=0
write-host "Installing Zabbix Agent"
msiexec /I \<share>\zabbix_agent-5.0.20-windows-amd64-openssl.msi server=<SERVERIP> sport=10050 lport=10050 SERVERACTIVE=<SERVERIP> rmtcmd=0
}
Ответ №2:
Вместо этого следует использовать пакет MSI.
В качестве параметров можно указать имя хоста / IP-адрес сервера, удаленную поддержку команд, поддержку psk и т.д…
Затем вы можете запустить его с помощью cmd / powershell или, что еще лучше, через объект групповой политики
Некоторые примеры см. На странице документации
Комментарии:
1. Большое спасибо за ваш ответ. У меня все еще есть старый агент, работающий как служба на многих клиентах, который я хотел бы сначала удалить с помощью команды —uninstall . У вас есть другая идея?
2. Попробуйте вручную с msi на коробке, в которой установлен старый агент: если установщик обнаружит его, вы можете использовать новый пакет для удаления старого (т. Е.: С
msiexec /x ....
помощью командной строки) или перезаписать установку