背景:
算是一个腾讯云深度用户,用了78年左右,由于业务需求,今年五月份开始逐步在阿里云跑了一些服务。不吹不黑。发自内心的吐槽一下阿里云的ack服务。其他服务没有多大发言权。都差不多。但是作为一个算是比较早期的kubernetes用户有必要吐槽一下阿里云的ack服务,没有办法。圈子里面没有阿里云容器组的人,像是腾讯云的tke的服务有问题可以直接找到相关人员反映,提交一下个人意见了。
深度吐槽阿里云ack服务
1.从创建集群开始吧
1. 关于虚拟交换机
关于这个选择虚拟交换机我就很不能理解,比如我现在有四个交换机,ok,我选择了三个,是不是我另外一个交换机的服务器就不能加入集群?前提是我选择了专用网络了,理论上我的专用网络内任何一台服务器是不是都可以加入集群?为什么要给我加一个这个的限制呢?不知道我的理解有没有问题,也欢迎各位阿里云的大佬指正!
2.关于容器的网络
这个地方更是恶心....默认的pod 的cidr 172网段的,service cidr192.168.0.0/16段的?这只是我的截图阿,反正就是 两个网络的段不会是一个大的网段默认的......
pod 网络 service网络默认会是两个不一样的私网....可是我有点强迫症....我想pod service cidr在一个网络内可不可以?请看一下腾讯的我只设置了容器网络172.1716.0/20,然后我的容器pod网络自动设置为了172.17.16.0/20,service cidr设置为了172.17.28.0/22:
这样他不香吗?关键是这样,我后面如果多vpc,多地域集群作互联是不是会方便一些?
可能手动的可以设置。但是用户引导这方面设置为两个不同的私网是很恶心的,请考虑一下多集群互联,和网络资源的规划!
这只是集群创建过程中体验的不爽的...
2.当集群创建完成之后:
1.资源的扩容添加服务器到集群
这个问题我提交过工单,工单可见服务编号000D0585GS。过程是这样的。我要添加一台已有的服务器加入集群,然后竟然加不进去,查了一圈问题,客服告诉我,要先把这台服务器加入到ack节点的安全祖我才能操作....what这是什么鬼操作?我添加机器进入集群,安全祖不应该默认添加吗?还需要我手动先将机器加入安全祖我才能添加机器进入集群?这是什么神仙操作?很让我费解。工单中提交了个人意见希望能更改这个流程,不知道后续是否有什么修改
2.诡异的alb
事情是这样的:我应该三四月份创建的ack集群,然后当时看网络路由有ALB ingress,咱没有用过阿...体验一下吧!结果就是我没有创建成功......有点忧伤,作为一个用了kubernetes5-6年的用户我竟然没有搞成功,好吧一气之下删除了,换成了traefik作代理。诡异的时期 14天后的一个夜晚发生了.....自动创建了ALB服务。完全懵了......我不是删除了吗?为什么是14天的周期自动创建了?
我关心的是删除了服务 ,为什么没有删除干净?为什么14天后服务自动创建了?这都是什么神仙操作?
3.日志服务关于Job日志的采集
谁家还没有几个job服务呢对吧?然后接入了阿里云的日志采集服务。恩关键是日志完全没有采集到阿....怎么会事情?问 了一下我的job退出太快了....
关键是job就算退出了也是complete状态吧?默认的可以看到最新的三个任务的日志吧?起码kubectl logs -f?采集不到....好吧,修改代码打完了日志等待30秒再推出...这也太恶心了......我起码filebeat啥的采集也能采集到吧?怎么就不能呢?能不能别让我修改阿......
4.可恶的报警.......
先吐槽一下这个报警模板,大家的审美观看一下可还顺眼?
第一眼ack 好的我默认打开ACK
TMD报警模板里面的实例名称能不能给ack集群中节点名称一致我那里下手阿?哦对有公网IP我凑 ,这ack控制台显示公网Ip吗?点开详情ip这里才能发现是这一台
这里我希望报警模板实例能与ACK节点名称规范化一下。ack控制台节点相关信息显示也能够更完善一下。
然后接着吐槽,报警这里fs.inode.utilization_device设置的阈值是85%没有问题,看一下kubelet的垃圾回收:--eviction-hard=imagefs.available<15%,memory.available<300Mi,nodefs.available<10%,nodefs.inodesFree<5%
。这是默认的吧压根就没有修改吧?那这个报警与垃圾回收有什么用呢?我就想知道?
好吧我自己去修改kubelet配置文件行不行?
eviction-hard=imagefs.available<15%,memory.available<300Mi,nodefs.available<20%,nodefs.inodesFree<15%
找了一圈我竟然无法确定改修改哪个文件
我这里修改可以吗?
重启服务后
ps -ef|grep kubelet
还是这样 我怂了 ,惹不起!
我改一下报警行了不?,惹不起我躲了!
看一下正常kubeadm集群的配置:
我修改了一下kubeadm-flags.env好歹是生效的阿?对不
惹不起我躲了....先修改监控报警策略了!而且从根本上来说,托管的服务。这些东西应该是优化好的尽量去减少用户的操作不是吗?你的 报警跟垃圾回收策略都不一致,搞毛线呢?问题是我个人修改参数他也不生效阿.....这让我怎么玩?毫无舒适感,不想动了!
希望阿里云ack的小伙伴能看到我的吐槽,没有办法阿吐槽无门阿....太高高在上了.....希望能听一下用户的心声!