自动化运维

SaltStack自动化运维工具

痞子三分冷 提交于 2019-11-27 10:53:02
一.什么是salt Salt 是: 一个配置管理系统,能够维护预定义状态的远程节点(比如,确保指定的报被安装,指定的服务在运行) 一个分布式远程执行系统,用来在远程节点(可以是单个节点,也可以是任意规则挑选出来的节点)上执行命令和查询数据 二.Salt的核心功能 1.使命令发送到远程系统是并行的而不是串行的 2.使用安全加密的协议 3.使用最小最快的网络载荷 4.提供简单的编程接口 Salt同样引入了更加细致化的领域控制系统来远程执行,使得系统成为目标不止可以通过主机名,还可以通过系统属性。 三.salt使用Python客户端接口 为了允许简单的扩展,Salt执行程序可以写为纯Python模块。数据从Salt执行过程中收集到可以发送回master服务端,或者发送到任何任意程序。Salt可以从一个简单的Python API调用,或者从命令行被调用,所以Salt可以用来执行一次性命令,也可以作为一个更大的应用程序的一个组成部分。 二.安装salt 1.配置yum源 mv salt /var/www/html/ [rhel-source] name= Red Hat Enterprise Linux $releasever - $basearch - Source baseurl= http:// 172.25 . 1.250 /source6. 5 enabled= 1

Ansible自动化运维之Playbook实战

…衆ロ難τιáo~ 提交于 2019-11-27 03:13:21
文章目录 Playbook简介 playbook语法 playbook的构成 修改vim编辑 playbook文件的编写说明以及举例 编写说明 执行playbook 给prod组的节点安装并开启httpd服务 修改httpd的端口(定义触发器) 将http加入防火墙列表中 template模块 修改apache端口 获取系统信息 Playbook简介 Playbook与ad-hoc相比,是一种完全不同的运用。 playbook是一种简单的配置管理系统与多机器部署系统的基础,且非常适合于复杂应用的部署。 playbook中可以编排有序的执行过程,甚至于做到在多组机器间,来回有序的执行特别指定的步骤,并且可以同步或异步的发起任务。 使用playbook可以方便的重用这些代码,可以移植到不同的机器上面。 playbook才是ansible真正强大之处。 playbook语法 playbook由YMAL语言编写,以下为playbook常用到的YMAL格式: 文件的第一行应该以"- - -"三个连字符开始,表明YMAL文件的开始。 在同一行中,#之后的内容表示注释,类似于shell,python和ruby。 YMAL中的列表元素以”-”开头然后紧跟着一个空格,同一个列表中的元素应该保持相同的缩进。 一个字典是由一个简单的 键: 值 的形式组成(这个冒号后面必须是一个空格): --- #

运维自动化-Ansible ( 二 )

▼魔方 西西 提交于 2019-11-26 17:30:13
此章节的版本信息如下: ansible 2.4.2.0 python version = 2.7.5 (default, Aug 4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] ping 功能:尝试连接到主机,验证并返回pong成功。 -对于Windows目标,请改用win_ping模块 -不使用icmp协议,使用ssh协议。 例子: #ansible db -m ping 7-db-3.hunk.tech | SUCCESS => { "changed": false, "ping": "pong" > 返回pong表明成功通讯 } command 功能:在远程节点上执行命令 -变量 和操作符号 "<", ">", "|", ";" and "&" 不能正常工作。如果需要使用,请使用shell模块 -Ansible默认不指定模块时,将使用此模块。 - chdir 命令运行前先切换到此目录 - creates 条件判断,如果文件存在,将不执行后面的命令。 #ansible web -m command -a 'creates=/app echo /app not found' 6-web-1.hunk.tech | SUCCESS | rc=0 >> skipped, since /app exists =

超详细:自动化运维之jumpserver堡垒机入门到掌握

孤人 提交于 2019-11-26 03:41:58
测试推荐环境 CPU: 64位双核处理器 内存: 4G DDR3 数据库:mysql 版本大于等于 5.6 mariadb 版本大于等于 5.5.6 环境 系统: CentOS 7 IP: 192.168.0.230 设置 selinux 和防火墙 [root@web1 ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:c5:33:97 brd ff:ff:ff:ff:ff:ff inet 192.168.0.230

自动化运维之应用发布---应用下线

99封情书 提交于 2019-11-26 02:58:20
应用发布简单的流程: 1.集群节点应用下线(下面会介绍为什么将这个放在第一位.) 2.获取最新代码 3.编译打包 4.推送到应用机器 5.差异复制 6.重启 7.测试 8.加入集群 我公司都是使用nginx完成负载均衡的...当我们后端应用python,java,nodejs需要升级上线新的功能的时候,就会涉及到nginx的upstream的变动。之所以将应用下线放在的第一位,是因为nginx在去掉upstream节点的时候正在处理的应用连接是不会中断还能正常的服务,我们需要预留更长的时间来等待应用结束。。所以将下线放在第一位(当然如是单节点肯定不能放第一位)。 以前上线的时候,都是人工修改之后reload然后等待应用处理释放。。再去更新代码的。。等一切都是人工的去完成的,几乎每天都需要重复性的工作。后来开始借助jenkins完成发布过程。前期的时候都是直接不下线应用直接部署,后来出现过几次问题,决定在升级应用之前先将nginx负载节点下。为此编写了一个nginx online offline脚本。现在分享给大家。 #!/bin/sh #================================================================ # Copyright (C) 2018 Sangfor Ltd. All rights reserved. # #

自动化运维之CentOS7下PXE+Kickstart+DHCP+TFTP+HTTP无人值守安装系统

淺唱寂寞╮ 提交于 2019-11-26 02:24:27
一、概述 1、关于PXE Preboot Execution Environment翻译过来就是预启动执行环境;简称PXE;传统安装操作系统的方法是CDROM或U盘引导,而PXE技术解决的是从网络引导安装系统,当然PXE技术不是什么新技术了,是Intel和Microsoft在1998年定义的更大PC98规范的一部分。有关PXE规范的 详细文档 2、pxe引导相关角色说明 PXE作用: 引导装机 Kickstart作用: 将安装系统的过程中通过ks.cfg文件中的配置信息,实现自动安装配置达到无人值守自动安装; TFTP: 支持PXE 引导的网卡中从tftp服务器端下载pxelinux.0文件、vmlinuz、initrd.img等内核引导文件; DHCP: PXE引导过程中获首先获取IP地址,并提供pxelinux.0文件位置; HTTP: 用于下载ks.cfg以及系统镜像文件 通用的无人值守做法如下: 通过一台没有系统的裸机网卡支持pxe协议,开机后从dhcp服务器获取ip和pxelinux.0文件并从tftp服务器上加载相关内核引导文件;同时下载 kickstart的cfg配置文件,指定系统镜像文件位置加载安装,从而实现无人值守安装! 如图(图片来自于网络): 3、环境准备说明 本次测试环境说明: PXE服务器:CentOS7.4 基于virtualboxt的虚拟机 ip

自动化运维工具fabric的简明使用手册

南笙酒味 提交于 2019-11-26 01:55:36
1.简介 Fabric 是一个 Python (2.5-2.7) 的库和命令行工具,用来提高基于 SSH 的应用部署和系统管理效率。 更具体地说,Fabric 是: 一个让你通过命令行执行Python函数的工具; 一个让你通过SSH执行Shell命令更加容易、 更符合Python风格的命令库。 自然而然地,大部分用户把这两件事结合着用,使用Fabric来写和执行Python函数或task,以实现与远程服务器的自动化交互。让我们一睹为快吧。 2.安装 创建.pip目录和配置文件: cd ~ mkdir .pip cd .pip touch pip.conf 编辑文件pip.conf如下 [global] index-url=http://mirrors.zte.com.cn/pypi/simple [install] trusted-host=mirrors.zte.com.cn 安装依赖包(如果是centos的,需要使用yum安装) sudo apt-get update sudo apt-get upgrade sudo apt-get install python-dev sudo apt-get install libffi-dev 用pip安装fabric sudo pip install fabric 3、使用 3.1 执行无参python函数 编写fabfile

BigOps自动化运维使用之登录后出现500错误

感情迁移 提交于 2019-11-25 22:06:37
登录系统 登录后网页显示500错误。 这个错误一般是没有设置hosts,服务器和笔记本都需要设置hosts。修改服务器和笔记本hosts文件,添加服务器的主机名。添加完进行ping测试。 笔记本hosts文件修改 服务器hosts文件修改 修改后重启服务器,使hosts生效。或者使用source命令。 登录BigOps系统 系统正常显示。 注: 360浏览器显示不全,对低版本火狐支持的不是很好,推荐使用Chrome或者高版本的火狐。 来源: 51CTO 作者: hzy_709862479 链接: https://blog.51cto.com/3001441/2452324?source=dra

BigOps自动化运维使用之局域网IP自动发现

為{幸葍}努か 提交于 2019-11-25 22:06:30
IP自动发现解决了IP上的管理问题,特别适合于手动分配IP的大型事、企业和政府单位有历史性余留问题使得IP管理混乱。这个可以很好的解决这个问题。下面我们来一起设置这个IP自动发现功能。 (1)添加服务树 为更好的归类,在后期添加监控子网时需要使用。 步骤:特殊控件——服务树——创建一个服务树二级目录(此二级目录包含多个子目录时可继续在二级目录下继续添加子目录) (2)添加子网 添加子网就是将自己的内网网段添加到资源库,是创建设置发现规则时的监控对象。 步骤:资源——IPAM——创建二级分组——创建子网,根据自己的内网实际情况填写子网信息 (3)创建自动发现规则库 步骤:资源——自动发现——创建规则 创建规则时,只填写有“*”的就可以了,其他根据自己需求去设置。 (4)效果图 步骤:资源——IPAM——子网 (后期将继续发表新IP接入自动告警功能文章,请继续关注。) 来源: 51CTO 作者: hzy_709862479 链接: https://blog.51cto.com/3001441/2452610?source=dra

京东数据库运维自动化体系建设之路

删除回忆录丶 提交于 2019-11-25 22:02:10
运维自动化来源于工作中的痛点,京东数据库团队面对的是商城成千上万的研发工程师,这种压力推动我们不断变革,然而变革不是一蹴而就,也经历过从手工到脚本化、自动化、平台化、智能化的艰难转变,所以说是需求在驱动运维体系的建设,而运维自动化的真谛在于解放运维人员,促进人率提升,减少人为故障,要学会培养自己“懒”这个好习惯。京东的自动化运维体系建设始于2012年,下面从两个方面进行介绍。 1. 京东数据库智能运维平台 京东业务每年都在以爆发的形式在增长,数据库服务器的数量众多,产品线也多达上千条,要支持如此庞大的业务体系,需要一套完善的运维自动化管理平台。目前京东MySQL数据库管理平台简称DBS,主要涵盖以下内容:完善的资产管理系统、数据库流程管理系统、数据库监控系统、数据库故障管理系统、数据库报表系统、弹性数据库系统以及数据库辅助运维工具,涉及DBA运维的方方面面,实现了DBA对MySQL的自动化、自助化、可视化、智能化、服务化管理,避免DBA因手工操作失误带来的生产事故,保障京东数据库的安全、稳定、高效运行。这里着重介绍以下部分核心功能组件。 1.1. 元数据管理 作为自动化运维的基石,它的准确性直接关系到整个数据库管理平台的可靠性。京东数据库管理平台从数据库业务方、DBA的运维习惯等方面出发,涵盖机房、主机、业务、集群、实例、库、表等多个维度。  机房和主机维度