如何在Debian 9上安装和配置Ansible以与Windows Server一起使用

・5 分钟阅读

使用不同的系统?

Ansible是一个用于自动化任务的开源工具,它管理你的Linux和Windows服务器的配置,它在没有代理的情况下工作,这意味着Ansible使用SSH和当前用户SSH授权。

你可以使用Ansible来自动化三种类型的任务:

  • 配置:在基础设施中设置你需要的几个服务器,
  • 配置管理:更改应用程序,操作系统或设备的配置; 启动和停止服务;安装或更新应用程序; 实现安全策略;或者执行各种其他配置任务,
  • 应用程序部署:通过自动将内部开发的应用程序部署到生产系统,使DevOps更容易部署。

本文会指导你通过Debian拉伸的安装和安装过程,以及在Windows Server上运行的机器的管理配置。

前提条件

  • 一个sudo用户
  • Debian 9 Stretch服务器实例,

安装

将以下行添加到/etc/apt/sources.list 。


deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main

添加repo键。


sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367

更新系统。

 
sudo apt-get update

 

安装Ansible 。


sudo apt-get install ansible

要管理Windows服务器,你需要安装以下软件包:

  • python-pip
  • pip
  • pywinrm

安装python软件包。


sudo apt-get install python-pip pip

安装WinRM (Windows远程管理)。


sudo apt-get install pywinrm

确认Ansible Installation安装

通过使用以下命令检索它版本来测试波塞安安装。


ansible --version
ansible 2.4.1.0
config file = None
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/local/lib/python2.7/dist-packages/ansible-2.4.1.0-py2.7.egg/ansible
executable location = /usr/local/bin/ansible
python version = 2.7.13 (default, Jan 19 2017, 14:48:08) [GCC 6.3.0 20170118]

配置Ansible for Windows服务器管理

转到Ansible目录。

 
cd/etc/ansible

 

使用你喜爱的文本编辑器编辑hosts文件。

 
nano hosts

 

windows组的底部添加以下行。


[windows]
server1.domain.local
server1.domain.local

创建包含Windows Server访问标识符的加密保管库是有必要的,为此,我们会创建一个新的加密yml文件,文件名必须与它应应用到的主机组匹配,本例中,创建的组称为windows,因此文件为windows.yml


mkdir group_vars
cd group_vars
ansible-vault create windows.yml

yml文件中,添加以下参数。


ansible_ssh_user: _your_ssh_user_
ansible_ssh_pass: _your_ssh_pass_
ansible_ssh_port: 5986
ansible_connection: winrm
ansible_winrm_server_cert_validation: ignore

配置Windows Server

PowerShell脚本可用于自动配置你的计算机,此脚本会自动配置WinRM (Windows远程管理),并且打开防火墙。

从以下位置下载PowerShell脚本GitHub

修改PowerShell脚本的执行规则以允许执行脚本。


Set-ExecutionPolicy RemoteSigned

执行脚本。


.ConfigureRemotingForAnsible.ps1

你的Windows Server现在可以使用Ansible进行远程管理了。

讨论
Zuoxiaojuan profile image