作为技术人,想称呼自己是一个技术人的,或多或少都有一些想法,做前端的想了解后端,做后端的想学前端,想自己独立owner一个项目,又或者有创业的想法。
我也一样,作为一个工作很多年的前端开发,很多时候做的东西依赖后端服务才能运行,很羡慕后端流利的命令行操作,羡慕大公司的各种各样的监控、埋点、日志、告警等系统,而我却不知道谁做的。
还一个很深很深的感触是,软件开发的成本真的很高很高,我前面有篇文章写过一些软件开发的问题
互联网发展了几十年,早已形成了各行各业各种需求的解决方案和开源软件,这些开源软件经过岁月的洗礼,有的成为了行业标准,有的还在发展,代码质量方面要比绝大多数公司开发的项目要好很多。造轮子不如用轮子,如果能充分利用这些开源软件解决企业的诉求,哪怕是只解决某方面80%的诉求,那也会给公司节省不少的开销。
也正式这个原因,我最初尝试的想法是搭建一个标准的企业作业流程。包含组件库、SDK、埋点、日志上报、监控告警等系统,具体如Sentry、Gtrace、AB实验、Jekins、Metis、Grafana、ElectionSearch、Kibana、faas、埋点等系统。但是发现这些有不少是运维SRE要做的事情,原来运维才是离技术变现最近一环,考虑能够很好的控制和使用这些系统,做到相对安全,所以下定决心学一下linux运维课程。
下面以一个网站的综合架构视角,聊一聊运维须知必会的开源软件的部署和维护。
先来看一张图
相关工具 | |
---|---|
存放代码 | Git, svn, Gittee,Github,Gitlib |
集成,发布 | Jekins GithubAction |
代码检查 | Sonarqube |
私服,软件包管理 | Nexus |
DNS解析 | DNS运解析(阿里),Bind9,DNSmasq,CoreDNS.. |
CDN缓存 | 阿里云、蓝汛、七牛... |
防火墙 | 硬件防火墙:深信服,奇安信,华为 软件:firewalld,iptables 公有云:安全组、态势感知,云安全中心 |
负载均衡 | 硬件:F5... 软件:nginx,tengine,openResty,haproxy,lvs 公有云:... |
Web网站服务器 | 基本架构nginx,tengine,openResty 架构: Linux,Nginx,Mysql, + LNMP(PHP) LNMT(Java) LNMP(Python) LNMG(Golang) |
缓存服务器 | Redis,Kafka,xxxMQ(RabbitMQ),RocketMQ |
数据库服务器 | MySQL,Oracle(甲骨文),Mariadb(Mysql被收购后,作者又写了一个) 国产:TiDB,openGauss,OceanBase |
存储 | 硬件存储 软件存储:NFS,分布式存储... 对象存储:阿里云OSS,七牛云对象存储,腾讯COS |
备份 | 定时任务,脚本,打包压缩 Rsync |
VPN | 硬件,开源OpenVPN |
堡垒机 | 开源:Teleprot,Jumpserver 商业:硬件,软件 |
批量管理 | Ansible,SaltStack,Puppet,Chef,Farbic |
监控 | Zabbix,Grafana,Prometheus |
日志手机平台 | Elastic Stack(ELK,EFK,EBLK), ElasticSearch,Filebeat,Logstash,Kibana |
审计 | SQL审计,Yearning,Archery 操作/行为审计(堡垒机) |
安全 | 商业: AppScan, Nessus 开源:ClamAV...... |
接下来的时间,我打算写以下内容
本文作者:郭郭同学
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!