- name: install tomcat admin hosts: all sudo: True vars: war_file: /root/test.war tomcat_root: /datas/tomcat/webapps/test tasks: - name: 1 stop tomcat. action: shell nohup {{ tomcat_root }}/../../bin/shutdown.sh - name: 2 bakconfig.sh 3ge /datas/scri…
批量部署jenkins.war包实现上线 用于测试war包上线 [root~localhost]~#vim /etc/ansible/test.yml - hosts: test vars:     tomcat: /usr/local/tomcat8 remote_user: root tasks:    - name: "创建备份目录backup" file: dest={{ tomcat }}/backup owner=root group=root state=director…
fsckzy   Ansible playbook 批量修改服务器密码 客户的需求:修改所有服务器密码,密码规则为Rfv5%+主机名后3位 背景:服务器有CentOS6.7,SuSE9.10.11,root不能直接登录,需先登录普通用户,再切换到root. 首先在hosts 下面添加一个组[test],下面跟ip,每行一个. ansible基于ssh连接inventory中指定的远程主机时,将以此处的参数指定的属性进行: ansible_ssh_port 指定ssh 端口 ansible_ssh…
Jenkins +svn +maven +tomcat+ ansible 自动化批量部署 一.部署svn yum install subversion 先创建目录 mkdir /home/svn 创建版本库 1 cd /home/svn     //先进入svn目录 2svnadmin create /home/svn/test   //用svn管理员创建proname库 3 cd  /home/svn/test    //进入库 4.subversion目录说明 db目录:就是所有版本控制的数…
1. 安装ansible yum install epel-release -y yum install ansible -y Playbook是一个不同于使用ansible命令行执行方式的模式,功能更强大更灵活. playbooks使用步骤: 1.1 在playbooks 中定义任务: - name: task description #任务描述信息 module_name: module_args #需要使用的模块名字: 模块参数 1.2 ansible-playbook 执行 命令: an…
环境说一下 192.168.30.21     ansible 192.168.30.25     client1 192.168.30.26     client2 这里我的ansible环境已经部署好了,所以没有重复写到这里,如果不知道怎么部署ansible的小伙伴可以看我上篇随笔(这里不演示了 ) 1.被管理端都需要配置yum源 配置本地yum仓库就可以 2.配置数据库角色 [root@ansible ~]# mkdir -pv /etc/ansible/roles/mariadb/{fi…
最近手里的数百台服务器需要改/etc/ssh/sshd_config的参数,禁止root直接登陆,也就是说 [root@t0 ~]# cat /etc/ssh/sshd_config | grep Root #PermitRootLogin yes 得改成 [root@t1 ~]# cat /etc/ssh/sshd_config| grep ^PermitRoot PermitRootLogin no 一台台登上去改简直要死,ansible自动化运维工具听说还不错,之前就会用命令直接使用she…
我这里直接部署的,环境已经搭建好,如果不知道的小伙伴可以看上一遍ansible搭建,都写好了,这里是根据前面环境部署的 192.168.30.21     ansible 192.168.30.25     client1 192.168.30.26     client2 创建目录结构 [root@ansible ~]# mkdir -pv /etc/ansible/roles/nginx/{files,handlers,tasks,templates,vars} mkdir: 已创建目录 "…
自动化运维工具shell脚本/Ansible(无客户端)/Saltstack(master-minion) 回顾服务器部署的流程:买云主机->环境部署->软件部署->配置部署->启动服务->测试->加入集群 1.Ansible基本概述ansible是一个配置管理系统configuration management system你只需要可以使用ssh访问你的服务器或设备就行 Ansible能做什么可以帮助我们完成一些批量任务,或者完成一些需要经常重复的工作. Ansibl…
linux服务器批量部署应用系统shell脚本: 1.请更换代码内的服务器地址(Tomcat或jetty服务器) serverRoot=/home/undoner/java_tool/apache-tomcat-7.0.61 serverDir=/home/undoner/java_tool/apache-tomcat-7.0.61/webapps 2.请更换工程所属配置文件名称 /WEB-INF/classes/install.properties 3.请将war包上传至本命令同级的目录,执行…
应用环境:Linux运维工作少不了一个好的监控,zabbix就是目前比较好的一款开源监控软件. 监控类型多种多样,如果不介意或者系统支持安装,那么agent方式是首选. 当主机数量较多时,可以利用相关工具(ansible,puppet或其他)进行批量部署,节省时间提高效率. 测试环境:通过在ansible-server上操作,使得client-1/2/3上自动安装.配置.并启动zabbix-agent.   部署步骤: 1. 安装ansible  ~]#yum install -y epel-r…
我们项目是打包成war部署在jboss中的,但在上线或者运行时,经常要修改某些类然后再增量更新到war(因为生产环境只有发布的同时有,不能每个人都打包),所以都是手动做的,耗时耗力. 我花了点时间写了一个可以增量更新war包的类的shell 脚本,重点如下,脚本在附件,欢迎指正 1. war以及war/WEB-INF/lib中相关jar的解压. 先unzip war包,然后在使用find命令在war包下找到指定的相关jar包,也是使用unzip解压. 2. 增量的文件(class)的路径计算.…
由于有多个程序放在svn上管理,每天都要进入相应的目录进行svn 更新操作,现在写了一个简单的脚本进行批量自动更新. Code@echo off @echo ****************************************************** @echo Author clzeng by 2016.11.15 @echo ===============批量自动更新SVN版本库=============== @echo %date% %time% 准备更新SVN版本库 @e…
日常运维工作中,需要给几十上百台服务器批量部署软件或者是重启服务器等操作, 这样大量重复性的工作一定很苦恼,本文给大家提供了最基本的批量操作的方法,虽然效率不高,对于初学者来说还是好理解.由于刚开始学习写脚本,什么 puppt这样的高级工具还不会使用,就简单的利用shell脚本.ssh-keygen.expect来实现.希望能给各位带来帮助,不足之处还请留言 指出,大家共同进步. 首先,需要检查expect是否安装:rpm -qa|grep expect 然后,在操作机上创建公钥:ssh-key…
Ansible基于playbook批量修改主机名 安装Ansible,相信这里也不用多说,大家都知道 说一下环境:这里的主机名是修改之后的,我先把其他两台的主机名改为别的 192.168.30.21    主机名jenkins      安装Ansible 192.168.30.22    主机名docker 192.168.30.23    主机名repository 1.这里需要安装Ansible需要用到阿里云的yum仓库 [root@jenkins]# wget -O /etc/yum.r…
项目需求:由于搭建zabbix,需要每台服务器都需要安装监控端(agent)正常的的操作是一台一台去安装,这样确实有点浪费时间,这里为大家准备了一款开源 的自动化运维工具Ansible,相信大家也很熟悉,话不多说,开始部署. 这里我已经提前安装好ansible了,如果不知道怎么安装的小伙伴可以看我上一遍随笔. 修改主机名以及/etc/ansible/hosts  把需要执行的机器添加进入,并生成秘钥,成免交互(上篇文章都有) 192.168.30.21    ansible 192.168.30…
Ansible:自动化运维工具,基于Python开发 功能{ 批量系统配置 批量程序部署 批量运行命令等等 } 准备工作: 一.操作主机安装epel源 和 ansible工具 yum -y install epel-release yum -y install ansible ansible --version 二.生成密钥对 ssh-keygen -t rsa  免密登录 一路回车即可 ssh-copy-id root@192.168.189.(自己的ip) ssh-copy-id root@…
Ansible:自动化运维工具 你需要在一台机器上yum install 一个包,这时候有一个需求,比如现在有5台机同时需要装apache这个包,那么100台呢,ssh上去就太慢了,这时候就借助到了ansible批量部署工具. 通过host inventory这个文件去管理需要批量部署的主机,它实现的就是ssh协议. 把公钥拷给需批量部署的主机. Core Modules模块:核心模块,比如说cp.yum这些命令在ansuble里模块化了. Custom Modules模块:自定义模块,但是得需…
1.1 构建目录结构 此操作是安装nginx+mysql+tomcat+db的目录结构,可以参考一下,不错~ mkdir -p /ansible/roles/{nginx,mysql,tomcat,db}/{defaults,files,handlers,meta,tasks,templates,vars} defaults 默认寻找路径 tasks 存放playbooks路径 files 存放文件和脚本包,copy模块文件搜索路径 templates 模版存放路径 handlers notif…
虽然自动化存在使得更容易使事情重复,但所有的系统可能不完全一样. 在某些系统上,您可能需要设置一些与其他操作略有不同的行为或配置. 此外,一些观察到的远程系统的行为或状态可能需要影响如何配置这些系统. (例如您可能需要找到系统的IP地址,甚至将其用作另一个系统上的配置值). 您可能有一些配置文件的模板大部分是相同的,但基于这些变量略有不同. Ansible中的变量是我们如何处理系统之间的差异. 要了解变量,您还需要挖掘条件和循环 . 有用的东西,如group_by模块和when条件也可以与变量一…
  简介:   ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能.   ansible是基于模块工作的,本身没有批量部署的能力.真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架.主要包括: (1).连接插件connection plugins:负责和被监控端实现通信: (2).host inventory:指…
PlayBook语法实例 playbook是由一个或多个play组成的列表,play的主要功能在于将事先归并为一组的主机装扮成事先通过Ansible中的tasks定义好的角色(play的内容被称为tasks,即任务),从根本上来讲所谓tasks无非是调用Ansible的一个module,将多个play组织在一个playbook中即可以让它们联同起来按事先编排的机制一同工作. 下面来看一个基础的playbook,其中只包含一个tasks任务: --- - hosts: web_server #指定…
Ansible是Agentless的轻量级批量配置管理工具,由于出现的比较晚(13年)基于Ansible进行开发的相关文档较少,因此,这里通过一些小的实验,结合现有资料以及源码,探索一下Ansible的二次开发. 随笔的内容分为三个部分 playbook编辑执行 python 调用API执行playbook java调用python程序进行playbook的执行 实验的环境是centos6,ansible版本是1.9.4,python版本是2.6.6,jdk版本是1.7U79 一.playboo…
Ansible 是一款基于 Python 开发的自动化运维工具,可以进行配置管理.批量部署等功能.对于机器较多的场景,可以使用 Ansible 来免去重复敲命令的烦恼. 安装ansibleyum -y install ansible配置文件路径/etc/ansible/ansible.cfg修改配置参数无需重启ansible修改参数:host_key_checking = False (不修改可能出现无法连接服务器的情况)提示:Using a SSH password instead of a…
本节内容: 背景 分布式日志系统架构图 创建和使用roles JDK 7 role JDK 8 role Zookeeper role Kafka role Elasticsearch role MySQL role Nginx role Redis role Hadoop role Spark role 一.背景 产品组在开发一个分布式日志系统,用的组件较多,单独手工部署一各个个软件比较繁琐,花的时间比较长,于是就想到了使用ansible playbook + roles进行部署,效率大大提高…
一.什么是playbook及其组成 什么是playbook playbook 翻译过来就是"剧本" playbook的组成 play:定义的是主机的角色 task:定义的是具体执行的任务 playbook:由一个或多个play组成,一个play可以包含多个task 二.playbook的优势 .功能比adhoc更全 .控制好依赖 .展现更直观 .持久使用 三.playbook的配置语法 基本使用 playbook基础使用 ansible-playbook playbook.yml [o…
当企业用户拥有Office 365 ProPlus的许可后,可登陆Office 365.自行下载Officeclient安装部署 以上仅仅是理想情况,实际情况是企业用户较多,IT水平參差不齐,企业的带宽也是有限的,为了高速在企业内部署Office 365client(Office2013).能够通过即点即用技术,将Office 365上的部署文件下载到本地,然后在本地方式批量部署 本文具体描写叙述了怎么实现 请注意Office 365 Proplus和Office 2013从功能上讲就是一个cl…
Ansible介绍: a. ansible是一个基于Python开发的自动化运维工具b. ansible是一个基于ssh协议实现远程管理的工具c. ansible软件可以实现多种批量管理操作(批量系统配置.批量软件部署.批量文件拷贝.批量运行命令)saltstack puppet (都是类似软件) 批量管理服务特征介绍. 客户端不需要启动任何服务,服务端不需要任何的配置. Server端安装(管理端): yum -y install ansible. ansible客户端(受控端):没有客户端软…
目录 Ansible playbook的应用 什么是playbook playbook的组成 playbook和Ad-Hoc对比 YAML语法 安装httpd练习 rsyncd实战 实战1: 实战2: Ansible playbook的应用 什么是playbook playbook(剧本)是由两部分组成 play:主机或者主机组(角色:可以有一个或者多个) task:指定工作(动作,台词:一个或者多个) 在Ansible中"剧本文件"是以yml结尾的文件. 在SaltStack中&qu…
Ansible Playbook 基本概述与使用案例 主机规划 添加用户账号 说明: 1. 运维人员使用的登录账号: 2. 所有的业务都放在 /app/ 下「yun用户的家目录」,避免业务数据乱放: 3. 该用户也被 ansible 使用,因为几乎所有的生产环境都是禁止 root 远程登录的(因此该 yun 用户也进行了 sudo 提权). # 使用一个专门的用户,避免直接使用root用户 # 添加用户.指定家目录并指定用户密码 # sudo提权 # 让其它普通用户可以进入该目录查看信息 use…