例如:

A服务器地址:172.16.1.203
 B服务器地址:172.16.1.204

当jenkins 在A 服务器并且用户aa,  控制B 服务器的用户bb的操作

(1)B服务器 用ssh-keyscan命令将公钥添加到本地的known_hosts文件里面去

如:ssh-keyscan 172.16.1.204 >> /root/.ssh/known_hosts

然后将B服务器里的known_hosts 里面的内容复制到A服务器:aa用户下 :  home/aa /.ssh/known_hosts

(2)拷贝A的id_rsa.pub( /home/aa/.ssh/id_rsa.pub)内容到B服务器.ssh目录下的authorized_keys文件中  

vi home/bb/.ssh/authorized_keys

(3) A服务器里找到/etc/ansible/hosts

cat /etc/ansible/hosts

hosts文件里添加一行:

172.16.1.204 ansible_ssh_port=22 ansible_ssh_user=bb host_key_checking=False ansible_ssh_host=172.16.1.204

(注:如果需要同一台服务器下操作多个用户时,其它操作都一样,就是/etc/ansible/hosts配置使用不同的别名即可)

hosts文件说明:

常用参数配置:
    ansible_ssh_host                    # 目标主机地址
    ansible_ssh_port                    # 目标主机端口,默认22
    ansible_ssh_user                    # 目标主机用户
    ansible_ssh_pass                    # 目标主机ssh密码
    ansible_sudo_pass                 # sudo密码
    ansible_sudo_exe                    
    ansible_connection               # 与主机的连接类型,比如:local,ssh或者paramiko
    ansible_ssh_private_key_file  # 私钥地址
    ansible_shell_type                 # 目标系统的shell类型
    ansible_python_interpreter   # python版本
 
格式:[组名] 
    例如 : 
      [test]     # 组名  
      172.16.1.204 # 主机ip  或者172.16.1.204:22 自定义端口
别名
    s1 ansible_ssh_port=22 ansible_ssh_host=172.16.1.204 ansible_ssh_user=bb # 别名s1
    s2 ansible_ssh_port=22 ansible_ssh_host=172.16.1.204 ansible_ssh_user=cc  # 别名s2

jenkins 下使用ansible 跨服务器控制操作的更多相关文章

  1. cwRsync window下的跨服务器的文件同步

    cwRsync 是window下的文件同步软件,可以跨服务器运行,第一次运行的时候是全部备份同步,之后的同步采用的是增量同步 这个软件分为服务端和客户端. 服务器是需要同步的文件源, 客户端相当于是备 ...

  2. Docker跨服务器通信Overlay解决方案(下) Consul集群

    承接上文 本文基于上篇文章,详细的场景说明与分析在前篇随笔中业已记录,有兴趣可以移步 Docker跨服务器通信Overlay解决方案(上) Consul单实例 本文主旨 本文为Docker使用Cons ...

  3. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署动态网站(二)--技术流ken

    项目前言 在上一篇博客<Jenkins+Git+Gitlab+Ansible实现持续化集成一键部署静态网站(一)--技术流ken>中已经详细讲解了如何使用这四个工具来持续集成自动化部署一个 ...

  4. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署动态网站(7)

    项目前言 在上一篇博客<Jenkins+Git+Gitlab+Ansible实现持续化集成一键部署静态网站(一)–技术流ken>中已经详细讲解了如何使用这四个工具来持续集成自动化部署一个静 ...

  5. ASP.NET、JAVA跨服务器远程上传文件(图片)的相关解决方案整合

    一.图片提交例: A端--提交图片 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string u ...

  6. php 跨域、跨子域,跨服务器读取session

    1.跨子域和跨服务器解决方式 Session主要分两部分:   一个是Session数据,该数据默认情况下是存放在服务器的tmp文件下的,是以文件形式存在    另一个是标志着Session数据的Se ...

  7. 跨服务器的session共享

    四种 一.NFS(Net FileSystem): sun公司提供的,并发处理的效率不高,但操作方便 二.基于数据库的session共享 三.基于cookie的session共享 原理:将sessio ...

  8. 跨服务器之间的session共享

    跨服务器之间的Session共享方案需求变得迫切起来,最终催生了多种解决方案,下面列举4种较为可行的方案进行对比探讨: 1. 基于NFS的Session共享 NFS是Net FileSystem的简称 ...

  9. ASP.NET跨服务器上传文件的相关解决方案

    第一种:通过FTP来上传文件 首先,在另外一台服务器上设置好FTP服务,并创建好允许上传的用户和密码,然后,在ASP.NET里就可以直接将文件上传到这台 FTP 服务器上了.代码如下: <%@ ...

随机推荐

  1. C语言知识汇总,史上最全面总结,没有之一

    C语言基础 C语言学习路线 C语言入门笔记 初识C语言 简单的C程序示例 我们编写的C代码是怎样跑起来的? 简单示例,VS2019调试C语言程序 C语言基础-数据类型 深入理解变量,变量的声明,定义, ...

  2. .zip爆破

    .zip爆破 Python的优化问题 Python在计算密集型任务方面没有明显的多线程优化,多线程更加适合用于处理I/O密集型任务(如网络请求).爆破任务使用顺序执行即可. 编写Python脚本 一个 ...

  3. 关于go中并发的初步理解

    1.一些概念的介绍: 概念 描述 进程 在内存中的程序.有自己独立的独占的虚拟 CPU .虚拟的 Memory.虚拟的 IO devices. (1) 每一进程占用独立的地址空间. 此处的地址空间包括 ...

  4. IntelliJ IDEA热部署配置总结

    Intellij IDEA 4种配置热部署的方法: 热部署可以使的修改代码后,无须重启服务器,就可以加载更改的代码. 第1种:修改服务器配置,使得IDEA窗口失去焦点时,更新类和资源 菜单Run -& ...

  5. MongoDB数据库的使用

    MongoDB是一个基于分布式 文件存储的NoSQL数据库,适合存储JSON风格文件的形式. 三元素:数据库.集合和文档. 文档:对应着关系数据库中的行,就是一个对象,由键值对构成,是json的扩展B ...

  6. Androi Studio 之 RelativeLayout

    RelativeLayout简介 •基本属性 •根据父容器定位 •父容器定位属性示意图 •根据兄弟组件定位 •根据兄弟组件定位 •margin(偏移) •padding(填充) •margin与pad ...

  7. 快速上手阿里云oss SDK

    使用阿里云oss SDK 依赖安装: pip install oss2 pip install aliyun-python-sdk-sts 版本最好是 2.7.5 或以上 如果要开启 crc64 循环 ...

  8. " "( 双引号) 与 ' '( 单引号) 差在哪?-- Shell十三问<第四问>

    " "( 双引号) 与 ' '( 单引号) 差在哪?-- Shell十三问<第四问> 经过前面两章的学习,应该很清楚当你在 shell prompt 后面敲打键盘.直到 ...

  9. [Fundamental of Power Electronics]-PART I-1.引言-1.1 功率处理概论

    1.1 功率处理概论 电力电子领域关注的是利用电子设备对电力进行处理[1–7].如图1.1所示,其中关键部件就是开关变换器.通常,开关变换器包含电源输入和控制输入端口以及电源输出端口.原始输入功率按控 ...

  10. 使用Docker Toolbox 创建Docker虚拟机的方法-注意正确使用本地文件 file:参数的路径名

    使用Docker Toolbox 创建v1.12.6版的Docker虚拟机的方法, 一定要注意正确使用本地文件 file:// 参数的路径名, 之前尝试创建过多次,一直都没有成功过, 无法使用 fil ...