带你读《企业级云原生白皮书项目实战》——3.2.10 服务发现(2)

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 带你读《企业级云原生白皮书项目实战》——3.2.10 服务发现(2)

《企业级云原生白皮书项目实战》——第三章 容器——3.2 业务部署——3.2.10 服务发现(1) https://developer.aliyun.com/article/1229234?groupCode=supportservice


合理调整集群CoreDNS部署状态

合理调整CoreDNS副本数


建议您在任何情况下设置CoreDNS副本数应至少为2,且副本数维持在一个合适的水位以承载整个集群的解析。

CoreDNS所能提供的域名解析QPS与CPU消耗成正相关,开启缓存的情况下,单个CPU可以支撑10000+ QPS的域名解析请求。不同类型的业务对域名请求的QPS需求存在较大差异,您可以观察每个CoreDNS副本的峰值CPU使用量,如果其在业务峰值期间占用CPU大于一核,建议您对CoreDNS进行副本扩容。无法确定峰值CPU使用量时,可以保守采用副本数和集群节点数1:8的比值来部署,即每扩容8个集群节点,增加一个CoreDNS副本。


合理分配CoreDNS副本运行的位置

建议您在部署CoreDNS副本时,应将CoreDNS副本打散在不同可用区、不同集群节点上,避免单节点、单可用区故障。CoreDNS默认配置了按节点的弱反亲和性,可能会因为节点资源不足导致部分或全部副本部署在同一节点上,如果遇到这种情况,请删除Pod重新触发其调度来调整。

CoreDNS所运行的集群节点应避免CPU、内存用满的情况,否则会影响域名解析的QPS和响应延迟。


合理配置CoreDNS

关闭kube-dns服务的亲和性配置


亲和性配置可能导致CoreDNS不同副本间存在较大负载差异,建议按以下步骤关闭

修改服务kube-dns的yaml配置删除以下所有内容:

image.png


关闭Autopath插件

部分早期版本的CoreDNS开启了Autopath插件,该插件在一些极端场景下会导致解析结果出错,请确认其是否处于开启状态,并编辑配置文件将其关闭。更多信息,请参见#3765。

说明 关闭Autopath插件后,客户端发起的域名解析请求QPS最高会增加3倍,解析单个域名耗时最高增加3倍,请关注CoreDNS负载和业务影响。

1.执行kubectl -n kube-system edit confifigmap coredns命令,打开CoreDNS配置文件。

2.删除autopath @kubernetes一行后保存退出。

3.检查CoreDNS Pod运行状态和运行日志,运行日志中出现reload字样后说明修改成功。


《企业级云原生白皮书项目实战》——第三章 容器——3.2 业务部署——3.2.10 服务发现(3) https://developer.aliyun.com/article/1229220?groupCode=supportservice

相关文章
|
1月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
1月前
|
Linux pouch 容器
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
关于如何在CentOS 7.6操作系统上安装和使用阿里巴巴开源的Pouch容器管理工具的实战教程。
65 2
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
|
21天前
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
27 3
|
2月前
|
JSON JavaScript 开发者
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
【8月更文挑战第7天】Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
|
2月前
|
运维 Kubernetes 负载均衡
震惊!容器化运维竟藏如此大招,容器调度与服务编排让你的软件部署 “逆天改命”
【8月更文挑战第31天】在数字化时代,容器化技术革新了软件开发与运维方式,其高效、灵活及可移植的特点为企业应用部署提供了全新方案。容器调度与服务编排作为核心环节,通过优化资源分配、提升系统可靠性和可扩展性,实现了自动化管理。Kubernetes 等工具不仅简化了容器调度,还通过 Deployment、Service、Ingress 等资源对象实现了复杂应用架构的自动化运维,大幅提高了资源利用率和系统稳定性,减少了人工干预,加速了企业数字化转型。
35 2
|
2月前
|
Kubernetes 负载均衡 数据中心
在K8S中,在主机和容器上部署应用程序有什么区别?
在K8S中,在主机和容器上部署应用程序有什么区别?
|
2月前
|
弹性计算 运维 Kubernetes
阿里云容器化管理云上应用一键部署评测报告
阿里云容器服务Kubernetes版(ACK)作为阿里云在容器化领域的旗舰产品,以其卓越的性能、便捷的操作体验和高度的可扩展性,赢得了众多企业的青睐。
|
2月前
|
容器 C# Docker
WPF与容器技术的碰撞:手把手教你Docker化WPF应用,实现跨环境一致性的开发与部署
【8月更文挑战第31天】容器技术简化了软件开发、测试和部署流程,尤其对Windows Presentation Foundation(WPF)应用程序而言,利用Docker能显著提升其可移植性和可维护性。本文通过具体示例代码,详细介绍了如何将WPF应用Docker化的过程,包括创建Dockerfile及构建和运行Docker镜像的步骤。借助容器技术,WPF应用能在任何支持Docker的环境下一致运行,极大地提升了开发效率和部署灵活性。
48 0
|
2月前
|
运维 开发者 Docker
Docker容器部署实战:从入门到精通
【8月更文挑战第31天】 本文将引导读者了解如何使用Docker容器技术来简化和加速应用程序的部署过程。文章将通过实际案例探讨Docker的基本概念、架构,以及如何创建、管理和维护Docker容器。我们将通过详细的代码示例和操作指导,展示如何在本地环境或云基础设施上部署应用,并讨论如何克服在实际部署中可能遇到的挑战。无论你是DevOps工程师、软件开发者还是IT专业学生,本文都将为你提供深入理解并有效使用Docker的全面指南。
|
2月前
|
应用服务中间件 Java Maven
掌控视图的力量!深入解析 JSF 视图管理,揭秘视图生命周期的秘密,让你的应用更高效!
【8月更文挑战第31天】JavaServer Faces (JSF) 是一种强大的框架,用于管理 Web 应用程序的视图。本文通过具体案例介绍 JSF 视图管理的基础知识,包括创建、管理和销毁视图的过程。首先,在 Eclipse 中创建一个新 JSF 项目,并配置 Maven 依赖。接着,在 `WEB-INF` 目录下配置 `web.xml` 文件,设置 JSF servlet。
36 0

热门文章

最新文章

下一篇
无影云桌面