iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >为什么Kubernetes这么受欢迎
  • 422
分享到

为什么Kubernetes这么受欢迎

2024-04-02 19:04:59 422人浏览 泡泡鱼
摘要

这篇文章主要讲解了“为什么kubernetes这么受欢迎”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么Kubernetes这么受欢迎”吧!以数据(YA

这篇文章主要讲解了“为什么kubernetes这么受欢迎”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么Kubernetes这么受欢迎”吧!

以数据(YAML)为基础的的架构

来自 Puppet[9] 和 Chef[10] 的世界,Kubernetes  的重大转变之一就是从以代码为基础的基础架构过渡到以数据为基础的基础架构(特别是 YAML)。Kubernetes 中的所有资源,包括  Pod,配置,部署,卷等,都可以简单地在 YAML 文件中表示。

apiVersion: v1 kind: Pod metadata:   name: site   labels:     app: WEB spec:   containers:     - name: front-end       image: Nginx       ports:         - containerPort: 80

这种表示形式使 devops 或站点可靠性工程师可以更轻松地完全表达其工作负载,而无需使用 python,Ruby 或 javascript  等编程语言编写代码。

以数据为基础的架构的其他好处包括:

  • gitOps 或 Git Operations 版本控制。使用这种方法,您可以将所有 Kubernetes YAML 文件保留在 git  存储库下,这使您可以准确地知道何时进行更改,由谁进行更改以及究竟进行了哪些更改。这样可以避免整个组织需要成员去寻找可能模棱两可的内容,从而提高了整个组织的透明度并提高了效率。同时,通过合并请求,可以更轻松地自动更改  Kubernetes 资源。

  • 可扩展性。将资源定义为 YAML,使集群运营商可以非常轻松地更改 Kubernetes 资源中的一个或两个数字来更改缩放行为。Kubernetes  具有水平 Pod 自动缩放器,可帮助您确定特定部署必须能够处理的最小和最大数量的  Pod,才能处理低流量和高流量时间。例如,如果您运行的部署可能由于流量突然增加而可能需要更多容量,则可以将 maxReplicas 从 10 更改为  20:

apiVersion: autoscaling/v2beta2 kind: HorizontalPodAutoscaler metadata:   name: myapp   namespace: default spec:   scaleTargetRef:     apiVersion: apps/v1     kind: Deployment     name: myapp-deployment   minReplicas: 1   maxReplicas: 20   metrics:   - type: Resource     resource:       name: cpu       target:         type: Utilization         averageUtilization: 50
  • 安全和控制。YAML 是验证在 Kubernetes 中部署什么以及如何部署的好方法。例如,有关安全性的主要问题之一是您的工作负载是否以非 root  用户身份运行。我们可以使用 conftest[11](一种 YAML /JSON 验证器)之类的工具以及Open Policy  Agent[12](一种策略验证器)来检查您的工作负载的 SecurityContext[13] 是否允许容器作为 root  运行。为此,用户可以使用一个简单的开放策略代理重新注册策略,如下所示:

package main deny[msg] {   input.kind = "Deployment"   not input.spec.template.spec.securityContext.runAsNonRoot = true   msg = "Containers must not run as root" }
  • 云提供商集成。科技行业的主要趋势之一是在公有云提供商中运行工作负载。借助云提供商组件,Kubernetes  允许每个群集与其运行的云提供商进行集成。例如,如果用户正在 AWS 的 Kubernetes  中运行某个应用程序,并且希望通过服务访问该应用程序,则云提供商将帮助自动创建 LoadBalancer 服务,该服务将自动设置 Amazon Elastic  Load Balancer 来将流量转发给应用程序 pods。

可扩展性

Kubernetes 具有很好的可扩展性,开发人员对此非常满意。内置一些资源,例如  Pod,Deployment,StatefulSet,Secrets,ConfigMap  等。同时用户和开发人员可以通过“自定义资源定义[14]”添加更多资源。例如,如果我们想定义 CronTab 资源,则可以使用以下方法来做到这一点:

apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata:   name: crontabs.my.org spec:   group: my.org   versions:     - name: v1       served: true       storage: true       Schema:         openAPIV3Schema:           type: object           properties:             spec:               type: object               properties:                 cronSpec:                   type: string                   pattern: '^(\d+|\*)(/\d+)?(\s+(\d+|\*)(/\d+)?){4}$'                 replicas:                   type: integer                   minimum: 1                   maximum: 10   scope: Namespaced   names:     plural: crontabs     singular: crontab     kind: CronTab     shortNames:     - ct

我们可以稍后使用以下内容创建 CronTab 资源:

apiVersion: "my.org/v1" kind: CronTab metadata:   name: my-cron-object spec:   cronSpec: "* * * * */5"   image: my-cron-image   replicas: 5

Kubernetes 可扩展性的另一种形式是开发人员编写自己的 Operators[15] 的能力,Operator 是在 Kubernetes  集群中运行的,遵循 control loop pattern[16] 的特定进程。操作员允许用户通过与 Kubernetes API 进行对话来自动管理  CRD(自定义资源定义)。

该社区有几种工具,允许开发人员创建自己的 Operators。这些工具之一是 Operator Framework[17] 及其 Operator  SDK[18]。SDK 为开发人员提供了一个框架,使他们可以快速开始创建 operator。例如,您可以从命令行[19]输入以下命令开始:

$ operator-sdk new my-operator --repo GitHub.com/myuser/my-operator

它将为您的 operator 创建整个样板,包括 YAML 文件和 Go 代码:

. |____cmd | |____manager | | |____main.go |____go.mod |____deploy | |____role.yaml | |____role_binding.yaml | |____service_account.yaml | |____operator.yaml |____tools.go |____go.sum |____.gitignore |____version | |____version.go |____build | |____bin | | |____user_setup | | |____entrypoint | |____Dockerfile |____pkg | |____apis | | |____apis.go | |____controller | | |____controller.go

然后,您可以添加 API 和类似的控制器:

$ operator-sdk add api --api-version=myapp.com/v1alpha1 --kind=MyAppService $ operator-sdk add controller --api-version=myapp.com/v1alpha1 --kind=MyAppService

最后构建并将 operator 推送到您的容器注册表:

$ operator-sdk build your.container.reGIStry/youruser/myapp-operator

如果开发人员需要更多控制权,则可以修改 Go 文件中的样板代码。例如,要修改控制器的详细信息,他们可以对 controller.go  文件进行更改。

另一个项目 KUDO[20] 允许您仅使用声明性 YAML 文件来创建运算符。例如,Apache kafka  的运算符将定义为以下内容[21],它允许用户使用以下命令在 Kubernetes 上安装 Kafka 集群:

$ kubectl kudo install ZooKeeper $ kubectl kudo install kafka

然后还使用另一个命令对其进行调整:

$ kubectl kudo install kafka --instance=my-kafka-name \             -p ZOOKEEPER_URI=zk-zookeeper-0.zk-hs:2181 \             -p ZOOKEEPER_PATH=/my-path -p BROKER_CPUS=3000m \             -p BROKER_COUNT=5 -p BROKER_MEM=4096m \             -p DISK_SIZE=40Gi -p MIN_INSYNC_REPLICAS=3 \             -p NUM_NETWORK_THREADS=10 -p NUM_IO_THREADS=20

革新

在过去的几年中,Kubernetes 每三四个月发布一次主要版本,这意味着每年都有三到四个主要版本。推出的新功能的数量并未减慢,最新版本[22]的 30  多种新增功能和更改证明了这一点。此外,Kubernetes 项目 GitHub 活动表明[23],即使在这些困难时期,贡献也没有放缓的迹象。

这些新功能使集群运营商在运行各种不同的工作负载时具有更大的灵活性。软件工程师还喜欢拥有更多控件,以将其应用程序直接部署到生产环境中。

社区

Kubernetes 受欢迎的另一个重要方面是其强大的社区。首先,Kubernetes 在 2015 年发布 1.0  版本时捐赠给了一个与供应商无关的家庭:Cloud Native Computing Foundation[24]。

随着项目的推进,针对 Kubernetes 中的不同区域还有各种各样的社区  SIG[25](特殊兴趣小组)。他们不断添加新功能,并使其对用户更加友好。

Cloud Native Foundation 还组织了  CloudNativeCon/KubeCon,截至撰写本文时,CloudNativeCon/KubeCon  是世界上比较大的开源活动。该活动通常每年举行三届,吸引了数千名希望改善 Kubernetes  及其生态系统以及利用每三个月发布的新功能的技术人员和专业人士。

此外,Cloud Native Foundation 拥有一个技术监督委员会[26],与 SIGs[27]  一起,研究基金会在云原生生态系统中的新项目和现有项目[28]。大多数项目都有助于增强 Kubernetes 的价值主张。

最后,我相信,如果没有社区的有意识的努力来互相包容并欢迎任何新来者,Kubernetes 就不会取得成功。

感谢各位的阅读,以上就是“为什么Kubernetes这么受欢迎”的内容了,经过本文的学习后,相信大家对为什么Kubernetes这么受欢迎这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: 为什么Kubernetes这么受欢迎

本文链接: https://www.lsjlt.com/news/84952.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 为什么Kubernetes这么受欢迎
    这篇文章主要讲解了“为什么Kubernetes这么受欢迎”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么Kubernetes这么受欢迎”吧!以数据(YA...
    99+
    2024-04-02
  • Kubernetes为什么这么受欢迎
    这篇文章主要介绍“Kubernetes为什么这么受欢迎”,在日常操作中,相信很多人在Kubernetes为什么这么受欢迎问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Kubernetes为什么这么受欢迎”的疑...
    99+
    2023-06-27
  • 香港云主机为什么这么受欢迎
    香港云主机为什么受欢迎的原因有:1、通过电信CN2线路直连大陆,延迟低,访问速度快;2、稳定性好,有利于搜索引擎抓取网页内容,提高网站权重;3、支持任意选择多版本系统,易控制,灵活性好;4、不用备案,能立即使用;5、口碑好,很受用户的喜欢;...
    99+
    2024-04-02
  • Java编程语言为什么这么受欢迎
    这篇文章主要介绍“Java编程语言为什么这么受欢迎”,在日常操作中,相信很多人在Java编程语言为什么这么受欢迎问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java编程语言为什么这么受欢迎”的疑惑有所帮助!...
    99+
    2023-06-27
  • 香港服务器为什么这么受欢迎
    香港服务器受欢迎的原因有:1、将网站部署在香港服务器内能够提高响应速度;2、香港服务器的带宽越高,速度越快;3、香港服务器限制内容少,能够自由搭建网站;4、服务器出故障时需要进行沟通,选择香港服务器在交流方面没什么问题;5、香港服务器管理原...
    99+
    2024-04-02
  • 日本服务器为什么这么受欢迎
    日本服务器受欢迎的原因有:1、日本服务器相比于其他服务器的性价比高;2、日本服务器拥有丰富的出口带宽,稳定性好,用户访问速度快;3、日本服务器拥有较高的资源配置,如IP资源、带宽资源等;4、日本服务器所属机房采用新的软硬件技术和科学优化线路...
    99+
    2024-04-02
  • 为什么开发小程序这么受欢迎
    这篇文章主要介绍为什么开发小程序这么受欢迎,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!小程序开发的成本低,小程序主要是基于html+css+js去开发,它所运用的方式和APP有很大的不同,但是这种开发的成本却要比A...
    99+
    2023-06-27
  • 为什么香港云主机这么受欢迎
    香港云主机受欢迎的理由:1.香港云主机无需备案,节省时间成本,快速部署能够抢占市场先机。2. 香港云主机的性价比高,低价格租用高配置,适合预算不足的站长和企业租用。3.香港云主机的技术较成熟,访问速度快,能够确保服务器的运行稳定。具体内容如...
    99+
    2024-04-02
  • 美国服务器为什么这么受欢迎
    美国服务器受欢迎的原因有:1、互联网最早出现在美国,并且美国带宽资源丰富、技术先进;2、美国服务器内容限制少,能够自由建站;3、美国服务器硬件配置可自行根据业务进行选择,从而满足自身业务需求;4、美国服务器操作系统选择性多,并且不同的操作系...
    99+
    2024-04-02
  • 香港云vps主机为什么这么受欢迎
    香港云vps主机受欢迎的原因有:1、不需要备案,能实现快速部署网站;2、带宽大,国内访问速率快,能保证网站的打开速度;3、香港云主机的频宽以3M国际标准为准,被公认的更有说服力;4、对网站内容限制较少,能部署各种网站;5、香港云主机管理原则...
    99+
    2024-04-02
  • 为什么香港虚拟主机这么受欢迎
    香港虚拟主机这么受欢迎的原因:1、使用香港虚拟主机没有必须要进行备案的限制,即开即用,能够有效减少建站时间成本;2、香港虚拟主机采用的是国际出口带宽,并且带宽资源充足,从而使国外访问香港网站速度更快;3、香港虚拟主机和大陆电信一般都直连的,...
    99+
    2024-04-02
  • vps美国独立ip为什么这么受欢迎
    vps美国独立ip受欢迎的原因有:1、vps美国独立ip能直接通过ip访问网站,有利于增加企业形象;2、vps美国独立ip有利于搜索...
    99+
    2023-02-08
    vps美国独立ip vps
  • vps美国服务器为什么这么受欢迎
    vps美国服务器受欢迎的原因有:1、vps美国服务器不需要备案,即开即用,能快速部署线上业务;2、美国处于互联网世界的中心之一,市场成熟规范,vps美国服务器性能好且价格便宜;3、vps美国服务器带宽资源丰富,访问速度快,能给予用户良好的网...
    99+
    2024-04-02
  • 国内云主机vps为什么这么受欢迎
    国内云主机VPS之所以受到广大用户的欢迎,主要有以下几个方面原因:1、价格实惠相对于传统的独立服务器,云主机VPS的价格更加实惠,也...
    99+
    2023-03-15
    国内云主机vps 云主机 vps
  • 为什么香港VPS服务器这么受欢迎
    香港VPS服务器受欢迎的原因有:1、香港VPS服务器采用全10Gbps光纤网络和直连大陆专线的骨干网,能实现全国高速网络连接;2、香港VPS服务器采用SSD存储,机房线路稳定,能保证网站的正常运行;3、香港VPS服务器提供先进的后台控制面板...
    99+
    2024-04-02
  • 香港vps云主机为什么这么受欢迎
    香港vps云主机受欢迎的原因有:1、香港vps云主机不需要备案,能实现快速部署网站;2、香港vps云主机带宽大,访问速率快,能保证网站的打开速度;3、香港vps云主机的频宽以3M国际标准为准,被公认的更有说服力;4、香港vps云主机内容限制...
    99+
    2024-04-02
  • 香港虚拟空间为什么这么受欢迎
    香港虚拟空间这么受欢迎的原因有:1、香港虚拟空间不用备案,即开即用,能有效减少建站时间成本;2、香港虚拟空间采用国际出口带宽,且带宽资源充足,访问速度快;3、香港虚拟空间和大陆电信一般都是直连的,因此在国内访问速度相对比较快。具体内容如下:...
    99+
    2024-04-02
  • 为什么C#最受欢迎
    这篇文章主要讲解了“为什么C#最受欢迎”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么C#最受欢迎”吧!微软赞助的 .NET 基金会发布了一份 .NET 现状调查的报告。这是 .NET ...
    99+
    2023-06-15
  • 国外专用服务器为什么这么受欢迎
    国外专用服务器受欢迎的原因有:1、国外专用服务器无需备案,能节省建站的时间成本;2、国外专用服务器的内容限制少,能自由开展业务;3、国外专用服务器配置选择性非常广,能自由选择满足各类业务需求;4、国外专用服务器租用价格优惠,相对国内而言,国...
    99+
    2024-04-02
  • 美国服务器为何这么受欢迎
    美国服务器受欢迎的原因:1、美国服务器带宽大,访问速度快;2、美国服务器处于全球网络中心,其机房环境和员工的技术实力都很强;3、美国服务器配置高于国内主机,稳定性相对好一点。具体内容如下:美国服务器带宽大租用美国服务器可以解决网络不稳定、访...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作