[toc]前端
比较主流的虚拟化技术,不过在运维水平比较差的公司,还能看到在用盗版的VMware产品。若是测试环境规模稍微有点大,能够考虑使用云平台,诸如各类流行的 Stack
。若是本身有能力,可使用 libvrit
提供的API,本身写一个管理平台也是能够的。适合内部使用便可,开源的各类 Stack
都比较重,用起来都是有一些成本的。数据库
统一了开发及线上环境,适合微服务。编程
公有云有你用到的全部东西。在一个使用了公有云的公司,那么彻底能够不须要运维及测试了,帮助企业快速完成DevOps转型。公司作Dev,公有云作Ops。
公有云在IaaS、PaaS及SaaS层面都有相应的产品,真正懂你所需,公司能够根据自身状况选择使用合适的产品便可。
安全起见,可使用子帐号进行 API
相关的一些操做。后端
若是数据量比较大,能够考虑使用开源的分布式存储,后面在私有云平台或Docker或K8S上估计都会用到。缓存
OpenResty 并非一个新的事物,而是 Nginx 与 Lua 的组合。OpenResty 创始人章亦春把 Lua 脚本嵌入了 Nginx,结合 Lua 能够很灵活的扩展 Nginx 的功能,如实现 WAF 等。并且作的事情远不止这些。安全
主要包括关系型数据库与非关系型数据库。基本的 SQL 功底仍是要有的。负载均衡
号称世界上最流行的数据库,用的仍是很是普遍的。看来“最流行”的称号并非吹的。运维最关注的仍是如何确保数据的安全性及高可用性。框架
运维层面须要作到的是:运维
关于备份及恢复用到的工具,市面上仍是有不少的。选择你熟悉的便可。编程语言
号称世界上最早进的数据库,使用的用户仍是不少的,不过这些用户大多在国外,在国内用的不如 MySQL 普遍。若是你以为没有合适的数据库能够选择的话,那就选择 PostgreSQL
吧。
主流的键值存储数据库。通常用来作关系型数据库的缓存。
比较著名的开源监控系统,功能强大。若是要定制或二次开发,相对比较困难(须要咱们有C语言(后端)及PHP(前端)的功底),这里所说的困难是面对运维人员来讲的。
由小米开源的监控系统,使用Go语言编写。若是要定制或二次开发则相对容易,支持脚本语言(Bash、Perl、Python等)对其进行扩展或二次开发。而这些脚本语言对运维人员来讲并不陌生,但能不能用的熟练就是另一回事了。
上述的监控软件,它们的UI界面不是很Nice,可使用比较流行的Grafana。
能够作监控及指标监控。
应用程序的指标监控。四个黄金指标:
有了指标监控,再加上服务调用链追踪,效果会更好。
服务链调用追踪解决的问题:
Twitter 推出的服务调用追踪系统
Uber 推出的服务调用追踪系统
华为推出的服务调用追踪系统
比较轻量级(相对Puppet及SaltStack)的自动化配置管理工具。让运维告别使用脚本进行循环来完成批量操做的任务,而是真正的使用并行来作操做管理。
作为IT界的一员,无论是什么工种,不会一门编程语言,都很差意思跟别人打招呼。
Python的口号是:"Life is short, use Python."
Golang具备C的性能及Python的姿态,它的口号是:"Life is short, let's Go."
OpenResty中须要用到Lua语言,因此掌握一下这门语言也是应该的。
如今无论是什么职位,总得会点JS吧,否则离全栈仍是有点距离的。若是不会一点,本身想作个页面,还要找前端同事,多么不方便。
有了编程语言及相应的开发环境,那就该有一个代码托管的地方。这里推荐使用Gitlab
做为公司内部的代码托管服务,相信不少公司也是这么选择的。
涉及到Java开发,就少不了下面的几个组件:
JDK
Maven
(Ant
或Gradle
)Nexus
Spring全家桶要知道有什么,及怎么工做的。如:
Python 世界中一个大而全的WEB框架。
Python 世界中一个小而美的WEB框架。
这在平常的工做中,有着很大的比重。若是这一块作很差,运维将会比较苦逼。市面上的CI/CD工具比较多,选择也比较多,推荐使用Jenkins或者自研。
平时能够开发一些小工具,这些小工具能够帮助本身或开发快速获取一些信息,如:
Eureka
的注册信息,能够知道本身的服务部署在哪里及监听的端口运维要把基础型的工做作好以后,就能够用更多的时间与精力作更有价值的事情了。基础型的工做主要有:
上述工做作好以后,就能够作一些公司内部的运维平台,方便开发同事进行更高效地开发。