云原生时代的运维新归宿 - 运维知识体系
Posted 云原生兴趣小组
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了云原生时代的运维新归宿 - 运维知识体系相关的知识,希望对你有一定的参考价值。
从救火背锅到生产力担当,云原生时代的运维新归宿: Code as Infrastructure, Code as Everthing !
从 2013 年 docker 开源,到 2014 年发布正式版本(1.0),容器技术因为其轻量方式实现了系统级别的隔离特性受到追捧,并且发展迅速。再后来 Google 开源了 Kubernetes 并且和 Linux 基金会合作成立了 CNCF,随着开源社区的不断发展,以 Kubernetes 为核心建立的云原生生态逐步完善。云原生时代的基础设施是以容器技术为基础,以 Kubernetes 为平台的架构。那么云原生架构下运维知识体系是怎样的呢?
云原生平台已经定义了基础设施的标准,未来会有更多运维方面的事实标准落地,DevOps 标准,交付标准,自动化运维标准等等,只有尺度适合的标准才能更好的促进行业内的繁荣。
代码定义一切,GitOps 已经非常流行,相信后面可定义的范围会更广。
人工智能快速发展,AIOps 已经在各大厂商落地,得益于云原生平台,AIOps 将能和更多的特性结合,将来也会更加精确通用。
Serverless 将彻底屏蔽基础设施,运维概念对应用研发透明。
再远一些,立足于云原生平台,随着运维自动化的程度大幅度加强,NoOps 不再是奢望,运维人力会得到很大程度释放。
运维架构层级/运维角度 |
内容描述/主要技术关键词 |
监控体系 |
自动化/DevOps |
云计算 |
|||
客户端层 |
浏览器 |
Cookie作用域、浏览器缓存协商(Last-Modified、Expires、Etag)、组件分离、前端优化、运维检测工具 |
舆论监控 外部网络监控 APM |
故障检测工具 |
DNS服务 CDN服务 移动服务 云盾 |
||
DNS |
浏览器DNS缓存、DNS缓存、自建DNS服务器、商业DNS产品、智能DNS、公共DNS(BGP anycast)、bind+DLZ/DPDK |
||||||
客户端/APP |
HTTP-DNS、打点日志、加密传输、移动推送、各类SDK(监控SDK、推流SDK等) |
||||||
外部层 |
第三方CDN |
GSLB、反向代理缓存、分布式存储、流量调度、配置管理、用户端(各类API如:带宽监控、预缓存、缓存刷新) |
基于开放API开发 |
||||
云计算 |
公有云服务、混合云、运维外包服务、APM(应用性能管理)、第三方安全解决方案(防DDOS、WAF) |
||||||
网络层 |
互联层 |
设备监控 (Zabbix SNMP) 网络质量监控 (Smokeping) |
SDN OpenvSwitch (GRE、Vxlan) |
高速通道 |
|||
核心层 |
防火墙、路由器、Ipsec VPN、链路负载均衡和高可用 (CCNP级别) |
VPC(专有网络) |
|||||
汇聚层 |
三层交换 动态路由(OSPF)、静态路由、EC(端口汇聚)、MSTP+VRRP等 (CCNP级别) |
||||||
接入层 |
二层交换 (VTP、SPF、Trunk、端口安全)等 (CCNA级别) |
||||||
接入层 |
负载均衡 高可用 |
四层负载均衡 |
开源:LVS(IP负载均衡)+Keepalived、Haproxy 商业:F5、Netscaler |
服务监控(API) |
平台开发 (LBaas) |
高防IP 云负载均衡SLB CDN服务 |
|
七层负载均衡 |
反向代理:Haproxy、nginx、Apache(根据HTTP协议支持的属性进行L7分发)、A/B Test Gateway、WAF |
||||||
反向代理缓存 |
ATS、Squid、Varnish、Nginx(缓存分级、预缓存、缓存刷新) |
||||||
应用服务层 |
Web服务层 |
HTTP协议、Web服务器(Apache、Nginx/OpenResty、Tomcat、Resin、Jboss)安全设置、性能优化 |
业务监控(API) 流量分析(Piwik) 服务监控(API) 安全监控(WAF) |
配置管理:SaltStack 过载保护-服务降级 灰度发布-openresty 项目管理-Readmine 代码仓库-gitlab 持续集成-Jenkins 持续审查-SonarQube |
镜像市场 |
||
应用服务层 |
运行环境(php Python Java C C++)、性能优化、缓存(OPCache、LocalCache)、Session存储、代码部署 |
各种SAAS服务 |
|||||
业务层 |
业务实现 |
API网关、302调度、业务模块化(电商例:用户、商品、购物车、结算中心、价格等服务)、微服务 |
|||||
服务层 |
SOA框架(Dubbo)、微服务框架(istio、Spring Cloud)、协议(RPC、RESTful)、框架安全、应用性能监控 |
分布式应用服务 |
|||||
分布式层 |
消息队列 |
ActiveMQ(成熟)、RabbitMQ(成熟、案例多)、RocketMQ(业务应用)、Kafka(日志传输)、ZeroMQ(快) |
消息队列服务 |
||||
存储层 |
文件存储 |
单机存储 |
块存储 - 机械硬盘、SSD、文件系统(ext4、xfs)、LVM、tmpfs |
系统监控 软件自带监控 |
配置管理 |
云硬盘 对象存储 |
|
单机存储扩展 |
文件分发(多级分发)、文件同步(rsync、inotify)、DRBD、DAS(块存储) |
||||||
共享存储 |
文件存储 - NAS[NFS(Unix/Linux)]、FTP、SAN、iSCSI |
||||||
分布式存储 |
对象存储 - GlusterFS、MooseFS、Ceph、FastDFS(非对象存储) |
||||||
DAL |
数据访问层 |
应用层分片、淘宝TDDL、开源:360(Atlas)、阿里(Cobar)、MyCat、mysql-Proxy、根据业务开发 |
数据库服务 |
||||
数据存储 |
分布式缓存 |
Memcached、Redis(客户端分片、Redis Cluster、Twemproxy、Codis) |
数据库监控 |
数据库运维平台 |
云数据库-RDS Mongodb、Redis Memcached OceanBase |
||
NoSQL |
Redis、LevelDB(SSDB)、CouchDB、Mongodb、Couchbase 、Cassandra、TiDB(支持MySQL协议) |
||||||
时间序列 |
RRDTool、Graphite Whisper、OpenTSDB、InfluxDB、KairosDB、ElasticSearch |
||||||
RDBMS |
MySQL(PXC集群、MHA)、Oracle(DG、OGG、RAC)、PostgreSQL、SqlServer、SQLite、DB2 |
||||||
大数据 |
Hadoop生态圈(HDFS、Hive、Hbase、Zookeeper、Pig、Spark、Impala、Kudu)、Mahout智能推荐 |
服务监控 |
Ambari、CM |
大数据服务 |
|||
基础服务层 |
业务决策 |
灰度发布、服务降级、异地灾备、数据分析平台、智能扩容决策树(需要各层支持)、智能监控 |
监控工具: Zabbix Nagios Cacti Open-Falcon Sensu |
自动化工具 (Puppet Chef SaltStack Ansible) |
日志服务 操作审计 资源编排 运维监控服务 持续交付系统 |
||
运维相关 |
项目管理(Redmine、Jira、知识库、Bugzilla、CodeReview)、工单系统、运维操作平台、监控平台 |
||||||
应用相关 |
持续集成、日志收集平台(ELKStack)、自动化部署平台、Job管理(调度)平台、安全扫描平台 |
||||||
系统相关 |
LDAP、内部DNS、DHCP、Mail、SMS、Gitlab、Yum仓库、操作审计(xenapp)、堡垒机 |
||||||
容器层 |
容器编排 |
Mesos(Marathon、Chronos)、Kubernetes(SKYDNS)、Docker Swarm、CoreOS(fleet)、OpenStack(Magnum) |
Docker Stats cAdvisor DataDog Zabbix |
Docker Swarm Mesos Kubernetes |
容器服务 |
||
容器和系统 |
容器:LXC、LXD、Docker、rkt、系统:CoreOS、Atomic、RancherOS |
||||||
网络和存储 |
网络:Calico、Flanel、Weave Net 存储:Ceph 镜像管理:Docker Registry、Harbor |
||||||
操作系统层 |
CPU |
CPU运行级别、使用率、上下文切换、运行队列、进程调度、系统调用、CPU管理(进程管理、taskset、intel VT-X) |
mpstat、strace |
虚拟化 |
公有云 弹性计算产品 |
||
内存 |
虚拟内存、SWAP换入换出、内存寻址、内存管理(Buffer Cache、HugePages、ksmd、EPT) |
vmstat、free |
|||||
I/O(磁盘) |
缺页中断、IOPS(顺序IO、随机IO)、IO管理(IO调度算法、virtio)、VFS |
iostat、iotop |
|||||
I/O(网络) |
TCP/IP(三次握手、四次挥手、状态转换、TCP队列)、IO模型、Bonding、Bridge、网络管理(iftop、tcpdump) |
iftop |
|||||
内核/Shell |
内核定制、内存参数优化、脚本编程(AWK、Sed、Shell、Python、PHP、Perl、Ruby、Lua) |
系统监控 |
|||||
基础设施层 |
IAAS(基础设施即服务) |
公有云、私有云(OpenStack/cloudstack+KVM/XEN、oVirt)、混合云 |
服务监控 |
配置管理 |
|||
硬件管理 |
硬件选型、配件更换、资产录入、系统安装(Cobbler)、标签化、Raid构建、远程控制(KVM、iDrac、ILO、IMM) |
巡检、IPMI |
IPMI、CMDB |
||||
IDC托管 |
需求分析、IDC选型、网络测试、谈价格、签合同、设备采购(原厂vs渠道)、机柜和机位规划 |
||||||
运维产品化 |
基于DevOps产品思路 |
项目管理(类似Jira)、Bug管理、代码托管(类似Gitlab)、持续交付(类似Jenkins的构建、测试、部署) |
监控平台、看板 |
软件定义数据中心 |
DevOps产品 |
||
自动化运维产品思路 |
CMDB、ITSM管理系统(事件管理、问题管理、故障管理、工单系统)、作业平台、堡垒机、APM、私有云平台 |
监控平台 |
CI/CD系统 |
运维管理产品 |
|||
运维服务化 |
OAAS |
OAAS:Operations as a Service, 运维咨询、运维托管、技术培训、应急处理、产品即服务、DevOps专家服务 |
|||||
测试和开发相关 |
运维协助:性能测试(TCPCopy、日志转换)、单机监控(nmon)、环境规划(开发、测试、预生产、生产)、CI(持续集成)、自动化部署 |
||||||
运维管理体系 |
运维管理必会:ITSM、ITIL V3、IT Service CMM、Six Sigma、DevOps Master、项目管理(PMBok)、架构层面(知识体系、运维方案、容量规划、灾备规划、服务降级) |
||||||
运维发展趋势 |
应用运维、系统运维、基础运维、运维开发 |
||||||
云原生架构下运维舞台 |
|||||||
备注: |
云原生架构下运维人员不要给自己划知识边界! |
以上是关于云原生时代的运维新归宿 - 运维知识体系的主要内容,如果未能解决你的问题,请参考以下文章