什么是云原生?作为一个测试,是否要了解,甚至去学习呢。虽然技多不压身,但是也要符合自己的职业规划
我开始对云原生也是不了解,后来在活动行参加过几次云原生的活动。讲师分大多是分享k8s,kong,envoy,Prometheus,k8s分布式存储,etcd键值存储,可观察,k8s网络插件等,好多好多,等都是我不了解的东西,CNCF组织啥的也是不了解,与我以前的知识储备对不上号,像我以前学习的html,MySQL,Python等完全没有被提及。
我早期参加工作的时候,测试也会负责测试应用的部署,开发给我一个war包,我通过scp把它拷贝到服务器上面,通过Tomcat部署,那里能想得到讲师们讲的东西,是一场怎么样的革新,如今我基本上不负责部署应用,但如果也不去了解的话,那么就说不过去了,但是如今想去了解,却有阻力了,因为认知不够,无法进行下去了。
技术日新月异,如果我还停留在以前的认知上面,那么我就会被时代抛弃。所有,我有了学习的目标,例如docker,k8s,Prometheus。
经过一段时间的学习docker,k8s,Prometheus才有了一个概念。这些都是新时代的产物,尤其是其中的佼佼者k8s.
学习了docker,你知道容器镜像是怎么一回事,知道它是怎么保证环境一致性的,知道轻量级部署,比起虚拟机简直飞一般。
学习了k8s,你知道编排是怎么一回事,知道弹性伸缩,自动扩容,金丝雀发布等
k8s第一次让我惊讶的事情,访问集群中任意一个IP加某个应用端口,都可以自动访问到目标应用。
例如一个Python应用是5000端口,k8s集群3个节点,节点a 172.16.2.1,节点b 172.16.2.2,节点3c 172.16.2.3
那么访问任意一个IP都可以访问到Python应用
http://172.16.2.1:5000
http://172.16.2.2:5000
http://172.16.2.3:5000
这让我觉得很神奇
学习了Prometheus,可以了解到指标收集,上报,监控,可以通过grafana或观测云来查看监控报表,这样可以通过一些指标来判断是否有异常。
还有很多需要学习的,服务网格,opentraceing链路追踪,等很多东西,为什么要学习这么多与测试没有关系的内容,如果不学习的话测试的工作照样可以做,我只能说如果不学习,很多测试方向或测试的手段你根本就想不到,我曾听一个混沌测试的大佬分享他的混沌测试,在环境中注入各种故障,网络丢包,网络延时,包重复等情况,把它部署到k8s集群中使用demoset部署,定时干扰主机,测试应用健壮性,如果你不懂这些,你都听不懂他在干什么,何况实践呢?
不要在乎技术边界,生命不息,学习不止