架构师-day01
1、运维职业发展
运维学习和发展的一个路线:
1、搭建好服务(部署并运行起来)
2、用好服务(监控、管理、优化)
3、自动化(服务直接的关联和协同工作)
4、产品设计(如何设计一个监控系统)
5、云计算的核心竞争力是运维!
6、系统架构师(偏管理):网络、系统、数据库、开发、云计算、自动化、运维管理、服务管理、项目管理、测试、业务
7、专注于某一领域
2、运维职业体系
运维工作内容分类:
监控运维:(7x24运维值班、故障处理)
应用运维:(业务熟悉、服务部署、业务部署、版本管理、灰度发布、应用监控)
安全运维:(整体的安全方案、规范、漏洞监测、安全防护等)
系统运维:(架构层面的分布式缓存、分布式的文件系统、日志收集、环境规划(测试、开发、生产)、架构设计、性能优化)
基础服务运维:(包含运维开发)(内部DNS、负载均衡、系统监控、资产管理、运维平台)
基础设施运维:(系统初始化、网络运维)
3、运维标准化
物理设备层面:
1、服务器标签化、设备负责人、设备采购详情、设备摆放标准
2、网络规划、远程控制卡、网卡端口
3、服务器的机型、硬盘、内存统一。根据业务分类
4、资产的命名规范、编号规范、类型规范
5、监控标砖
操作系统层面:
1、操作系统的版本
2、系统初始化(DNS、NTP、内核参数调优、rsyslog、主机名规范、关闭selinux、关闭防火墙等)
3、基础Agent配置(Zabbix Agent、Logstash Agent、Saltatack minion)
4、系统监控标准(CPU、内存、硬盘、网络、进程)
应用服务层面:
1、Web服务器选型(Apache、Nginx)
2、进程启动用户、端口监听规范、日志收集规范(访问日志、错误日志、运行日志)
3、 配置管理(配置文件规范、脚本规范)
4、架构规范(Nginx+Keepalived、LVS+Keepalived等等)
5、部署规范(位置、包的命名等)
运维操作层面:
1、机房巡检流程(周期、内容、报修流程)
2、业务部署流程(先测试、后生产、有问题回滚)
3、故障处理流程(紧急处理、故障处理、重大故障管理)
4、工作日志标准(如何编写工作日志)
5、业务上下流程(1、项目发起 2、系统安装、3、部署Nginx)
6、业务下线流程(谁发起、数据如何处理)
7、运维安全规范(密码复杂度、更改周期、VPN使用规范、服务登录规范)
目标:文档化
4、运维工具化
工具化:
1、Shell脚本(功能性(流程)脚本、检查性、报表性)
2、开源工具:Zabbix ELKStack SaltStack Cobble
目标:工具化是为何更好的促进标准化
1、促进标准化实施
2、将重复的操作简单化
3、将多次操作流程化
4、减少人为的操作的低效和降低故障率
痛点:
1、你至少要SSH到服务器执行、可能会犯错
2、多个脚本有执行顺序的时候,可能会犯错
3、权限不好管理、日志没有办法统计
4、无法避免手工操作
5、运维Web化
运维操作平台:
例子:Job管理平台
1、做成Web界面
2、权限控制
3、日志记录
4、弱化流程
5、不用ssh到服务器、减少人为操作造成的故障 Web ssh
6、运维服务化
服务(API化)
DNS Web管理 bind-DLZ dns-api
负载均衡Web管理 slb-api
Job管理平台 job-api
监控平台 Zabbix zabbix-api
操作系统安装平台 cobbler-api
部署平台 deploy-api
配置管理平台 saltstack-api
1、调用cobble-api安装操作系统
2、调用dns-api 解析主机名
3、调用saltstack-api进行系统初始化
4、调用zabbix-api进行新上线的机器加监控
5、调用saltstack-api部署软件(安装Nginx + PHP)
6、调用deploy-api 将当前版本
7、调用test-api测试当前服务运行是否正常
8、调用slb-api将该节点加入到集群
7、运维智能化
智能化:
服务化
API化
Web化
平台化
标准化
工具化
1、智能化的自动化扩容、缩容、服务降级、故障自愈
2、触发机制------>决策系统------->
触发:
1、当某一个集权的访问量冲过最大支撑量。比如100000TPS
2、并持续5分钟
3、并不是攻击
4、资源池有可用资源
4.1、当前网络带宽使用率
4.2、如果是公有云------钱够不够
5、当前后端服务支撑是否超过阈值,如果超过后端先扩容
6、数据库是否可以支撑当前的并发
7、当前自动化扩展队列,是否有正在扩容的节点
8、其他业务相关的:
之前:先判断buffer里面是否有最近x小时,已经移除的之前创建的虚拟机,并查询软件的版本是否和当前一致,如果一致,跳过 2 3 4 步骤,如果不一致,跳过2 3
1、OpenStack 创建虚拟机
2、SaltStack 配置环境
3、部署系统当前代码
4、测试服务是否可用(注意间隔和次数)
5、加入集群
6、通知(短信和邮件)
9、自动化缩容:
1、触发条件和决策
2、从集群中移除该节点
3、通知
4、移除该节点存放于buffer 中
5、Buffer里面超过一天的虚拟机、自动关闭,存放于xxx区
6、xxxx区的虚拟机,每隔7天清理删除
8、推荐
ITIL
PMP
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
2021-05-30 Linux常用命令总结