基于您所提的6点要求,您不妨可以尝试一下开源工具 Rancher 2.x,Rancher是一套容器管理平台,它可以帮助组织在生产环境中轻松快捷的部署和管理容器。 Rancher可以轻松地管理各种环境的Kubernetes,满足IT需求并为DevOps团队提供支持。不仅可以方便快速的创建管理多k8s集群,对于已经存在的k8s,也可以方便的导入并管理。一些参考链接如下:
关于6点问题的解答如下
NodePort
、Ingress
等方式提供给外部访问(这是标准的服务发布),而对于暂时未做容器化的服务,Rancher支持用户方便的把集群外的服务(IP)解析为集群内的service
。而这样便实现了集群内网服务访问的一致性,同时通过自定义service
注册的方式,实现了集群内应用对外部服务的解耦。stdout
和标准错误stderr
;(2)容器内文件日志。 其中前者为输出到容器的控制台console
的日志,Rancher会默认收集。后者是应用输出到容器内文件的日志,这种场景一般是由于应用做容器化改造时候,没有改造彻底导致的历史遗留。这种日志在Rancher平台中可以通过挂载日志卷flex volume
的形式收集。日志输出支持对接多种收集目标,包括常用的elasticsearch
、splunk
、syslog
等,如果对接一些企业专用日志平台,也可以通过对接kafka
的方式,把日志发送出去。metrics
指标,收集到prometheus中,统一的进行管理。监控示意图如下:有疑惑之处请随时联系。谢谢。