k8s服务发布

一 、服务发布方式对比

二者主要区别在于:

  1. 部署复杂性:传统的服务发布方式通常涉及手动配置 和管理服务器、网络设置、负载均衡等,过程相对复 杂且容易出错。相比之下,Kubernetes服务发布方式 通过使用容器编排和自动化部署工具,简化了部署过程,使得服务的创建、部署和管理更加容易和高效。

  2. 弹性伸缩:Kubernetes 具有自动弹性伸缩功能,可 以根据实际需求自动增加或减少容器数量,以保持服 务的稳定性和性能。传统服务发布方式通常需要手动 调整服务器规模,难以实现快速弹性伸缩。

  3. 容错性:Kubernetes 具有内置的容错机制,当某个 容器出现故障时,Kubernetes 会自动将其从集群中 移除,并重新启动一个新的容器。这有助于保持服务 的可用性和稳定性。传统服务发布方式可能无法很好 地处理此类故障,导致服务中断。

  4. 资源利用率:Kubernetes 通过容器化技术,可以实 现资源的共享和动态分配,提高了资源的利用率。传 统服务发布方式可能会因服务器资源的浪费而降低资 源利用率。

  5. 可维护性:Kubernetes 提供了强大的可维护性功 能,例如服务发现、配置管理和版本控制等。这些功 能有助于简化服务的维护和升级过程。传统服务发布 方式可能需要更多的手动维护工作,且升级过程可能 更加复杂。

  6. 成本:虽然 Kubernetes 需要一定的学习曲线和初始 配置成本,但从长远来看,其自动化部署、弹性伸缩 和资源优化等功能可以帮助企业节省大量的运维成 本。传统服务发布方式可能需要更多的运维人力和资 源投入。

二、Label 和 Selector

Label:标签,可以对 K8S 的些对象,如 Pod 和节点 进行分组,通过添加 key=value 格式的标签,用于区 分同样的资源不同的分组。

Selector:标签选择器,可以根据资源标签查询出精 确的对象信息。

1. 自定义 Label

为某个节点添加标签 Label

在 deployment 或其他控制器中指定将 Pod 部署到该 节点

2. 污点信息

3. 为各节点设置 Label

4. Selector 选择器

5. 修改标签

将 subnet=ip7 这个标签改为 subnet=ip10,直接指定 key ,然后使用 --overwrite 参数重写标签

6. 删除标签

删除 node01 的 subnet=ip7 的标签

批量删除标签

三、Service

1. K8S 的 Service

Kubernetes(k8s)中的 Service 是一种抽象概念,它定 义了一种可以访问 Pod 逻辑分组的策略。它通常通过 Label Selector 访问 Pod 组,解决了 Pod 的 IP 地址可 能发生变化的问题。

2. 定义 Service

该示例为 my-service:80 即可访问到具有 app=nginx 标 签的 Pod 的80 端口上。 需要注意的是,Service 能够将一个接收端口映射到任意 的 targetPort,但如果 targetPort 为空,targetPort 将 被设置为与 Port 字段相同的值。targetPort 可以设置为 一个字符串,可引用 backend Pod 的一个端口的名称, 这样的话即使更改了 Pod 的端口,也不会对 Service 的 访问造成影响。 Kubernetes Service 能够支持 TCP、UDP、SCTP 等协 议,默认为 TCP 协议。

相关推荐
阿里云云原生7 小时前
面向 Workload 级别的灵活可配置 Serverless 弹性解决方案
云原生·serverless
2401_850410837 小时前
dockerfile实现lnmp
运维·docker·容器
biubiubiu07067 小时前
Docker快速入门
运维·docker·容器
性感博主在线瞎搞8 小时前
【Docker】 Manifest与Buildx:多架构镜像管理的解析与实践
docker·容器·架构·manifest·buildx
程序员JerrySUN9 小时前
AIoT 未来趋势:机遇与挑战并存
linux·嵌入式硬件·docker·容器·eureka
陈墨123410 小时前
docker安装es及分词器ik
elasticsearch·docker·容器
三十八度的风14 小时前
Mac上搭建k8s环境——Minikube
macos·kubernetes·minikube·k8s安装
风车带走过往14 小时前
k8s常见面试题1
云原生·容器·kubernetes
小哈里14 小时前
【后端开发】系统设计101——Devops,Git与CICD,云服务与云原生,Linux,安全性,案例研究(30张图详解)
云原生·devops·架构设计·后端开发·cicd
NiNg_1_23415 小时前
Docker最佳实践:安装Nacos
运维·docker·容器