Установка SQL 2016 через Ansible
Всем привет!
Пытаюсь поставить SQL Server 2016 на Windows Server 2012 R2 при помощи Ansible развернутом на CentOS 7.
Дистрибутив SQL лежит локально на целевой машине.
Установка запускается с помощью PS скрипта:
"Start-Process -FilePath C:\\soft\\SQL\\en_sql_server_2016_developer_with_service_pack_2_x64_dvd_12194995\\setup.exe /configurationfile=C:\\soft\\SQL\\ConfigurationFile.ini"
Запускаемый playbook:
- name: SQL Server
hosts: testserver
tasks:
- name: Install MS SQL Server 2016
win_shell: Start-Process -FilePath C:\soft\SQL\en_sql_server_2016_developer_with_service_pack_2_x64_dvd_12194995\setup.exe /configurationfile=C:\soft\SQL\ConfigurationFile.ini
В Ansible получаю результат:
changed: [172.27.46.19] => {
"changed": true,
"cmd": "Start-Process -FilePath C:\\soft\\SQL\\en_sql_server_2016_developer_with_service_pack_2_x64_dvd_12194995\\setup.exe /configurationfile=C:\\soft\\SQL\\ConfigurationFile.ini",
"delta": "0:00:00.281262",
"end": "2020-09-03 12:22:04.376021",
"rc": 0,
"start": "2020-09-03 12:22:04.094758",
"stderr": "",
"stderr_lines": [],
"stdout": "",
"stdout_lines": []
}
META: ran handlers
META: ran handlers
PLAY RECAP ******************************************************************************
172.27.46.19 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
при этом скрипт
C:\soft\SQL\en_sql_server_2016_developer_with_service_pack_2_x64_dvd_12194995\setup.exe /configurationfile=C:\soft\SQL\ConfigurationFile.ini
на целевой машине из PS запускает установку
с Ansible простой скрипт создания каталога выполняется без ошибок:
- name: Create a directory using PowerShell
hosts: testserver
tasks:
- name: Create dir temp
win_shell: New-Item -Path C:\Temp -ItemType Directory
Никто не сталкивался с подобной проблемой? или кто подскажет где м.б. ошибка? Спасибо!
Ответы (1 шт):
удалось решить, путем прописывания полного конфиг файла в строку установки в качестве параметров
C:\soft\SQL\sql_server_2016_sp2\setup.exe `
/ACTION="Install" `
/PID="22222-00000-00000-00000-00000" `
/SUPPRESSPRIVACYSTATEMENTNOTICE="False" `
/IACCEPTSQLSERVERLICENSETERMS="True" `
/IACCEPTROPENLICENSETERMS="False" `
/ENU="True" `
/QUIET="True" `
/QUIETSIMPLE="False" `
/UpdateEnabled="True" `
/USEMICROSOFTUPDATE="False" `
/FEATURES=SQLENGINE `
/UpdateSource="MU" `
/HELP="False" `
/INDICATEPROGRESS="False" `
/X86="False" `
/INSTANCENAME="ANSIBLE_TEST" `
/INSTALLSHAREDDIR="C:\Program Files\Microsoft SQL Server" `
/INSTALLSHAREDWOWDIR="C:\Program Files (x86)\Microsoft SQL Server" `
/INSTANCEID="ANSIBLE_TEST" `
/SQLTELSVCSTARTUPTYPE="Automatic" `
/SQLTELSVCACCT="NT AUTHORITY\Network Service" `
/INSTANCEDIR="C:\Program Files\Microsoft SQL Server" `
/AGTSVCACCOUNT="NT AUTHORITY\Network Service" `
/AGTSVCSTARTUPTYPE="Manual" `
/ASBACKUPDIR `
/ASCOLLATION `
/ASCONFIGDIR `
/ASDATADIR `
/ASLOGDIR `
/COMMFABRICPORT="0" `
/COMMFABRICNETWORKLEVEL="0" `
/COMMFABRICENCRYPTION="0" `
/MATRIXCMBRICKCOMMPORT="0" `
/SQLSVCSTARTUPTYPE="Automatic" `
/FILESTREAMLEVEL="0" `
/ENABLERANU="False" `
/SQLCOLLATION="SQL_Latin1_General_CP1_CI_AS" `
/SQLSVCACCOUNT="NT AUTHORITY\Network Service" `
/SQLSVCINSTANTFILEINIT="False" `
/SQLSYSADMINACCOUNTS="ANSIBLE-TEST\Administrator" `
/SQLTEMPDBFILECOUNT="1" `
/SQLTEMPDBFILESIZE="8" `
/SQLTEMPDBFILEGROWTH="64" `
/SQLTEMPDBLOGFILESIZE="8" `
/SQLTEMPDBLOGFILEGROWTH="64" `
/ADDCURRENTUSERASSQLADMIN="False" `
/TCPENABLED="0" `
/NPENABLED="0" `
/BROWSERSVCSTARTUPTYPE="Disabled"
можно вставить прямо в playbook в модуль win_shell:
параметры можно посмотреть тут: https://docs.microsoft.com/ru-ru/sql/database-engine/install-windows/install-sql-server-from-the-command-prompt?view=sql-server-ver15