热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

中百信玄武库Kubernetes实践与探索

“Kubernetes其在自动化部署、扩展性、以及管理容器化的应用中已经体现出独特的优势,同样在企业中应用落地已经成为一种共识。中百信玄武库作为ToB服务产品,玄武库研究院在玄武库

“Kubernetes其在自动化部署、扩展性、以及管理容器化的应用中已经体现出独特的优势,同样在企业中应用落地已经成为一种共识。中百信玄武库作为ToB服务产品,玄武库研究院在玄武库平台使用Kubernetes做了哪些实践和探索呢?我们今天和大家分享一下!

Kubernetes是用于自动化部署,扩展和管理容器化应用程序的开源系统。

Kubernetes名称源于希腊语,意为"舵手"或 "领航员"。

Kubernetes中间8个字母"ubernete"用数字8来代替,通常又被研发人员简称为"k8s"。

Kubernetes用更容易的方法去部署和管理复杂的分布式系统,同时仍然能通过容器所提升的使用效率来受益。

玄武库Kubernetes集群示

优势:

单机部署

高可用部署+共享存储(NFS)

劣势:

服务不能自愈

应用更新繁琐

共享存储单点

服务发现和负载均衡,通过 DNS 名称或 IP 地址暴露容器的访问方式,后端pods的增加和减少对于service是自动发现的。

自动发布和回滚,声明期望应用程序容器应该达到的状态(副本数、版本),K8s自动达到期望值。

自动修复,重启已经停机的pods,重启不满足自定义健康检查条件的pods

存储编排,自动挂载指定的存储系统,例如localstroage/nfs/云存储等。

密钥与配置管理,可以存储和管理敏感信息(密码,密钥),更新密钥或者配置不用重新构建镜像。

不限制应用程序类型,有状态、无状态、数据处理等类型的应用;可以在容器中运行的服务,就可以在k8s中运行。

不部署源码、不编译或构建应用程序,交给Jenkins, Harbor。

不提供应用级别的服务作为内置服务,例如中间件, 队列, 数据库。

不指定日志,监控,告警解决方案,例如Loki, ELK, Prometheus, Grafana, Zipkin。

不提供或者限定配置工具,例如Kuboard, Rancher。

Deployment 无状态部署

StatefulSet 有状态集合

DaemonSet 守护进程集合

Pod 运行应用程序

Service 暴露应用访问

Volume 存储卷

Namespace 命名空间

Node 节点

宿主机 物理机或者虚拟机

集群-部署应用-外部可见-扩容-更新1

集群-部署应用-外部可见-扩容-更新2

集群-部署应用-外部可见-扩容-更新3

集群-部署应用-外部可见-扩容-更新4

集群-部署应用-外部可见-扩容-更新5

集群-部署应用-外部可见-扩容-更新6

集群-部署应用-外部可见-扩容-更新7

集群-部署应用-外部可见-扩容-更新8

CRI(Container Runtime Interface):容器运行时接口,提供计算资源

CNI(Container Network Interface):容器网络接口,提供网络资源

CSI(Container Storage Interface):容器存储接口,提供存储资源

这些接口让Kubernetes的开放性变得最大化,而Kubernetes本身则专注于容器调度。

快速扩缩容

自动修复,无单点故障

滚动升级

底层变更不中断服务

资源隔离

生态完整:监控、日志、存储、UI客户端等等 https://landscape.cncf.io/

进一步抽象:helm chart

从玄武库使用者角度来看,用户可以实现无感知切换,不影响用户实际体验。

玄武库目前已经使用kubernetes环境,正常交付项目。

中百信玄武库

中百信玄武库服务

参考资料:

官网:https://kubernetes.io/zh/

Github源码地址:https://github.com/kubernetes/kubernetes

部署工具:https://github.com/easzlab/kubeasz

学习手册1:https://github.com/rootsongjc/kubernetes-handbook

学习手册2:https://github.com/opsnull/follow-me-install-kubernetes-cluster

“玄武库” 是中百信软件技术有限公司在微服务的思想下,集多年软件开发的经验,自主研发的基于微服务架构,为业界提供的一套集成软件设计、程序开发、基础服务、运维管理为一体的新型敏捷开发与管理平台。点击链接了解更多:https://www.xuanwuku.com/


推荐阅读
  • Consul 单节点与集群环境构建指南
    本文详细介绍了如何安装和配置 Consul 以支持服务注册与发现、健康检查等功能,包括单节点和集群环境的搭建步骤。 ... [详细]
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • 深入理解IIS:全面解析与应用
    本文详细介绍了IIS(Internet Information Services)的功能及其在不同Windows系统中的应用,探讨了IIS如何支持多种网络服务,如Web、FTP、NNTP和SMTP,并解释了其在现代网站开发和服务器管理中的重要性。 ... [详细]
  • 本文探讨了在iOS平台上开发BLE(蓝牙低功耗)应用程序时遇到的挑战,特别是如何实现应用在后台模式下仍能持续扫描并连接蓝牙设备。文章提供了具体的配置方法和常见的问题解决方案。 ... [详细]
  • 请看|间隔时间_Postgresql 主从复制 ... [详细]
  • 本文探讨了SSDP(简单服务发现协议)和WSD(Web服务发现)协议,特别是SSDP如何通过固定多播地址239.255.255.250:1900实现局域网内的服务自发现功能。文中还详细介绍了SSDP协议的关键操作类型及其应用场景。 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • YB02 防水车载GPS追踪器
    YB02防水车载GPS追踪器由Yuebiz科技有限公司设计生产,适用于车辆防盗、车队管理和实时追踪等多种场合。 ... [详细]
  • ServletContext接口在Java Web开发中扮演着重要角色,它提供了一种方式来获取关于整个Web应用程序的信息。通过ServletContext,开发者可以访问初始化参数、共享数据以及应用资源。 ... [详细]
  • 转自:http:www.yybug.comread-htm-tid-15324.html为什么使用Twisted? 如果你并不准备使用Twisted,你可能有很多异议。为什么使用T ... [详细]
  • socket函数SOCKET()我们使用系统调用socket()来获得文件描述符:#include#includei ... [详细]
  • SharePoint Portal Server 2003 部署指南
    本文详细介绍了如何在一个实验环境中部署SharePoint Portal Server 2003,包括网络拓扑、所需服务器角色及具体步骤。通过本文,读者可以了解SharePoint Portal Server 2003的安装和配置过程。 ... [详细]
  • 本文深入探讨了网络编程中的基本概念,如指针、引用和可重入函数,并详细介绍了OSI七层模型和TCP/IP四层模型的功能与协议。同时,文章还对比了HTTP与HTTPS的区别,分析了HTTP请求报文的结构,讨论了TCP与UDP的主要差异,以及滑动窗口协议的工作原理。 ... [详细]
  • 724. 寻找数组的中轴索引
    给定一个整数数组 `nums`,编写一个方法返回该数组的“中轴”索引。定义中轴索引为该索引左侧所有数字之和等于右侧所有数字之和的索引。如果不存在这样的索引,则返回 -1。如果有多个中轴索引,返回最左边的一个。 ... [详细]
  • 本文探讨了一个特定于 Spring 4.2.5 的问题,即在应用上下文刷新事件(ContextRefreshedEvent)触发时,带有 @Transactional 注解的 Bean 未能正确代理事务。该问题在 Spring 4.1.9 版本中正常运行,但在升级至 4.2.5 后出现异常。 ... [详细]
author-avatar
低调的小男2502928607
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有