Kubernetes是什么
Kubernetes 是 Google 于 2014 年 6 月基于其内部使用的 Borg 系统开源出来的容器编排调度引擎,Google 将其作为初始和核心项目贡献给 CNCF(云原生计算基金会),近年来逐渐发展出了云原生生态。Kubernetes 作为云原生应用的基石,相当于一个云操作系统。
在PaaS资源编排层面,kubernetes已经成为了业界公认的事实标准,领先优势非常明显,正呈现出跨领域融合发展趋势。以Kubernetes中心的技术、生态日臻成熟和完善。根据云原生产业联盟的2020年调查数据显示,Kubernetes在受访人群的采纳率高达63%,在容器编排领域扮演非常重要的角色。Kubernetes的编排对象持续丰富不断扩展,以容器为基础编排对象逐渐延展至虚拟机、函数等,理论上所有可编程、有API、可抽象成资源的对象,都在成为Kubernetes的编排对象。
应用侧围绕Kubernetes生态加速演进,以Kubernetes为核心的的云原声技术栈将推广到更多的应用场景。在大数据领域,Spark和Kubernetes的集成已经非常普遍;在机器、深度学习方面,Kubernetes和Tensorflow等框架深度集成,用Kubernetes去编排机器、深度学习的工作流已取得业界的广泛共识。
Kubernetes介绍以及在龙芯平台移植
CoreDNS负责为整个集群提供DNS服务
IngressController为服务提供外网入口
Prometheus提供资源监控
Dashboard提供GUI
Federation提供跨可用区的集群
迁移适配完成的主要工作内容:
1、对mips64le系统架构的支持
2、Golang系统调用syscall兼容性
3、Sysacall.Stat_t 32位与64位类型转换
4、EpollEvent修正位缺失
5、制作k8s.gcr.io仓库基础镜像
▶龙芯平台Kubernetes周边项目
在完成kubernetes迁移之后,龙芯团队也围绕kuberntes完成周边项目:容器网络(calico,flannel),分布式存储ceph,监控平台prometheus+granafa,服务暴露ingress,日志方案loki+granafa等项目也迁移至龙芯平台,功能进行了验证。相关镜像可通过dockerhub仓库loongnixk8s获取。
龙芯平台Kubernetes实践
▶基于龙芯平台搭建的Kubernetes集群
使用kubeadm+calico进行部署,部署后所有服务和pod均运行正常,如下图所示。
环境使用的龙芯服务器搭建,目前集群运行良好。
详情查看:http://doc.loongnix.org/web/#/71?page_id=232
▶基于龙芯平台Kubernetes搭建的loki日志系统
通过loki查询相关日志:
详细查看:http://doc.loongnix.org/web/#/74?page_id=248
详情查看:http://doc.loongnix.org/web/#/76?page_id=231
▶基于龙芯平台Kubernetes搭建的ingress服务暴露
▶基于龙芯平台Kubernetes搭建的微服务治理方案istio
龙芯平台Kubernetes未来规划