k8s_设置dns
配置k8s dns
在 Kubernetes 集群中,CoreDNS 是默认的 DNS 服务器,它负责处理集群内所有的 DNS 请求。
kubectl edit cm coredns -n kube-system (此命令修改coredns 配置)
kubectl describe cm coredns -n kube-system(此命令查看coredns 配置)
出现类似以下结果
apiVersion: v1
data:Corefile: |.:53 {errorshealth {lameduck 5s}readykubernetes cluster.local in-addr.arpa ip6.arpa {pods insecurefallthrough in-addr.arpa ip6.arpattl 30}prometheus :9153forward . /etc/resolv.conf {max_concurrent 1000}cache 30loopreloadloadbalance}
kind: ConfigMap
metadata:creationTimestamp: "2024-05-11T02:24:34Z"name: corednsnamespace: kube-systemresourceVersion: "514"uid: 04803c22-064c-451e-a88e-425e4cd38cd5
注意:其中
forward . /etc/resolv.conf
表示在 CoreDNS 的配置中使用 forward . /etc/resolv.conf { max_concurrent 1000 },CoreDNS 将所有无法处理的 DNS 请求转发到 /etc/resolv.conf 中指定的上游 DNS 服务器,并限制最大并发查询数为 1000。
修改完配置,执行下面命令使配置生效
kubectl delete pod -n kube-system -l k8s-app=kube-dns
验证
kubectl run -i --tty dnsutils --image=tutum/dnsutils --rm
进入pod后,执行下述命令查看dns是否正确
nslookup google.com
dig google.com
/etc/resolv.conf 和 /etc/systemd/resolved.conf 的关系和区别
/etc/resolv.conf 和 /etc/systemd/resolved.conf 都与系统的 DNS 配置有关,但它们有不同的用途和作用范围。
/etc/resolv.conf
/etc/resolv.conf 是一个传统的配置文件,用于指定系统的 DNS 解析器。该文件包含 DNS 服务器的地址、搜索域等信息。典型的内容可能如下所示:
(此时可能手动管理)
nameserver 8.8.8.8
nameserver 8.8.4.4
search example.com
或者(此时可能由systemd-resolved管理)
nameserver 127.0.0.53
options edns0 trust-ad
search .
nameserver:指定 DNS 服务器的 IP 地址。search:指定搜索域,解析未完全限定的主机名时使用。
操作系统和大多数应用程序在进行 DNS 查询时会读取这个文件。
/etc/systemd/resolved.conf
/etc/systemd/resolved.conf 是 systemd-resolved 服务的配置文件。systemd-resolved 是一个用于处理 DNS 解析的系统服务,提供 DNS 缓存和分区的 DNS 配置。典型的配置文件内容可能如下所示:
[Resolve]
DNS=8.8.8.8 8.8.4.4
FallbackDNS=1.1.1.1 1.0.0.1
Domains=example.com
LLMNR=no
MulticastDNS=no
DNSSEC=no
Cache=yes
DNS:指定主 DNS 服务器。FallbackDNS:指定备用 DNS 服务器。Domains:指定搜索域。LLMNR、MulticastDNS、DNSSEC、Cache:配置是否启用特定的 DNS 功能。
关系和区别
- 用途:
/etc/resolv.conf是一个通用的 DNS 配置文件,许多应用程序和工具会直接读取这个文件来获取 DNS 信息。而/etc/systemd/resolved.conf是用于配置 systemd-resolved 服务的。 - 管理方式:当使用 systemd-resolved 时,它会管理
/etc/resolv.conf的内容。如果 systemd-resolved 启动并运行,它可能会将/etc/resolv.conf设置为指向systemd-resolved自己的本地解析器(通常是127.0.0.53)。在这种情况下,系统的 DNS 请求会被systemd-resolved处理。 - 配置方式:可以通过编辑
/etc/resolv.conf来手动配置 DNS 服务器,但如果 systemd-resolved 在运行,它可能会覆盖这些手动配置。通过编辑/etc/systemd/resolved.conf配置文件,并重启systemd-resolved服务,可以持久地配置 DNS 设置。
使用 systemd-resolved 时的典型配置步骤
-
编辑
/etc/systemd/resolved.conf:[Resolve] DNS=8.8.8.8 8.8.4.4 FallbackDNS=1.1.1.1 1.0.0.1 Domains=example.com -
重启 systemd-resolved 服务:
sudo systemctl restart systemd-resolved -
确保
/etc/resolv.conf指向 systemd-resolved:sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
通过以上步骤,systemd-resolved 将会管理 DNS 配置,并确保 /etc/resolv.conf 指向它自己的本地解析器。
小结
总之,k8s通过coredns 来管理dns,并且指定无法处理的 DNS 请求转发到 /etc/resolv.conf指定的dns服务器(这里也可以配置为其他dns服务器)。systemd-resolved启动后,/etc/resolv.conf由 systemd-resolved 管理(会变成一个软链接),/etc/resolv.conf的内容实际是systemd-resolved的配置文件/run/systemd/resolve/stub-resolv.conf,stub-resolv.conf中会配置实际真正的dns服务器地址。dns设置不妥当,会影响k8s中安装组件时的域名解析。安装组件时可以通过下述命令查看是否因为域名解析导致pull组件镜像失败。
kubectl get events --sort-by=‘.metadata.creationTimestamp’ -n kube-system | tail -n10
相关文章:
k8s_设置dns
配置k8s dns 在 Kubernetes 集群中,CoreDNS 是默认的 DNS 服务器,它负责处理集群内所有的 DNS 请求。 kubectl edit cm coredns -n kube-system (此命令修改coredns 配置) kubectl describe cm coredns -n kube-system(此命令查看coredns 配…...
翻译《The Old New Thing》- What a drag: Dragging a virtual file (HGLOBAL edition)
What a drag: Dragging a virtual file (HGLOBAL edition) - The Old New Thing (microsoft.com)https://devblogs.microsoft.com/oldnewthing/20080318-00/?p23083 Raymond Chen 2008年03月18日 拖拽虚拟文件(HGLOBAL 版本) 现在我们已经对简单的数据…...
SA316系列音频传输模块-传输距离升级音质不打折
SA316是思为无线研发的一款远距离音频传输模块,音频采样率为48K,传输距离可达200M。为了满足更多用户需求,思为无线在SA316基础上进一步增加传输距离推出SA316F30。相比SA316性能,同样其采用48K采样,-96dBm灵敏度&…...
【机器学习】智能选择的艺术:决策树在机器学习中的深度剖析
在机器学习的分类和回归问题中,决策树是一种广泛使用的算法。决策树模型因其直观性、易于理解和实现,以及处理分类和数值特征的能力而备受欢迎。本文将解释决策树算法的概念、原理、应用、优化方法以及未来的发展方向。 🚀时空传送门 &#x…...
电脑缺少运行库,无法启动程序
在我们使用一些软件的时候,由于电脑缺少一些运行库,导致无法启动应用软件,此时需要我们安装缺少的运行库。 比如当电脑提示: Cannot load library Qt5Xlsx.dll 我们就需要下载C得运行库,以满足软件运行需要。 下载链…...
【计算机软考_初级篇】每日十题2
各位老师大家好,软考对于日常的知识储备和企业中的考试,或者说在校大学生来说,那用处是非常大的!!那么下面我们进入正题,软考呢是分两种语言,java和C,对于其他语言目前还没ÿ…...
HR人才测评,如何做营销人员岗位素质测评?
营销人员是企业中的重要角色,他们直接负责企业产品或服务的销售和推广,是企业中最直接影响销售业绩的人才之一。因此,营销人员的基本素质测评非常重要,能够有效评估营销人员的能力和潜力,为企业招聘和培养优秀的营销人…...
LabVIEW调用第三方硬件DLL常见问题及开发流程
在LabVIEW中调用第三方硬件DLL时,除了技术问题,还涉及开发流程、资料获取及与厂家的沟通协调。常见问题包括函数接口不兼容、数据类型转换错误、内存管理问题、线程安全性等。解决这些问题需确保函数声明准确、数据类型匹配、正确的内存管理及线程保护。…...
datax实现MySQL数据库迁移shell自动化脚本
datax实现MySQL数据库迁移 (1)生成python脚本 # codingutf-8 import json import getopt import os import sys import MySQLdb#MySQL相关配置,需根据实际情况作出修改 mysql_host "xxxx" mysql_port "3306" mysql_u…...
PostgreSQL的学习心得和知识总结(一百四十四)|深入理解PostgreSQL数据库之sendTuples的实现原理及功能修改
目录结构 注:提前言明 本文借鉴了以下博主、书籍或网站的内容,其列表如下: 1、参考书籍:《PostgreSQL数据库内核分析》 2、参考书籍:《数据库事务处理的艺术:事务管理与并发控制》 3、PostgreSQL数据库仓库…...
C++数据结构之:链List
摘要: it人员无论是使用哪种高级语言开发东东,想要更高效有层次的开发程序的话都躲不开三件套:数据结构,算法和设计模式。数据结构是相互之间存在一种或多种特定关系的数据元素的集合,即带“结构”的数据元素的集合&am…...
10.Redis之set类型
谈到一个术语,这个术语很可能有多种含义~~ 1.Set 1) 集合. 2)设置 (和 get 相对应) 集合就是把一些有关联的数据放到一起~~ 1.集合中的元素是无序的! 【此处说的无序和 前面list这里的有序 是对应的, 有序: 顺序很重要. 变换一下顺序, 就是不同的 list 了 无序: 顺序不…...
SpringBoot + mongodb 删除集合中的数据
MongoTemplate是Spring Data MongoDB提供的一个工具类,用于与MongoDB进行交互。它提供了许多方法来执行数据库操作,包括删除数据。 本文将介绍如何使用Java MongoTemplate删除集合内的数据,并提供相应的代码示例。 1. 引入MongoTemplate 首…...
【日常记录】【JS】前端预览图片的两种方式,Base64预览和blob预览
文章目录 1、前言1、FileReader3、window.URL.createObjectURL4、参考链接 1、前言 一般来说,都是 后端返回给前端图片的url,前端直接把这个值插入到 img 的src 里面即可还有一种情况是前端需要预览一下图片,比如:上传头像按钮&a…...
每日刷题——杭电2156.分数矩阵和杭电2024.C语言合法标识符
杭电2156.分数矩阵 原题链接:Problem - 2156 题目描述 Problem Description:我们定义如下矩阵: 1/1 1/2 1/3 1/2 1/1 1/2 1/3 1/2 1/1 矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增。请求出这个矩阵的总和。 Input…...
爬虫学习--18.反爬斗争 selenium(3)
操作多窗口与页面切换 有时候窗口中有很多子tab页面。这时候肯定是需要进行切换的。selenium提供了一个叫做switch_to.window来进行切换,具体切换到哪个页面,可以从driver.window_handles中找到。 from selenium import webdriver from selenium.webdri…...
如何评价GPT-4o?
GPT-4o是OpenAI为聊天机器人ChatGPT发布的一款新语言模型,其名称中的“o”代表Omni,即全能的意思,凸显了其多功能的特性。这款模型在多个方面都有着显著的优势和进步。 首先,GPT-4o具有极强的多模态能力,它能够接受文本…...
算能BM1684+FPGA+AI+Camera推理边缘计算盒
搭载算丰智算芯片BM1684,是面向AI推理的边缘计算盒。高效适配市场上所有AI算法,实现视频结构化、人脸识别、行为分析、状态监测等应用,为智慧城市、智慧交通、智慧能源、智慧金融、智慧电信、智慧工业等领域进行AI赋能。 产品规格 处理器芯片…...
不同厂商SOC芯片在视频记录仪领域的应用
不同SoC公司芯片在不同产品上的应用信息: 大唐半导体 芯片型号: LC1860C (主控) LC1160 (PMU)产品应用: 红米2A (399元)大疆晓Spark技术规格: 28nm工艺,4个ARM Cortex-A7处理器,1.5GHz主频,2核MaliT628 GPU,1300万像…...
【Python入门学习笔记】Python3超详细的入门学习笔记,非常详细(适合小白入门学习)
Python3基础 想要获取pdf或markdown格式的笔记文件点击以下链接获取 Python入门学习笔记点击我获取 1,Python3 基础语法 1-1 编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
解析奥地利 XARION激光超声检测系统:无膜光学麦克风 + 无耦合剂的技术协同优势及多元应用
在工业制造领域,无损检测(NDT)的精度与效率直接影响产品质量与生产安全。奥地利 XARION开发的激光超声精密检测系统,以非接触式光学麦克风技术为核心,打破传统检测瓶颈,为半导体、航空航天、汽车制造等行业提供了高灵敏…...
深度学习之模型压缩三驾马车:模型剪枝、模型量化、知识蒸馏
一、引言 在深度学习中,我们训练出的神经网络往往非常庞大(比如像 ResNet、YOLOv8、Vision Transformer),虽然精度很高,但“太重”了,运行起来很慢,占用内存大,不适合部署到手机、摄…...
c# 局部函数 定义、功能与示例
C# 局部函数:定义、功能与示例 1. 定义与功能 局部函数(Local Function)是嵌套在另一个方法内部的私有方法,仅在包含它的方法内可见。 • 作用:封装仅用于当前方法的逻辑,避免污染类作用域,提升…...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么?它的作用是什么? Spring框架的核心容器是IoC(控制反转)容器。它的主要作用是管理对…...
车载诊断架构 --- ZEVonUDS(J1979-3)简介第一篇
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…...
短视频时长预估算法调研
weighted LR o d d s T p 1 − p ( 1 − p ) o d d s T p ( T p o d d s ∗ p ) o d d s p o d d s T o d d s odds \frac{Tp}{1-p} \newline (1-p)odds Tp \newline (Tp odds * p) odds \newline p \frac{odds}{T odds} \newline odds1−pTp(1−p)oddsTp(Tpodds…...
ubuuntu24.04 编译安装 PostgreSQL15.6+postgis 3.4.2 + pgrouting 3.6.0 +lz4
文章目录 下载基础包下载源码包编译 PG编译 postgis编译安装 pgrouting下载源码包配置编译参数编译安装 初始化数据库建表并检查列是否使用了 lz4 压缩算法检查 postgis 与 pgrouting 是否可以成功创建 下载基础包 sudo apt update && sudo apt upgrade -y sudo apt i…...
