summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorheqnx <root@heqnx.com>2025-07-15 22:59:23 +0300
committerheqnx <root@heqnx.com>2025-07-15 22:59:23 +0300
commitbc8a03d6f0a00ee8fb8052052efb3d126c53e04c (patch)
tree6277fb20f0e12264d5c614e154b4571c015e9986
parente0d72ff69004820c4dc5ce9f8366510e098d0b6b (diff)
downloadansible-active-directory-range-bc8a03d6f0a00ee8fb8052052efb3d126c53e04c.tar.gz
ansible-active-directory-range-bc8a03d6f0a00ee8fb8052052efb3d126c53e04c.zip
reversed mssql link
-rw-r--r--ansible/main.yaml158
-rw-r--r--ansible/roles/mssql02/tasks/main.yaml8
-rw-r--r--ansible/roles/mssql02/tasks/set_hostname.yaml2
-rw-r--r--ansible/roles/websql01/tasks/main.yaml6
-rw-r--r--ansible/roles/websql01/tasks/setup_mssql_link.yaml5
-rw-r--r--ansible/scripts/setup-mssql-link.ps16
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