Ansiable 사용 자동 배포 Veeam 백업 및 복제 9.5U4b

Ansiable 사용 자동 배포 Veeam 백업 및 복제 9.5U4b

머리말

푸른, AWS : CMP (파이프 클라우드 플랫폼) 파트너 만들어진 요구에 여행 지난 주 동안 같은 지난 해에 등록 된 국가의 공공 클라우드 플랫폼, 다른 후 VBR 무인 인해 Veeeam를 설치합니다 Veeam 자신의 숙제를의 텐센트 구름, 알리 간다 ... 그 전에, 내가 설치를 무인. 하여 형제와 이야기하고 동안이, 나는 이렇게하고, 자동화 기능의 대부분이 Ansible 달성하는 CMP 환경으로 DRaaS 및 CMP,이 프로모션은의 Veeam CMP 파트너의 미래에있을 것입니다 사용하는 경우 이 부스터 앞서 갔다.

주요 내용

  • 1 Ansible 소개
  • 이 전제 조건 : Veeam 자동 설치 모드
  • 배포 환경을 준비하기 위해 3 Ansiable 자동화 환경 준비
    • 자동화 엔진 3.1 - 서버 배포 Ansible
    • 3.2 실행 개체 - Windows 배포 서버
    • 3.3의 WinRM 및 계정 인증 모드
  • 4 연결 테스트, 윈 - 핑
  • 5 프로세스 오케스트레이션 Asible 각본을 쓰기
  • 6 자동 배포 Asible 각본 수행
  • 참고 도서 및 권장 읽기
  • 원본 기사 링크

1 Ansiable 소개

세계 흐린 관리에서, 우리는 종종 자동화 된 배포 문제에 대해 설명합니다. 그리고 한이 Windows 서버에 온다, 필연적으로 한숨된다. Windows 지원을위한 많은 도구는 대부분의 경우에, 아주 좋은 아니기 때문에, 우리는 Windows 도구와 환경의 별도의 세트에 참여해야합니다. 그리고 우리 모두가 같은 ansible 이유는 운영 및 자동화 도구의 유지 보수가 다양한 시스템의 넓은 범위를 지원하는 것입니다, 물론, 가장 중요한 점은 윈도우를 지원한다는 것입니다 ;-)

Ansible 실행, 그것은 흡수하고, 파이썬에서 개발, 뛰어난 운영 및 자동화 도구의 유지 보수입니다 전송, 시스템 구성의 다양한 하나의 장점 관리 도구 (꼭두각시, 요리사, FUNC, 패브릭 ...)를 결합 및 대량 배포를 얻을 수 있습니다 명령 기능. 그래서 좋은, 그래서 2015 년 레드햇 소득 팔이었다. Ansible은 모듈 자체의 작업을 기반으로하는 자동화 된 엔진으로, 우리는 일반적으로 자동화 된 언어는 작업의 종류의 각본으로 실행됩니다 정의합니다. 인기 말하기, Ansible는 자동 연주 피아노처럼, 그리고 각본, 음악, 그리고 Ansible 타워는 다음과 같이 인터페이스 UI와 평안한 API의, Ansible 아키텍처를 제공하는 것입니다 :

Ansiable

또한 언제든지 환영하고 내가 논의 "Ansible 마스터"이 권장 제시 키팅 위대한 하나님에 대한 자세한 내용을 보려면.

제시 키팅에 의해 "마스터 Ansible"
https://www.ansible.com/resources/ebooks/mastering-ansible

이 전제 조건 : Veeam 자동 설치 모드

Ansible 플레이 북은 내가 설치 (여기서 우리는 윈도우 A를 VBR 서버로 서버 2019을 사용) 및 Ansible의 구현에 자동 설치 Veeam 백업 및 복제 서버를 사용, Veeam 백업 및 복제 서버 9.5 업데이트 4B를 배포, 윈도우 서버 생성.

Veeam도 매우입니다 아주 좋은 자동 설치 모드, 사용자가 무인의 경우, 대량의 설치를 사용자 정의하려고 할 수 있습니다 거의 모든 구성 요소는 재해 복구 자동화, 자동으로 설치 될 수있다 도움이됩니다.

安装的顺序与模块如下,详情请参考,Veeam的官方文档。

User Guide for VMware vSphere > Deployment > Installing Veeam Backup & Replication in Unattended Mode

[《Veeam 静默安装 》] (https://helpcenter.veeam.com/docs/backup/vsphere/silent_mode.html?ver=95u4)

  • Veeam Backup Catalog
  • Veeam Backup & Replication Server
  • Veeam Backup & Replication Console
  • Veeam Explorers:
    • Veeam Explorer for Active Directory
    • Veeam Explorer for Exchange
    • Veeam Explorer for Oracle
    • Veeam Explorer for SharePoint
    • Veeam Explorer for Microsoft SQL
  • Veeam Update 4b

目前在云管理模式下, Veeam Backup Enterprise Manager 和 Cloud Connect Portal 都自定义部署,而且通常是多对一模式,在此我们没有涉及。

3 Ansiable 自动化部署环境准备

3.1 自动化引擎--Ansible 服务器的部署

Linux 版本与 扩展库配置

此处我们使用CentOS 7.7 做为Ansible 服务器,版本如下,我们只需要进行OS的最小化安装即可

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)
[root@localhost ~]# 

先为Yum库配置epel源,再安装Ansible

yum install -y epel-release
yum update -y
yum install -y ansible git vim htop

安装Python PiP 与 pywinrm

yum install -y python-pip
pip install --upgrade pip # optional
pip install pywinrm

配置Inventory文件,定义hosts

此处为了简便,我们使用Ansible默认的inventory文件,/etc/ansible/hosts

[VBR]
172.16.60.133

[VBR:vars]
ansible_connection=winrm
ansible_user="Administrator"
#ansible_ssh_pass=!vault | $ANSIBLE_VAULT;1.1;AES256
ansible_ssh_port=5985
ansible_winrm_server_cert_validation=ignore
ansible_winrm_transport=ntlm

执行对象--Windows 服务器的部署

在我们的环境中,Windows是我们自动化安装VBR的服务器。 为了使 Windows Server 准备授予 WinRM 访问权限,我使用了以下脚本使我们环境可以快速的Ready!

ConfigureRemotingForAnsible.ps1 脚本,您可以前往Ansible社区的Github下载,脚本执行如下
ConfigureRemotingForAnsible.ps1

PS C:\Users\Administrator\Desktop\code> .\ConfigRemotingForAnsiable.ps1 -Verbose
VERBOSE: Verifying WinRM service.
VERBOSE: PS Remoting is already enabled.
VERBOSE: SSL listener is already active.
VERBOSE: Basic auth is already enabled.
VERBOSE: Firewall rule already exists to allow WinRM HTTPS.
VERBOSE: HTTP: Enabled | HTTPS: Enabled
VERBOSE: PS Remoting has been successfully configured for Ansible.
PS C:\Users\Administrator\Desktop\code>

WinRM 及 帐户身份验证模式

Ansible 从1.7之后的版本支持 Windows服务的管理,管理机仍然需要一台Linux服务器,通信方式为PowerShell,为了与Windows通信管理机还须要安装WinRm模块,方可和远程Windows主机正常通信。

WinRM使用帐户身份验证时,可以使用几种不同的选项,在这里我选择了 NTLM + Ansiable 加密模块 的方式作为 WinRM 帐户身份验证。

注意:在本文中使用的密码方式,是通过Ansible 加密做为密码传递基础的,您可以使用不同的选项,如明文密码。此方法在Hosts文件定义主机时,和在YAML文件中定义Playbook的方法相同。Ansible 加密方法不是本文讨论的重点,如关心此处请查看Ansible 手册

选项 本地账户 AD账户 凭据委托 HTTP 加密
Basic
Certificate
Kerberos
NTLM
CredSSP

4 连通性测试,win-ping

ansible 有一个非常好的工具win-ping,专门用来测试与Windows的Host定义是不是可以联通。详情可以参照,Asiable的手册。

[《Ansible 用户手册》] (https://https://docs.ansible.com/ansible/2.5/user_guide/quickstart.html)

[root@localhost ~]# ansible VBR -m win_ping --vault-password-file vault_pass.txt 

172.16.60.133 | SUCCESS => {
    "changed": false, 
    "ping": "pong"
}

5 쓰기 Asible 플레이 북 자동화 된 오케스트레이션

모든 사전 정의 된 응답이, 우리의 서버가 VBR에 대해 정의 된 매뉴얼 Veeam을 참조하시기 바랍니다 플레이 북에도이 솔루션은 실제 호스트 이름이, 각본은 자동으로 필요한 매개 변수를 처리 할 수있는 win_package Ansible 모듈을 상속 대부분의 탈출했다. 소프트웨어 소스의 정의에서, 내가 가장 간단한 경로를 제공, 당신은 수요의 측면에서 정의 할 수 있습니다.

- name: VBR Community Edition Setup
  hosts: VBR
  gather_facts: yes
  vars:
    vbr_source: "D:\\"
    sql_username: "svc_sql"
    sql_userpassword: !vault|
        $ANSIBLE_VAULT;1.1;AES256
    sql_sapassword: !vault |
        $ANSIBLE_VAULT;1.1;AES256
  tasks:
  - name: Pre - Install 2012 System CLR Types
    win_package:
        path: "{{ vbr_source }}Redistr\\x64\\SQLSysClrTypes.msi"
        state: present
    tags: pre
  - name: Pre - Install 2012 Shared management objects
    win_package:
        path: "{{ vbr_source }}Redistr\\x64\\SharedManagementObjects.msi"
        state: present
    tags: pre
  - name: SQL - Create Local SQL User
    win_user:
        name: "{{ sql_username }}"
        password: "{{ sql_userpassword }}"
        password_never_expires: yes
        state: present
        groups:
            - Users
    tags: pre
  - name: SQL - Install SQL 2016 Express
    win_package:
        path: "{{ vbr_source }}Redistr\\x64\\SqlExpress\\2016SP1\\SQLEXPR_x64_ENU.exe"
        product_id: SQL 2016 Express
        arguments: 
        - '/q'
        - '/ACTION=Install'
        - '/IACCEPTSQLSERVERLICENSETERMS' 
        - '/FEATURES=SQL' 
        - '/INSTANCENAME=VEEAMSQL2016'
        - '/SQLSVCACCOUNT={{ sql_username }}'
        - '/SQLSVCPASSWORD={{ sql_userpassword }}'
        - '/SECURITYMODE=SQL'
        - '/SAPWD={{ sql_sapassword }}'
        - '/ADDCURRENTUSERASSQLADMIN'
        - '/UPDATEENABLED=0'
        - '/TCPENABLED=1'
        - '/NPENABLED=1'
    tags: sql
  - name: Install VBR Catalog
    win_package:
        path: "{{ vbr_source }}Catalog\\VeeamBackupCatalog64.msi"
        state: present
        arguments:
            - 'VBRC_SERVICE_ACCOUNT_TYPE=1'
            - 'ACCEPT_THIRDPARTY_LICENSES=1'
    tags: vbr
  - name: Install VBR Server
    win_package:
        path: "{{ vbr_source }}Backup\\Server.x64.msi"
        state: present
        arguments: "VBR_SERVICE_ACCOUNT_TYPE=1 VBR_SQLSERVER_AUTHENTICATION=1 VBR_SQLSERVER_SERVER=(local)\\VEEAMSQL2016 VBR_SQLSERVER_USERNAME=sa VBR_SQLSERVER_PASSWORD={{ sql_sapassword }} ACCEPT_THIRDPARTY_LICENSES=1 ACCEPTEULA=YES"
    tags: vbr
  - name: Install VBR Console
    win_package:
        path: "{{ vbr_source }}Backup\\Shell.x64.msi"
        state: present
        arguments:
            - 'ACCEPTEULA=YES'
            - 'ACCEPT_THIRDPARTY_LICENSES=1'
    tags: vbr
  - name: Install VBR Explorer for ActiveDirectory
    win_package:
        path: "{{ vbr_source }}Explorers\\VeeamExplorerForActiveDirectory.msi"
        state: present
        arguments:
            - 'ACCEPT_EULA=1'
            - 'ACCEPT_THIRDPARTY_LICENSES=1'
    tags: vbr
  - name: Install VBR Explorer for Exchange
    win_package:
        path: "{{ vbr_source }}Explorers\\VeeamExplorerForExchange.msi"
        state: present
        arguments:
            - 'ACCEPT_EULA=1'
            - 'ACCEPT_THIRDPARTY_LICENSES=1'
    tags: vbr
  - name: Install VBR Explorer for Oracle
    win_package:
        path: "{{ vbr_source }}Explorers\\VeeamExplorerForOracle.msi"
        state: present
        arguments:
            - 'ACCEPT_EULA=1'
            - 'ACCEPT_THIRDPARTY_LICENSES=1'
    tags: vbr
  - name: Install VBR Explorer for SharePoint
    win_package:
        path: "{{ vbr_source }}Explorers\\VeeamExplorerForSharePoint.msi"
        state: present
        arguments:
            - 'ACCEPT_EULA=1'
            - 'ACCEPT_THIRDPARTY_LICENSES=1'
    tags: vbr
  - name: Install VBR Explorer for SQL
    win_package:
        path: "{{ vbr_source }}Explorers\\VeeamExplorerForSQL.msi"
        state: present
        arguments:
            - 'ACCEPT_EULA=1'
            - 'ACCEPT_THIRDPARTY_LICENSES=1'
    tags: vbr
  - name: Install VBR Update 4b
    win_package:
        path: "{{ vbr_source }}Updates\\veeam_backup_9.5.4.2866.update4b_setup.exe"
        product_id: VBR Update 4b
        arguments: "/silent /noreboot VBR_AUTO_UPGRADE=1"
    tags: update

실행 Asible 플레이 북의 설치를 자동화

[root@localhost ~]# ansible-playbook ./Veeam_setup.yml --vault-password-file vault_pass.txt 

PLAY [VBR Community Edition Setup] *******************************************************************************

TASK [Gathering Facts] *******************************************************************************************
ok: [172.16.60.133]

TASK [Pre - Install 2012 System CLR Types] ***********************************************************************
changed: [172.16.60.133]

TASK [Pre - Install 2012 Shared management objects] **************************************************************
changed: [172.16.60.133]

TASK [SQL - Create Local SQL User] *******************************************************************************
ok: [172.16.60.133]

TASK [SQL - Install SQL 2016 Express] ****************************************************************************
changed: [172.16.60.133]

TASK [Install VBR Catalog] ***************************************************************************************
changed: [172.16.60.133]

TASK [Install VBR Server] ****************************************************************************************
changed: [172.16.60.133]

TASK [Install VBR Console] ***************************************************************************************
changed: [172.16.60.133]

TASK [Install VBR Explorer for ActiveDirectory] ******************************************************************
changed: [172.16.60.133]

TASK [Install VBR Explorer for Exchange] *************************************************************************
changed: [172.16.60.133]

TASK [Install VBR Explorer for Oracle] ***************************************************************************
changed: [172.16.60.133]

TASK [Install VBR Explorer for SharePoint] ***********************************************************************
changed: [172.16.60.133]

TASK [Install VBR Explorer for SQL] ******************************************************************************
changed: [172.16.60.133]

TASK [Install VBR Update 4b] *************************************************************************************
changed: [172.16.60.133]

PLAY RECAP *******************************************************************************************************
172.16.60.133              : ok=14   changed=12   unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

이 시점에서 우리가 시작된해야하는 서버 서비스를 볼 수 있습니다

PS C:\Users\Administrator> Get-service Veeam*

Status   Name               DisplayName
------   ----               -----------
Running  VeeamBackupSvc     Veeam Backup Service
Running  VeeamBrokerSvc     Veeam Broker Service
Running  VeeamCatalogSvc    Veeam Guest Catalog Service
Running  VeeamCloudSvc      Veeam Cloud Connect Service
Running  VeeamDeploySvc     Veeam Installer Service
Running  VeeamDistributi... Veeam Distribution Service
Running  VeeamMountSvc      Veeam Mount Service
Running  VeeamNFSSvc        Veeam vPower NFS Service
Running  VeeamTransportSvc  Veeam Data Mover Service


PS C:\Users\Administrator> Get-service SQL*

Status   Name               DisplayName
------   ----               -----------
Stopped  SQLAgent$VEEAMS... SQL Server Agent (VEEAMSQL2016)
Running  SQLBrowser         SQL Server Browser
Running  SQLTELEMETRY$VE... SQL Server CEIP service (VEEAMSQL2016)
Running  SQLWriter          SQL Server VSS Writer

참고 도서 및 권장 읽기

[1 'Veeam 자동 설치 "(https://helpcenter.veeam.com/docs/backup/vsphere/silent_mode.html?ver=95u4)
https://helpcenter.veeam.com/docs/backup/vsphere/ ? silent_mode.html 버전 = 95u4

[2. "Ansible 사용자 설명서"] (HTTPS : // HTTPS : //docs.ansible.com/ansible/2.5/user_guide/quickstart.html)
https://www.ansible.com / 자원 / 전자 책 / 마스터 - ansible

3. "ansible 마스터"제시 키팅에 의해
https://www.ansible.com/resources/ebooks/mastering-ansible

추천

출처www.cnblogs.com/data2clouds/p/11785325.html