层级: 搭建好---用好----服务统筹安排-----架构设计 nginx
产品成功: 抓住用户的痛点(培训机构好是由于大学生的实际能力差。) web
系统架构师(偏管理): 网络 系统 数据库 开发 云计算 自动化 运维管理 服务管理 项目管理 测试 业务 shell
专一于某一个领域 数据库
运维分类: apache
监控运维(7*24运维值班 故障处理) 后端
应用运维(项目上线 服务部署 业务部署 版本管理 灰度发布) api
安全运维(总体的安全方案 规范 漏洞监测 安全防御等) 缓存
系统运维(架构层面的分布式缓存 分布式文件系统 日志收集 环境规划【测试 开发 生产】 架构设计 性能优化) 安全
基础服务运维(内部dns 负载均衡 系统监控 资产管理 运维平台) 性能优化
基础设施运维(系统初始化 网络维护)
机房运维(负责设备的上下架 巡检 报修 硬件监控)
运维自动标准化:
1. 运维标准化
物理设备层面:
1.服务器标签化,设备负责人,设备采购详情,【购买机器的时间,路径】,设备摆放标准。
2.网络划分,远程控制卡,网卡端口,
3.服务器机型,硬盘,内存统一。根据业务分类。
负载均衡占cpu 内存,但不占I/O。
数据库 raid10 ssd 硬盘,cpu 内存
4.资产命令规范,编号规范,类型规范
5.监控标准
操做系统层面:
1.操做系统版本
2.系统初始化(DNS,NTP,内核参数调优)
3.基础Agent配备(zabbix agent ,logstash agent,saltstack)
4.系统监控标准(CPU 内存 硬盘 网络 进程)
应用服务层面:
1. web服务器选型(nginx apache)
2. 进程启动用户,端口监听规范,日志收集规范(访问日志,运行日志,错误日志)
3.配置管理(配置文件 脚本规范)
4.架构规范(nginx+keepalived lvs+keepalived)
5.部署规范(位置 包命名等)
运维操做层面:
1.机房巡检流程 (周期 内容 报修流程)
2.业务部署流程 (先测试 后生产 回滚)
3.故障处理流程 (紧急处理 故障升级 重大事故处理)
4.业务上线流程 (1.项目发起2.系统安装3.部署nginx4.域名解析5.测试6.监控7.备份)
5.业务下线流程 (谁发起下线,数据处理,机器是否回收)
6.工做日志流程 (如何编写工做日志)
7.运维安全规范 (密码复杂度 更改周期 ***使用规范 服务登陆规范)
标准化(规范化 流程化 文档化 ) 目标:文档化
运维自动化-工具化
1.shell 脚本【功能化流程脚本 检查性 报表性】
2.开源工具:zabbix ELKstash saltstack cobber
目标: 1.促进标准化的实施
2.讲重复操做简单化
3.讲屡次操做,流程化
4.减小人为操做的低效和故障率
工具化和 标准化 是好基友
痛点:
1.你至少要ssh 到服务器执行,可能犯错
2.多个脚本有执行顺序的时候,可能犯错。
3.权限很差管理,日志无法统计
4.没法避免手工操做
例子: 好比某天咱们要对一台数据库进行版本停机升级服务,那么要求进行评估。
停机影响:3:00 晚上有定时任务链接数据库,作数据统计表
运维自动化-web化
运维平台
例子:job管理平台
1.作成界面web
2.权限控制(好比: 数据库的 增 删 改 查)
3.日志记录
4.弱化流程
5.不用ssh到服务器,减小人为操做的故障。web ssh
运维自动化的服务化(API化)
DNS web 管理 bind-DLZ dns-api
负载均衡web平台 slb-api
job管理平台 job-api
监控web平台 zabbix zabbix-api
操做系统安装web平台 cobber-api
部署平台 deploy-api
配置管理平台 saltstack-api
1.调用cobber-api 安装操做系统
2.调用saltstack-api 进行系统初始化
3.调用dns-api 解析主机名
4.调用zabbix-api 将新上线的机器加入到监控
5.再次调用saltstack-api 部署软件
6.调用deploy-api 将当前版本的代码部署到服务器上面
7.调用test-api 测试当前服务运行十分正常
8.调用slb-api 将该节点加入到集群
自动化运维-智能化
智能化的自动化扩容,缩容,服务降级,故障自愈
虚拟化扩容
自动化扩容
触发机制à决策系统(决策树)
zabbix 触发action
触发:
1.当某个集群的访问量超过最大的支撑量,好比10000
1.1 cpu 内存使用率达到。。
2.并持续五分钟
3.不是***
4.资源池是否有可用资源
4.1当前网络带宽使用率
4.2 若是是公有云---钱够不够
5.当先后端服务支撑量是否超过阈值。若是超过应该后端先扩容,
6.数据库是否能够支撑当前并发
7.当前自动化扩展队列,是否有正在扩容的节点
8.其余业务相关的
备注:
1先判断buffer 是否有最近x小时,已经建立的虚拟机。
并查询软件版本是否和当前一致,若是一致,跳过234步骤。若是不一致,跳过23
2. openstack 建立虚拟机
3. saltstack 配置环境
4. 部署系统部署当前代码
5. 测试服务是否可用
先启动----而后没反应,须要sleep 一会,而后在测试。
6.加入集群
7.通知(短信 邮件 微信)
自动化缩容:
1.触发条件和决策
2.从集群中移除节点
3. 通知
4.移除的节点存放于buffer里面
5.buffer里面的虚拟机有效时间一天,存放于xx区,超时会自动关闭。
6.xx区的虚拟机,每7天清理删除
ITIL --(IT基础架构库)-------运维经理学的