diff options
Diffstat (limited to 'ansible')
-rw-r--r-- | ansible/main.yaml | 158 | ||||
-rw-r--r-- | ansible/roles/mssql02/tasks/main.yaml | 8 | ||||
-rw-r--r-- | ansible/roles/mssql02/tasks/set_hostname.yaml | 2 | ||||
-rw-r--r-- | ansible/roles/websql01/tasks/main.yaml | 6 | ||||
-rw-r--r-- | ansible/roles/websql01/tasks/setup_mssql_link.yaml | 5 | ||||
-rw-r--r-- | ansible/scripts/setup-mssql-link.ps1 | 6 |
6 files changed, 98 insertions, 87 deletions
diff --git a/ansible/main.yaml b/ansible/main.yaml index bbe6ddf..bfba12d 100644 --- a/ansible/main.yaml +++ b/ansible/main.yaml @@ -31,84 +31,55 @@ ansible_winrm_server_cert_validation: ignore changed_when: false - # - name: "deploy {{ main_linux_srv01_hostname }}.{{ main_domain_name }} vm on {{ proxmox_hostname }}" - # include_role: - # name: proxmox_vm - # vars: - # os_type : "linux" - # template : "{{ linux_server_template_name }}" - # id : "{{ linux_server_template_id }}" - # vm : "{{ main_linux_srv01_hostname }}.{{ main_domain_name }}" - # newid : "{{ main_linux_srv01_vmid }}" - # vmid : "{{ main_linux_srv01_vmid }}" - # ip : "{{ main_linux_srv01_ip_address }}" - # gateway : "{{ network_gateway }}" - # dns : "{{ main_dc01_ip_address }}" - # hostname : "{{ main_linux_srv01_hostname }}" - # domain : "{{ main_domain_name }}" - # fqdn : "{{ main_linux_srv01_hostname }}.{{ main_domain_name }}" - # - # - name: "add {{ main_linux_srv01_hostname }}.{{ main_domain_name }} to in-memory inventory" - # add_host: - # name : "{{ main_linux_srv01_hostname }}.{{ main_domain_name }}" - # ansible_host : "{{ main_linux_srv01_ip_address }}" - # ansible_connection : "{{ linux_connector }}" - # ansible_user : "{{ default_linux_username }}" - # ansible_password : "{{ default_linux_password }}" - # ansible_port : "{{ linux_port }}" - # ansible_host_key_checking : false - # changed_when: false - # - # - name: "deploy {{ main_adcs01_hostname }}.{{ main_domain_name }} vm on {{ proxmox_hostname }}" - # include_role: - # name: proxmox_vm - # vars: - # os_type : "windows" - # template : "{{ windows_server_template_name }}" - # id : "{{ windows_server_template_id }}" - # vm : "{{ main_adcs01_hostname }}.{{ main_domain_name }}" - # newid : "{{ main_adcs01_vmid }}" - # vmid : "{{ main_adcs01_vmid }}" - # ip : "{{ main_adcs01_ip_address }}" - # gateway : "{{ network_gateway }}" - # dns : "{{ main_dc01_ip_address }}" - # hostname : "{{ main_adcs01_hostname }}" - # domain : "{{ main_domain_name }}" - # fqdn : "{{ main_adcs01_hostname }}.{{ main_domain_name }}" - # - # - name: "add {{ main_adcs01_hostname }}.{{ main_domain_name }} to in-memory inventory" - # add_host: - # name : "{{ main_adcs01_hostname }}.{{ main_domain_name }}" - # ansible_host : "{{ main_adcs01_ip_address }}" - # ansible_connection : "{{ win_connector }}" - # ansible_user : "{{ default_win_username }}" - # ansible_password : "{{ default_win_password }}" - # ansible_port : "{{ win_port }}" - # ansible_winrm_transport : basic - # ansible_winrm_server_cert_validation: ignore - # changed_when: false + - name: "deploy {{ main_linux_srv01_hostname }}.{{ main_domain_name }} vm on {{ proxmox_hostname }}" + include_role: + name: proxmox_vm + vars: + os_type : "linux" + template : "{{ linux_server_template_name }}" + id : "{{ linux_server_template_id }}" + vm : "{{ main_linux_srv01_hostname }}.{{ main_domain_name }}" + newid : "{{ main_linux_srv01_vmid }}" + vmid : "{{ main_linux_srv01_vmid }}" + ip : "{{ main_linux_srv01_ip_address }}" + gateway : "{{ network_gateway }}" + dns : "{{ main_dc01_ip_address }}" + hostname : "{{ main_linux_srv01_hostname }}" + domain : "{{ main_domain_name }}" + fqdn : "{{ main_linux_srv01_hostname }}.{{ main_domain_name }}" - - name: "deploy {{ main_websql01_hostname }}.{{ main_domain_name }} vm on {{ proxmox_hostname }}" + - name: "add {{ main_linux_srv01_hostname }}.{{ main_domain_name }} to in-memory inventory" + add_host: + name : "{{ main_linux_srv01_hostname }}.{{ main_domain_name }}" + ansible_host : "{{ main_linux_srv01_ip_address }}" + ansible_connection : "{{ linux_connector }}" + ansible_user : "{{ default_linux_username }}" + ansible_password : "{{ default_linux_password }}" + ansible_port : "{{ linux_port }}" + ansible_host_key_checking : false + changed_when: false + + - name: "deploy {{ main_adcs01_hostname }}.{{ main_domain_name }} vm on {{ proxmox_hostname }}" include_role: name: proxmox_vm vars: os_type : "windows" template : "{{ windows_server_template_name }}" id : "{{ windows_server_template_id }}" - vm : "{{ main_websql01_hostname }}.{{ main_domain_name }}" - newid : "{{ main_websql01_vmid }}" - vmid : "{{ main_websql01_vmid }}" - ip : "{{ main_websql01_ip_address }}" + vm : "{{ main_adcs01_hostname }}.{{ main_domain_name }}" + newid : "{{ main_adcs01_vmid }}" + vmid : "{{ main_adcs01_vmid }}" + ip : "{{ main_adcs01_ip_address }}" gateway : "{{ network_gateway }}" dns : "{{ main_dc01_ip_address }}" - hostname : "{{ main_websql01_hostname }}" + hostname : "{{ main_adcs01_hostname }}" domain : "{{ main_domain_name }}" - fqdn : "{{ main_websql01_hostname }}.{{ main_domain_name }}" + fqdn : "{{ main_adcs01_hostname }}.{{ main_domain_name }}" - - name: "add {{ main_websql01_hostname }}.{{ main_domain_name }} to in-memory inventory" + - name: "add {{ main_adcs01_hostname }}.{{ main_domain_name }} to in-memory inventory" add_host: - name : "{{ main_websql01_hostname }}.{{ main_domain_name }}" - ansible_host : "{{ main_websql01_ip_address }}" + name : "{{ main_adcs01_hostname }}.{{ main_domain_name }}" + ansible_host : "{{ main_adcs01_ip_address }}" ansible_connection : "{{ win_connector }}" ansible_user : "{{ default_win_username }}" ansible_password : "{{ default_win_password }}" @@ -146,6 +117,35 @@ ansible_winrm_server_cert_validation: ignore changed_when: false + - name: "deploy {{ main_websql01_hostname }}.{{ main_domain_name }} vm on {{ proxmox_hostname }}" + include_role: + name: proxmox_vm + vars: + os_type : "windows" + template : "{{ windows_server_template_name }}" + id : "{{ windows_server_template_id }}" + vm : "{{ main_websql01_hostname }}.{{ main_domain_name }}" + newid : "{{ main_websql01_vmid }}" + vmid : "{{ main_websql01_vmid }}" + ip : "{{ main_websql01_ip_address }}" + gateway : "{{ network_gateway }}" + dns : "{{ main_dc01_ip_address }}" + hostname : "{{ main_websql01_hostname }}" + domain : "{{ main_domain_name }}" + fqdn : "{{ main_websql01_hostname }}.{{ main_domain_name }}" + + - name: "add {{ main_websql01_hostname }}.{{ main_domain_name }} to in-memory inventory" + add_host: + name : "{{ main_websql01_hostname }}.{{ main_domain_name }}" + ansible_host : "{{ main_websql01_ip_address }}" + ansible_connection : "{{ win_connector }}" + ansible_user : "{{ default_win_username }}" + ansible_password : "{{ default_win_password }}" + ansible_port : "{{ win_port }}" + ansible_winrm_transport : basic + ansible_winrm_server_cert_validation: ignore + changed_when: false + - name: configure hosts hosts: all gather_facts: no @@ -155,22 +155,22 @@ name: dc01 when: inventory_hostname == main_dc01_hostname + '.' + main_domain_name - # - name: "configure {{ main_linux_srv01_hostname }}.{{ main_domain_name }}" - # include_role: - # name: srv01 - # when: inventory_hostname == main_linux_srv01_hostname + '.' + main_domain_name - # - # - name: "configure {{ main_adcs01_hostname }}.{{ main_domain_name }}" - # include_role: - # name: adcs01 - # when: inventory_hostname == main_adcs01_hostname + '.' + main_domain_name - - - name: "configure {{ main_websql01_hostname }}.{{ main_domain_name }}" + - name: "configure {{ main_linux_srv01_hostname }}.{{ main_domain_name }}" include_role: - name: websql01 - when: inventory_hostname == main_websql01_hostname + '.' + main_domain_name + name: srv01 + when: inventory_hostname == main_linux_srv01_hostname + '.' + main_domain_name + + - name: "configure {{ main_adcs01_hostname }}.{{ main_domain_name }}" + include_role: + name: adcs01 + when: inventory_hostname == main_adcs01_hostname + '.' + main_domain_name - name: "configure {{ main_mssql02_hostname }}.{{ main_domain_name }}" include_role: name: mssql02 when: inventory_hostname == main_mssql02_hostname + '.' + main_domain_name + + - name: "configure {{ main_websql01_hostname }}.{{ main_domain_name }}" + include_role: + name: websql01 + when: inventory_hostname == main_websql01_hostname + '.' + main_domain_name diff --git a/ansible/roles/mssql02/tasks/main.yaml b/ansible/roles/mssql02/tasks/main.yaml index 64c2469..9843323 100644 --- a/ansible/roles/mssql02/tasks/main.yaml +++ b/ansible/roles/mssql02/tasks/main.yaml @@ -27,11 +27,11 @@ pause: minutes: 5 -- name: execute setup-mssql-link.ps1 - import_tasks: setup_mssql_link.yaml +#- name: execute setup-mssql-link.ps1 +#import_tasks: setup_mssql_link.yaml -- name: reboot after mssql link setup - import_tasks: reboot.yaml +#- name: reboot after mssql link setup +#import_tasks: reboot.yaml - name: execute install-software.ps1 import_tasks: install_software.yaml diff --git a/ansible/roles/mssql02/tasks/set_hostname.yaml b/ansible/roles/mssql02/tasks/set_hostname.yaml index 7c53a16..ffea2ae 100644 --- a/ansible/roles/mssql02/tasks/set_hostname.yaml +++ b/ansible/roles/mssql02/tasks/set_hostname.yaml @@ -1,2 +1,2 @@ - name: set hostname - win_shell: Rename-Computer -NewName "{{ main_websql01_hostname }}" -Force + win_shell: Rename-Computer -NewName "{{ main_mssql02_hostname }}" -Force diff --git a/ansible/roles/websql01/tasks/main.yaml b/ansible/roles/websql01/tasks/main.yaml index f176701..ba1f190 100644 --- a/ansible/roles/websql01/tasks/main.yaml +++ b/ansible/roles/websql01/tasks/main.yaml @@ -27,6 +27,12 @@ pause: minutes: 5 +- name: execute setup-mssql-link.ps1 + import_tasks: setup_mssql_link.yaml + +- name: reboot after mssql link setup + import_tasks: reboot.yaml + - name: execute install-software.ps1 import_tasks: install_software.yaml diff --git a/ansible/roles/websql01/tasks/setup_mssql_link.yaml b/ansible/roles/websql01/tasks/setup_mssql_link.yaml new file mode 100644 index 0000000..1227d62 --- /dev/null +++ b/ansible/roles/websql01/tasks/setup_mssql_link.yaml @@ -0,0 +1,5 @@ +- name: execute setup-mssql-link.ps1 + ansible.windows.win_powershell: + script: C:\scripts\setup-mssql-link.ps1 + parameters: + LinkServer: mssql02 diff --git a/ansible/scripts/setup-mssql-link.ps1 b/ansible/scripts/setup-mssql-link.ps1 index 614bd67..46aab23 100644 --- a/ansible/scripts/setup-mssql-link.ps1 +++ b/ansible/scripts/setup-mssql-link.ps1 @@ -1,6 +1,6 @@ param ( - [string]$LinkServer = "websql01" + [string]$LinkServer = "mssql02" ) $scriptName = $MyInvocation.MyCommand.Name $logFile = "C:\Logs\${scriptName}_log.txt" @@ -11,8 +11,8 @@ try { SqlCmd -E -Q "EXEC master.dbo.sp_serveroption @server=N'$LinkServer', @optname=N'rpc', @optvalue=N'true'" SqlCmd -E -Q "EXEC master.dbo.sp_serveroption @server=N'$LinkServer', @optname=N'rpc out', @optvalue=N'true'" SqlCmd -E -Q "EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'$LinkServer', @locallogin = NULL , @useself = N'True'" - Write-Host "[inf] Linked $LinkServer to mssql02" + Write-Host "[inf] Linked $LinkServer to websql01" } catch { - Write-Host "[err] Failed to link $LinkServer to mssql02" + Write-Host "[err] Failed to link $LinkServer to websql01" } Stop-Transcript |