运维体系标准化建设的思考
思考问题:
运维在做什么?自己所做的工作在运维体系里面属于什么位置?
工具化和平台选型之前,应该做什么?
自动化的前提和方向是什么?
CMDB该如何建设?
……
观点在微服务的架构模式下,我们的运维视角一定转到应用这个核心概念上来,一切要从应用的角度来分析和看待问题。
概念应用:可独立部署和运行,并提供对应的业务能力。
应用来源微服务架构一般都是从单体架构或分层架构演进过来的。软件架构服务化的过程,就是我们根据业务模型进行细化的过程,在这个过程中切分出一个个具备不同职责的业务逻辑模块,然后每个微服务模块都会提供相对应业务逻辑的服务化接口。
应用模型及关系模型的建立上面我们定义出来的一个个应用,都是从业务角度入手进行拆分细化出来的业务逻辑单元。它虽然可以独立部署和运行,但是每一个应用都只具备相对单一的业务职能。如果要完成整体的业务流程和目标,就需要和周边其它的服务化应用交互。同时,这个过程中还需要依赖各种与业务无直接关系、相对独立的基础设施和组件,比如机器资源、域名、DB、缓存、消息队列等等。所以,除了应用这个实体之外,还会存在其他各类基础组件实体。同时,在应用运行过程中,还需要不断地 ...
运维体系是什么
什么是运维体系直接上图
运维的所有工作,都是在对运维对象进行标准化实施
运维工作该怎么做?做到什么程度?有什么样的检验指标? 这就涉及到运维指标以及运营指标,运维指标体现在监控,安全,可靠,稳定等要求上;运营指标体现在成本,效益,体验,效率等指标上。在这些指标上,通过标准,制度,流程,工具等运维能力来完成
最后,面向业务,运维应该输出什么样的决策支持?面向技术,怎样沿着 标准化 --> 自动化 --> 智能化 的方向前进,如何进行知识沉淀等。
以上内容即为运维体系的概况
下面就从几个不同的视角来看运维体系:
运维对象对象分层,这里每个公司都会按照组织架构,岗位职责来划分,略有差异。有的公司会有基础设施部门,分管机房,云服务,操作系统等,有的公司可能有系统工程师,分管操作系统,云服务,有的会有应用运维工程师,分管应用服务,中间件等…
基础设施:运营商专线、机房(机房内的设施,比如制冷、安防等)资源池:硬件服务器,存储,公有云,vcenter,docker,k8s系统层:操作系统,中间件,数据库,网络应用服务:应用服务可用性、状态、应用性能客户体验:客户端体验
运维能 ...
项目各阶段协同沟通流程
摘要一个项目从立项到生产上线运行,从运维的角度来看,要经历哪些关键阶段?各阶段的目标,干系人,输出交付,流程都有哪些? 在清晰地理解了这些阶段之后,各团队成员可以各司其职,协同合作,确保项目按计划推进和成功实施。
流程图
瞎想当然,这只是一份运维视角的协作沟通流程,从图中可以梳理出常规的运维工作项和工作流程,当然也可以补充一些细节:例如项目资源申请阶段,可以将申请后的资源录入CMDB等。
从开发视角来看,可能更多关注系统架构,模块划分,微服务定义,公共组件抽取等开发逻辑点上,同理也可以针对项目的全生命周期来做相应调整。
测试同学,也可以在项目的全生命周期中,来规划和定义测试用例什么时候编写,哪些关键功能需要测到什么点,需要做哪些临界测试或特殊场景准备,性能测试和容灾测试需要做到什么程度等。
总结每个人都是项目经理,站在不同的视角,来对项目的生命周期进行管理,从而抽象出自己岗位的工作项及工作流。
工作不仅仅是指哪打哪,更重要的是经过自己的理解,与其他团队相互碰撞之后,及时调整和总结,形成标准工作流。这既是个人创新的方向,也是团队标准化的方向。
思考:运维,该如何学习?
这里简单列两点,针对linux基础和linux的一些服务(工具)该怎么学
linux基础学习这一部分非常简单,基本上参考鳥哥的 Linux 私房菜跟着敲一遍就可以了。
这里有一个学习技巧:学会查文档,使用下面三个方式来查(不会有人只知道–help吧)
info命令
--help
man命令(强烈推荐)
linux服务学习任何服务,弄清楚以下几件事即可:
是什么?
有什么用? (能够解决什么问题?能够达到什么效果?)
怎么用?
细节
特性 (这个是对服务的特殊场景,特殊功能深入研究)
细节主要是一下几项:
安装
安装依赖
安装目录
安装方法
配置
配置文件
数据目录
日志目录
管理
启停命令
开机自启
巡检计划
监控告警
1234这些考虑点可以应用到生产环境,这样一来:1. 所有的服务都可以按照同一个模板来学,这就是方法!2. 自己在生产部署的过程中,也可以按照这些来补充运维白皮书。3. 也可以作为乙方向甲方交付运维的交接模板,甲方可以要求乙方详尽列举出所需材料。(当然,交接远不止这些,还需要考虑:业务属性,用户范围,供应商联系方式,lisence,合同,系统 ...
Elasticsearch7.x开启账号密码功能
修改elasticsearch.yml配置文件以单机实例为例,原配置文件
123456cluster.name: elasticsearchnode.name: es-node-1path.data: /data/elasticsearch-7.17.1/datapath.logs: /data/elasticsearch-7.17.1/logsnetwork.host: 0.0.0.0cluster.initial_master_nodes: ["es-node-1"]
修改后配置文件如下:
12345678cluster.name: elasticsearchnode.name: es-node-1path.data: /data/elasticsearch-7.17.1/datapath.logs: /data/elasticsearch-7.17.1/logsnetwork.host: 0.0.0.0- cluster.initial_master_nodes: ["es-node-1"] #这一行注释掉,因为它和下一行的single ...
汇总
Linuxhttp错误码和原因HTTP错误码是服务器用来传达客户端请求结果的一种标准方式。这些状态码被分组为五个类别,每个类别以一个数字开头,表示不同的含义。以下是HTTP中一些常见的错误码及其原因:
1xx (信息性响应)
100 Continue: 客户端应继续其请求。
101 Switching Protocols: 服务器已经理解了客户端的请求,并将通过升级协议来完成它。
2xx (成功)
200 OK: 请求已成功。
201 Created: 请求成功并且服务器创建了新的资源。
204 No Content: 服务器成功处理了请求,但不需要返回任何实体内容。
3xx (重定向)
301 Moved Permanently: 请求的网页已被永久移动到新位置。
302 Found: 请求的网页临时从不同的URL响应。
304 Not Modified: 如果请求包含条件GET方法的条件之一,则文档未被修改。
4xx (客户端错误)
400 Bad Request: 服务器无法理解请求的格式,客户端不应该在没有修改的情况下重复此请求。
401 Unauthor ...
在k8s平台部署Nacos集群
READM摘要本文介绍在kubernetes中,使用statefulset部署Nacos集群。整体来说,Nacos本身还是无状态的情况,数据持久化到mysql中,集群只是一个高可用的方案。
部署初始化数据库1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681 ...
Nginx隐藏版本号
修改nginx.conf
修改nginx.conf配置文件 nginx配置文件里增加 server_tokens off;server_tokens作用域是http server location语句块server_tokens默认值是on,表示显示版本信息,设置server_tokens值是off,就可以在所有地方隐藏nginx的版本信息。
123http{ server_tokens off;}
分别修改fastcgi_params和fastcgi.conf文件12- fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;+ fastcgi_param SERVER_SOFTWARE nginx;
重启Nginx服务1nginx -s reload
验证修改后,nginx将不显示版本:
draw.io如何使用自定义字体
今天在使用drwa.io画图时,发现默认字体不够用,想试试自定义字体。先看看字体设置设置OK,可以看到自定义...中有一个Web Fonts选项
找到本地字体我的操作系统是Windows 10, 默认字体目录是 C:\Windows\Fonts以微软雅黑为例,双击进入,可以看到微软雅黑有 常规,粗体,细体三种因为这个目录是windows特殊处理过,我们将这三个字体文件复制到普通目录中这里三个文件的完整文件名就显示出来了
上传微软雅黑字体到对象存储这里我用的对象存储是七牛云(毕竟有免费10G的空间),大家也可以用其他的云商或者自己的服务器上传到对象存储,拿到外链
配置自定义字体并使用接下来将上面的外链配置到自定义字体中,这里我配置常规和粗体两种应用一下试试完美!
Twikoo私有化部署并应用于butterfly主题配置
参考文档根据官方文档,我选择了Docker部署方式
部署指南安装Docker这个不会还有人不会吧,请到网上搜一下教程
Docker启动Twikoo1docker run -p 8080:8080 -v ${PWD}/data:/app/data -d imaegoo/twikoo
如果镜像下载速度慢,可以将命令中的 imaegoo/twikoo 替换成 registry.cn-hangzhou.aliyuncs.com/imaegoo/twikoo默认端口 8080,如果遇到端口冲突问题,请修改命令中的 8080:8080 为 自定义端口:8080。
测试Twikoo12[root@qiushaohu qiushaohu.cloud]# curl http://localhost:8080/{"code":100,"message":"Twikoo 云函数运行正常,请参考 https://twikoo.js.org/frontend.html 完成前端的配置","version" ...