Centos7上的Ansible管理Windows主机的部署
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、Windows主机上的配置
- 1.检查windows客户机powershell版本
- 2.下载并安装Microsoft .NET Framework 4.5和powershell5.1(如果系统中的版本大于或者等于此版本可以不用执行这一步操作)
- 3、升级完成后检查powershell版本
- 4、查看powershell执行策略(如果不是RemoteSigned则修改执行策略)
- 5、配置winrm service并启动服务(注意需要使用管理员身份启动cmd)
- 6、查看winrm service启动监听状态
- 7、修改winrm配置,启用远程连接认证
- 8、添加防火墙信任规则,允许5985端口通过
- 二、Centos部分(Ansible管理主机)
- 依赖python3环境(没有Python3以上的环境才需要安装)
- 1、安装PIP命令
- 2、安装pywinrm插件
- 3、pip安装ansible
- 4、配置文件hosts
- 5、验证与windows主机的通信
- 部署时的坑
- linux与windows建立信任
前言
使用Centos7去管理公司的多台windows主机,使windows上的文件可以批量更新
一、Windows主机上的配置
1.检查windows客户机powershell版本
输入powershell命令进入powershell模式
输入get-host或者$PSVersionTable命令查看powershell版本其中win7、window server 2008的默认powershell版本为powershell 4,windows server2012默认版本为 4,window
10默认版本为5.1。
2.下载并安装Microsoft .NET Framework 4.5和powershell5.1(如果系统中的版本大于或者等于此版本可以不用执行这一步操作)
Microsoft .NET Framework 4.5下载地址:
https://download.microsoft.com/download/B/A/4/BA4A7E71-2906-4B2D-A0E1-80CF16844F5F/dotNetFx45_Full_setup.exe
powershell5.1下载地址:
https://www.filehorse.com/download-windows-powershell-64/37429/
升级powershell后操作系统需重启。
3、升级完成后检查powershell版本
powershell 命令进入 powershell 模式
get-host 或者 $PSVersionTable 命令查看 powershell 版本
4、查看powershell执行策略(如果不是RemoteSigned则修改执行策略)
使用 get-executionpolicy 查看powershell执行策略
使用 set-executionpolicy remotesigned 命令修改策略
5、配置winrm service并启动服务(注意需要使用管理员身份启动cmd)
使用 winrm quickconfig 命令启动winrm服务
有两个提示[y/n]选择y就可以了
6、查看winrm service启动监听状态
使用 winrm enumerate winrm/config/listener 命令启动监听服务
7、修改winrm配置,启用远程连接认证
winrm set winrm/config/service/auth ‘@{Basic=“true”}’
winrm set winrm/config/service ‘@{AllowUnencrypted=“true”}’
8、添加防火墙信任规则,允许5985端口通过
入站规则 -->新建规则 -->端口 -->TCP的5985 -->下一步 -->下一步
二、Centos部分(Ansible管理主机)
重点:千万不要yum安装。选择pip安装,或者二进制包安装。否则,即便安装了pywinrm插件也无法管理Windows主机。
依赖python3环境(没有Python3以上的环境才需要安装)
下载源码
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
解压缩
tar -zxvf Python-3.7.0.tgz
依次执行下面命令进行手动编译
cd Python-3.7.0
./configure prefix=/usr/local/python37
make && make install
添加环境变量( /etc/profile )
export PYTHON_HOME=/usr/local/python37
export PATH=$PYTHON_HOME/bin:$PATH
读取文件使环境变量生效
source /etc/profile
测试python3.7
python3.7 -V
1、安装PIP命令
从官网下载pip包到本地,官网链接:https://pypi.org/project/pip/#files
wget https://files.pythonhosted.org/packages/8e/76/66066b7bc71817238924c7e4b448abdb17eb0c92d645769c223f9ace478f/pip-20.0.2.tar.gz
解压
tar -zxvf pip-20.0.2.tar.gz -C /usr/local
安装
cd /usr/local/pip-20.0.2
python3 setup.py install
2、安装pywinrm插件
pip install pywinrm
3、pip安装ansible
pip install ansible
4、配置文件hosts
配置文件默认路径:
/etc/ansible/hosts
,在此配置文件尾巴追加以下信息,ansible_ssh_user是Windows Server的用户名,ansible_ssh_pass是Windows Server的密码
[all:vars]
ansible_ssh_user=administrator
ansible_ssh_pass=123123
ansible_ssh_port=5985
ansible_connection=winrm
ansible_winrm_server_cert_validation=ignore[windows]
192.168.9.49
5、验证与windows主机的通信
ansible windows -m win_ping
部署时的坑
一开始从网上查资料是用yum安装的ansible,这样安装的ansible是无法控制windows主机,后面找资料找到ansible需要用pip安装或者离线安装的方法才可以识别到winrm模块。
linux与windows建立信任
windows:命令行进入安装路径,输入:ssh-keygen -t rsa;
windows:其中秘钥输出路径设置为C:\Program Files\OpenSSH\home\当前用户名.ssh,其余全部直接回车;
windows:C:\Program Files\OpenSSH\home\当前用户名.ssh此目录下会生成id_rsa和id_rsa.pub;
windows:拷贝一份id_rsa.pub重命名为authorized_keys;
linux: 进入/root/.ssh,输入:ssh-keygen -t rsa,目录下生成id_rsa和id_rsa.pub;
linux:拷贝一份id_rsa.pub重命名为authorized_keys(在/root/.ssh目录下执行cat id_rsa.pub > authorized_keys);
linux:将windows拷贝来的文件追加至authorized_keys文件中,cat /windows公钥拷贝文件所在目录/id_rsa.pub >> authorized_keys;
windows:将linux的公钥id_rsa.pub文件拷贝至windows,打开C:\Program Files\OpenSSH\home\当前用户名.ssh\authorized_keys文件,将linux的公钥文件的内容直接紧接着该文件本身内容最后复制粘贴在authorized_keys中,不要自行增加多余的换行符空格等;
此时双向scp命令都可以完成免密登录了。
Centos7上的Ansible管理Windows主机的部署相关推荐
- 【Linux运维】Centos7上借助ansible搭建LVS+Keepalived
安装ansible 安装ansible: [root@localhost ~]# tail -5 /etc/hosts 192.168.19.129 web129.yanglt.com web129 ...
- ansible模块管理与主机清单配置
文章目录 一. ansible简介 二 . Ansible 部署 及 模块篇实操 2.1 ansible 软件部署 2.2 设置代理登录,免去密码交互 2.3 各模块详解 ------command模 ...
- 【Ansible】Ansible控制windows插件安装及运行error与解决方法
一. 问:因pip版本问题无法安装kerberos 答:安装提示需要先安装pip升级包 下载pip9.0.1升级包: ![1_2] 二.问:安装kerberos报错 答:需要先安装libkrb5开发包 ...
- 将最新版的ElasticSearch8与Kibana8在CentOS7上跑起来
背景 以前也搭建体验过基于 ElasticSearch 7.x的服务及集群,不过当时一直在内网环境下运行,也没有进行其认证相关的配置 xpack ,我记得当时写的建议:由于 Elasticsearch ...
- 基于ansible的自动化二进制模式部署高可用Kubernetes集群
[说明] 本文档详细描述了在openEuler 22.03 LTS上通过ansible以二进制模式自动化部署高可用Kubernetes集群(适用k8s v1.26版本). 本文档参考了小陈运维的ans ...
- ansible+powershell DSC 可以管理windows server了
你好,欢迎来到另一个开始用Ansible+Windows POST!在本文中,我们将探讨所需的状态配置是什么,为什么它是有用的,以及如何使用它与Ansible一起管理您的Windows节点. 什么是D ...
- Ansible批量管理Windows服务器,winrm配置
(一)Ansible简介 Ansible 是一款轻量级的开源的自动化运维工具,支持 linux 和 windows(只支持 client,并且部分模块),利用 Ansible 可以简单批量的配置系统, ...
- Windows 上的标识管理 / RFC 2307 属性
NAS存储允许在 Linux 和 Windows 节点之间共享文件. Linux 依赖 32 位用户和组 ID 来实现件所有权和访问控制,而 Windows 使用可变长度的安全标识符 (SID). 用 ...
- 保姆级安装,在FusionCompute上搭建华为V6存储仿真器,并通过iscsi映射给Windows主机
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.华为V6存储仿真器环境搭建 1.1.导入V6存储模板 1.2.选择计算资源 1.3.选择数据存储 1.4.模板配置 ...
最新文章
- gatekeeper学习概述
- SAP Credit Memo Debit Memo
- 各种优秀依赖库,大赞
- JavaScript--数据结构与算法之二叉树
- GPS NEMA 0183协议
- Leaflet工作笔记-GIS地图上构造echarts的3D图
- ansible /usr/bin/python: not found
- 提升Python程序性能的7个习惯
- 编写程序,用户输入一个位以上的整数,输出其百位以上的数字。例如用户输入1234.则程序输出12.
- 数据结构与算法的分析 —— 渐进复杂度(三个记号)
- android 高德定位失败,android 高德地图出现【定位失败key鉴权失败】
- C3: 基金名称末尾 A 和 C 的区别
- U-net复现pytorch版本 以及制作自己的数据集并训练
- python做饼图出现重影_解决echarts中饼图标签重叠的问题
- 前端下载svg格式图片
- Nginx之web前言
- python怎么算阶乘_python计算阶乘
- windows虚拟机安装Mac OS系统(操作图解)
- 法兰盘零件机械加工工艺规程编制及加工右大斜面用铣床专用夹具设计
- Linux的负载平均值(load)详解
热门文章
- android edittext 手机号码,Android Edittext 手机号码格式输入设置
- 如何在Excel中对工作表进行分组
- A.Mio visits ACGN Exhibition
- 小米(MIUI)手机监听短信的两种解决方案
- NPC整流器,三电平,中点钳位。PWM整流器三电平模型。simulink
- 我的摩旅经验分享之致新入坑摩旅的老同学刘
- html5网页制作拓扑,基于HTML5的网络拓扑图设计
- 3D游戏模型教程系列:3D max安装
- 博途数据类型wstring怎么用_西门子博图数据类型说明
- CS188 Proj 1