让我们学习 Kubernetes - 基础知识 - 2
Kubernetes 是一款容器管理工具,可自动执行应用程序的部署、扩展和运维。它已成为事实上的容器编排标准,超过 80% 的公司都在以某种方式使用它。在之前的“一起来学习 Kubernetes”
系列 博客中,我们已经了解了 Kubernetes 的基本定义、Pod、节点和控制器等概念。
在本系列文章中,我们将深入探讨服务、负载均衡器等概念。我们会对每个概念进行简要解释,然后提供链接,以便读者更详细地了解相同的概念。
在深入了解之前,如果您能查看我们的代码库 Devtron(端到端 Kubernetes 软件交付工作流),那就太好了。该代码库使开发人员和 DevOps 工程师的 DevOps 工作流完美无瑕。
devtron-labs / devtron
Kubernetes 工具集成平台
服务
Kubernetes 服务允许一组提供特定功能的 Pod 拥有唯一的 IP 地址和名称。Kubernetes 服务可用于通过单个端点轻松公开部署在一组 Pod 上的应用程序。服务既是一个 REST 对象,也是一个抽象概念,它定义了:
- 一组豆荚
- 一项获取它们的政策
本文讨论了什么是 Kubernetes 服务、K8s 服务的属性、如何定义和创建新服务。
Kubernetes 服务
负载均衡器、集群IP、节点端口
负载均衡器
负载均衡是一种将网络流量或客户端请求分配到多个服务器的技术。正确使用负载均衡器有助于优化可扩展性和可用性。这是一项至关重要的技术,必须在解决方案中正确实施;否则,客户端将无法连接到服务器。
集群IP
在集群内部,ClusterIP 提供网络通信。它通常无法从外部访问。您可以利用这些服务将内部工作负载连接起来。
NodePort
集群中的每个节点都有一个名为 NodePort 的开放端口。即使您的应用程序运行在单独的节点上,Kubernetes 也会透明地将 NodePort 上的传入流量重定向到您的服务。
Nana制作了一段全面的视频,解释了什么是负载均衡器、集群IP和节点端口以及它们之间的区别。
您也可以点击此处阅读有关 ClusterIP 的详细文章:
在 Kubernetes 中使用 ClusterIP 服务类型
Ingress
Kubernetes Ingress 是一个 API 对象,它提供路由规则来管理外部用户对 Kubernetes 集群中服务的访问,通常通过 HTTPS/HTTP 进行访问。
以下文章全面介绍了 Ingress 是什么以及它的用途。
什么是 Kubernetes Ingress?
入口控制器
Ingress 控制器是专为 Kubernetes(以及其他容器化)环境设计的负载均衡器。它抽象化了 Kubernetes 应用流量路由的复杂性,并在 Kubernetes 服务与外部服务之间架起了一座桥梁。
入口控制器
以下链接定义了 Ingress 控制器及其功能。
Kubernetes DNS
下面的文章解释了 DNS 如何帮助人们更轻松地访问服务。
Kubernetes 服务和 Pod 的 DNS
我将继续推出本系列文章,在“让我们学习 Kubernetes”系列标题下,涵盖更多 Kubernetes 的基础知识。
文章来源:https://dev.to/pghildiyal/let-s-learn-kubernetes-basics-2-2a9a