ansible笔记(1):ansible基本概念】的更多相关文章

一.ansible的作用以及工作结构 1.1.ansible简介: ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能.ansible是基于模块工作的,本身没有批量部署的能力.真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架.主要包括: 连接插件connection plugins:负责和被监控端实现通信: h…
ansible笔记():handlers的用法 这篇文章会介绍playbook中handlers的用法. 在开始介绍之前,我们先来描述一个工作场景: 当我们修改了某些程序的配置文件以后,有可能需要重启应用程序,以便能够使新的配置生效,那么,如果使用playbook来实现这个简单的功能,该怎样编写playbook呢? 我们来试试,此处我们使用nginx作为示例,虽然nginx可以使用'nginx -s reload'命令重载配置,但是此处的示例中并不会使用这个命令,而是用nginx类比那些需要重启…
ansible笔记():ansible模块的基本使用 在前文的基础上,我们已经知道,当我们使用ansible完成实际任务时,需要依靠ansible的各个模块,比如,我们想要去ping某主机,则需要使用ping模块,命令如下 ansible all -m ping 前文说过,除了ping模块,ansible还有很多模块可供我们使用,那么ansible都有哪些模块呢?我们可以使用如下命令,查看ansible都有哪些模块. ansible-doc -l 执行上述命令后,可以看到ansible中各个模块…
ansible笔记():ansible的基本概念 一些基础概念 ansible是什么? 它是一个"配置管理工具",它是一个"自动化运维工具",如果你没有使用过任何配置管理工具,不要害怕,看完这篇文章,你自然会对ansible有所了解. ansible能做什么? 正如其他配置管理工具一样,ansible可以帮助我们完成一些批量任务,或者完成一些需要经常重复的工作. 比如:同时在100台服务器上安装nginx服务,并在安装后启动它们. 比如:将某个文件一次性拷贝到100…
ansible笔记():初识ansible playbook(二) 有前文作为基础,如下示例是非常容易理解的: --- - hosts: test211 remote_user: root tasks: - name: make testfile file: path: /data/testfile001 state: touch mode: 上例中有一个play,这个play针对test211主机运行,这个play的任务列表中只有一个任务,这个任务就是调用file模块,确保/data/test…
ansible笔记():初识ansible playbook 假设,我们想要在test70主机上安装nginx并启动,我们可以在ansible主机中执行如下3条命令 ansible test70 -m yum_repository -a 'name=aliEpel description="alibaba EPEL" baseurl=http://mirrors.aliyun.com/epel/7/$basearch' ansible test70 -m yum -a 'name=ng…
ansible笔记():常用模块之系统类模块 cron模块 cron模块可以帮助我们管理远程主机中的计划任务,功能相当于crontab命令. 在了解cron模块的参数之前,先写出一些计划任务的示例,示例如下 #示例1 * * * echo test #示例2 */ * * echo test #示例3 @reboot echo test #示例4 @hourly echo test 上述示例1表示每天的1点5分输出test字符 上述示例2表示每3天执行一次计划任务,于当天的1点1分执行,具体任务…
ansible笔记():常用模块之系统类模块(二) user模块 user模块可以帮助我们管理远程主机上的用户,比如创建用户.修改用户.删除用户.为用户创建密钥对等操作. 此处我们介绍一些user模块的常用参数,你可以先对这些参数有一个大概了解,然后再看小示例. name参数:必须参数,用于指定要操作的用户名称,可以使用别名user. group参数:此参数用于指定用户所在的基本组 gourps参数:此参数用于指定用户所在的附加组,注意,如果说用户已经存在并且已经拥有多个附加组,那么如果想要继续…
ansible笔记():常用模块之包管理模块 yum_repository模块 yum_repository模块可以帮助我们管理远程主机上的yum仓库. 此处我们介绍一些yum_repository模块的常用参数,你可以先对这些参数有一个大概了解,然后再看小示例. name参数:必须参数,用于指定要操作的唯一的仓库ID,也就是".repo"配置文件中每个仓库对应的"中括号"内的仓库ID baseurl参数:此参数用于设置yum仓库的baseurl descripti…
ansible笔记():常用模块之命令类模块 command模块 command模块可以帮助我们在远程主机上执行命令 注意:使用command模块在远程主机中执行命令时,不会经过远程主机的shell处理,在使用command模块时,如果需要执行的命令中含有重定向.管道符等操作时,这些符号也会失效,比如"<", ">", "|", ";" 和 "&" 这些符号,如果你需要这些功能,可以参考…
ansible笔记():常用模块之文件操作(二) 文件操作类模块 find模块 find模块可以帮助我们在远程主机中查找符合条件的文件,就像find命令一样. 此处我们介绍一些find模块的常用参数,你可以先对这些参数有一个大概了解,然后再看小示例. paths参数 :必须参数,指定在哪个目录中查找文件,可以指定多个路径,路径间用逗号隔开,此参数有别名,使用别名path或者别名name可以代替paths. recurse参数 : 默认情况下,只会在指定的目录中查找文件,也就是说,如果目录中还包含…
ansible 资料 ansible 配置 ansible inventory配置文件 ansible模块 http://www.cnblogs.com/iois/p/6216936.html ansible变量 http://www.cnblogs.com/iois/p/6216939.html ansible playbook *ansible api…
本文参考 <Ansible 自动化运维和最佳实践>,这两天刚读这本书,写写总结.主控机环境是 centos 7,被控机均是 centos 6.8 . 确保 python 版本大于 2.6 [root@localhost ~]# python Python 2.7.5 (default, Nov 20 2015, 02:00:19) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2 Type "help", "copy…
1.普通用户想使用sudo到root用户下执行一些有root权限的操作需要在被管理机器上做如下操作 1.切换到root用户下,怎么切换就不用说了吧,不会的自己百度去. 2.添加sudo文件的写权限,命令是: chmod u+w /etc/sudoers 3.编辑sudoers文件 vi /etc/sudoers 找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (这里的xxx是你的用户名) ps:这里说下你可以sudoers添加下面四行中任意一条 y…
一.Ansible Inventory配置及详解 Inventory是ansible管理主机信息的配置文件,默认存放在/etc/ansible/hosts.在使用时通过 -i 或 --inventory-file 指定读取,与Ansible命令结合使用如下: # ansible -i /etc/ansible/hosts webs -m ping 如果想要通过ansible管理主机,需要将要管理的主机信息添加到ansible的“配置清单”中,在/etc/ansible/hosts文件,在文件最底…
一.ansible架构图 上图为ansible的基本架构,从上图可以了解到其由以下部分组成: 核心:ansible 核心模块(Core Modules):这些都是ansible自带的模块 扩展模块(Custom Modules):如果核心模块不足以完成某种功能,可以添加扩展模块 插件(Plugins):完成模块功能的补充 剧本(Playbooks):ansible的任务配置文件,将多个任务定义在剧本中,由ansible自动执行 连接插件(Connectior Plugins):ansible基于…
目录: 一.ansible简介 1.1.ansible是什么 1.2.ansible如何工作 1.3.ansible优缺点 1.4.ansible安装方式 1.5.ansible文件简单介绍 1.6.ansible简单使用 二.ansible-shell简介 2.1.ansible-shell是什么 2.2.ansible-shell安装方式 2.3.ansible-shell简单使用 三.使用ansible的authorized_key模块批量推送公钥到远程主机 3.1.生产秘钥对 3.2.使…
目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remoting,但是对他了解少之又少,近日有点时间,参考研究研究. 其相关概念本章不做详解,具体大家可以看下  http://baike.baidu.com/view/742675.htm?fr=aladdin  ,写的很详细. .Net Remoting概念 概念:一种分布式处理方式.从微软的产品角度来看,可…
Ansible介绍 什么是Ansible? Ansible是一个开源部署工具 开发语言:Python 特点:SSH协议通信,全平台,无需要编译,模块化部署管理 作用:推送Playbook进行远程节点快速部署 Ansible Python语言编写,无Client,模块化配置管理 Playbook脚本编写规范,易于上手,适合中小规模快速部署 Ansible的优势和应用场景 轻量级无客户端 开源免费,学习成本低,快速上手 使用Playbook作为核心配置架构,统一的脚本格式批量化部署 完善的模块化扩展…
tensorflow是google在2015年开源的深度学习框架,可以很方便的检验算法效果.这两天看了看官方的tutorial,极客学院的文档,以及综合tensorflow的源码,把自己的心得整理了一下,作为自己的备忘录. tensorflow笔记系列: (一) tensorflow笔记:流程,概念和简单代码注释 (二) tensorflow笔记:多层CNN代码分析 (三) tensorflow笔记:多层LSTM代码分析 (四) tensorflow笔记:常用函数说明 (五) tensorflo…
一.主机准备 ServerIP:10.10.10.102 ClientIP:  10.10.10.103,10.10.10.104 二.安装ansible yum -y install ansible   三.配置免密登录 1.在Server上制作公钥和私钥 [root@localhost roles]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.s…
目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remoting,但是对他了解少之又少,近日有点时间,参考研究研究. 其相关概念本章不做详解,具体大家可以看下  http://baike.baidu.com/view/742675.htm?fr=aladdin  ,写的很详细. .Net Remoting概念 概念:一种分布式处理方式.从微软的产品角度来看,可…
1.环境准备 (自动化工具,批量操作) 6台 2cpu,1.5G以上内存,20G硬盘,1网卡 1.1 基础环境准备 1)启动6台虚拟机,ansible.sh   2)真机配置yum仓库 ]# tar -xf ansible_soft.tar.xz  ]# cd ansible_soft/ soft]# mkdir /var/ftp/ansible soft]# cp * /var/ftp/ansible soft]# createrepo /var/ftp/ansible   3)修改主机名(容…
第58章 Ansible 目录 第58章 Ansible 一.Ansible基础概述 1.1)什么是Ansible 1.2)Ansible可以完成哪些功能呢?1.3)Ansible特点 1.4)Ansible基础架构(有必要了解,是知识要点) 二.ansible安装 2.1)ansible安装三.Ansible Inventory 四.Ansible Ad-Hoc 4.1)什么是ad-hoc 4.2)ad-hoc模式的使用场景 4.3)ad-hoc模式的命令使用 4.4)使用ad-hoc执行一次…
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,centos上可直接yum安装 有提供UI(浏览器图形化)www.ansible.com/tower,收费的 官方文档 http://docs.ansible.com/ansible/latest/index.html ansible已经被redhat公司收购,它在github上是一个非常受欢迎的开源软…
ssh用普通用户连接被控端 配置主机清单 (/etc/hosts域名解析为前提) [root@workstation ansible]# cat hosts servera serverb [root@workstation ansible]# pwd /etc/ansible [root@workstation ansible]# 建立免密 [root@workstation ansible]# ssh-keygen 使被控端创建用户 [root@workstation ansible]# a…
一.基础概念 1.ansible是什么? ansible是一个配置管理工具,是一个自动化运维工具. 2.ansible能做什么? 它可以完成一组批量化的工作任务,或者经常重复性的工作任务.例如:a.在100台服务器上安装nginx服务,并在安装后启动它们 b.将某个文件一次性拷贝到100台服务器上 ansible与其它配置管理工具有所不同,只依赖ssh即可正常服务,不用在受管控主机上安装agent,也就是说,只要能通过ssh连接到某主机,就可以使用ansible管理该主机. 二.命令入门 以一条…
上一篇文章介绍了ansible的基本概念,以及相关的基础配置,我们已经知道,如果想要管理受管主机,则需要将受管主机添加到ansible的管理清单中,当安装ansible以后,会提供一个默认的管理清单,即/etc/ansible/hosts文件,今天我们就来详细的聊聊它. 仍然以我们之前的演示环境为例,我们有3台主机,IP如下 10.11.0.210 10.11.0.211 10.11.0.212 10.11.0.215 主机210为ansible主机,同时,主机210的公钥已经配置在了其他2台主…
1.Ansible Inventory (1)静态主机文件 默认的ansible invetory是/etc/hosts文件,可以通过ANSIBLE_HOSTS环境变量或者通过运行命令的时候加上-i vim /tmp/hosts # 定义组 [webservers] 10.187.11.34 10.187.137.191 # 组变量 [webservers:vars] ansible_ssh_pass = '123456' 多个静态文件,可以写不同的文件里,文件名字hosts不是必须 inven…
前文中,我们已经介绍了怎样使用模块,而且我们知道,ansible有很多模块,每个模块都有自己的功能,"模块"涉及到的方向比较多,所以对于个人来说,并没有必要了解所有的模块,我们只需要根据实际的业务场景了解相应的模块即可,而且ansible比较贴心,ansible根据模块的功能对这些模块进行了大致的分类,比如,如果某些模块都是操作文件的,就把它们分类到文件类模块中,如果某些模块都是操作数据库的,就把他们分类到数据库类模块中,那么,ansible把模块分为了哪些类呢?你可以参考官方手册,找…