首页 > 其他分享 >k8s-部署CoreDNS

k8s-部署CoreDNS

时间:2023-02-24 15:48:24浏览次数:59  
标签:文件 kube 部署 yaml dns coredns CoreDNS k8s

本文章是 k8s二进制高可用集群部署 的分支。详细步骤请参考目录。

CoreDNS用于集群内部Service名称解析

  部署 CoreDNS 需要使用到官方提供的两个文件 deploy.sh 和 coredns.yaml.sed(这两个文件已经放入 manifest 的 coredns 目录中)

  deploy.sh 是一个用于在已经运行 kube-dns 的集群中生成运行 CoreDNS 部署文件(manifest)的工具脚本。它使用 coredns.yaml.sed 文件作为模板,创建一个 ConfigMap 和 CoreDNS 的 deployment,然后更新集群中已有的 kube-dns 服务的 selector 使用 CoreDNS 的 deployment。重用已有的服务并不会在服务的请求中发生冲突。

  deploy.sh 文件并不会删除 kube-dns 的 deployment 或者 replication controller。如果要删除 kube-dns,你必须在部署 CoreDNS 后手动的删除 kube-dns。

  你需要仔细测试 manifest 文件,以确保它能够对你的集群正常运行。这依赖于你的怎样构建你的集群以及你正在运行的集群版本。

  对 manifest 文件做一些修改是有比要的。

  在最佳的案例场景中,使用 CoreDNS 替换 Kube-DNS 只需要使用下面的两个命令:

./deploy.sh | kubectl apply -f -
kubectl delete --namespace=kube-system deployment kube-dns

  注意:我们建议在部署 CoreDNS 后删除 kube-dns。否则如果 CoreDNS 和 kube-dns 同时运行,服务查询可能会随机的在 CoreDNS 和 kube-dns 之间产生。

  对于非 RBAC 部署,你需要编辑生成的结果 yaml 文件:

  1. 从 yaml 文件的 Deployment 部分删除 serviceAccountName: coredns
  2. 删除 ServiceAccount、 ClusterRole 和 ClusterRoleBinding 部分

1.下载资源文件

wget https://raw.githubusercontent.com/coredns/deployment/master/kubernetes/coredns.yaml.sed -O coredns.yaml

2.修改配置文件

  **注意,将此处的clusterIP修改为 kubelet 配置文件中所配置的 clusterDNS参数值

2.部署

kubectl apply -f coredns.yaml 

3.查看

kubectl get pods -n kube-system

4.测试

kubectl run -it --rm dns-test --image=busybox:1.28.4 sh

 

标签:文件,kube,部署,yaml,dns,coredns,CoreDNS,k8s
From: https://www.cnblogs.com/fanqisoft/p/17151695.html

相关文章

  • k8s orders
    一、资源管理介绍二、陈述式对象管理三、k8s的ip和端口介绍四、项目生命周期一、资源管理介绍1、资源管理概念在kubernetes中,所有的内容都抽象为资源,用户需要通过操......
  • k8s service nodeport
    服务(Service)将运行在一组Pods上的应用程序公开为网络服务的抽象方法。Kubernetes中Service的一个关键目标是让你无需修改现有应用程序就能使用不熟悉的服务发现机制......
  • angular 项目 路径中添加# --- 解决ng项目部署后页面刷新404问题
    问题:angular项目执行npmrunbuild后部署到服务器,打开页面可以正常访问,但是刷新后404解决方法如下:angular项目路径中添加#即angular项目使用hash模式设......
  • k8s-授权apiserver访问kubelet
    本文章是 k8s二进制高可用集群部署 的分支。详细步骤请参考目录。应用场景:例如kubectllogscat>apiserver-to-kubelet-rbac.yaml<<EOFapiVersion:rbac.authoriz......
  • 一台服务器部署ShareWAF,后面接多台Web服务器,该如何配置?
    ShareWAF做为WAF,可以不只是WAF,还可以充当负载或路由的角色。比如可以有这样一种部署架构: 在此结构中,ShareWAF部署于一台服务器,后面接多台独立的WEB服务器。ShareWAF......
  • ShareWAF 软件&云形态安装部署说明
    一、常用文件说明sharewaf.js:主程序daemon.js:主程序守护程序oem.js:OEM定制文件developer.js:二次开发接口rules.js:自定义规则文件regexp.js:正则防护规则文件developer.js:自......
  • 好上好信息 API 微服务集群在 KubeSphere 的部署实践
    作者:徐鹏、深圳好上好信息(001298)、技术副总监、负责云服务器团队的架构设计及业务开发,拥抱云原生,乐于分享,终生学习。公司简介好上好信息(001298)是中国大陆一家致力于......
  • K8s:通过 kubectl 插件 rakkess 查看集群 RBAC授权信息
    写在前面分享一个查看RBAC权限的工具通过rakkess可以查看当前命名空间rbac的授权理解不足小伙伴帮忙指正出其东门,有女如云。虽则如云,匪我思存。缟衣綦巾,聊乐......
  • windows将前端项目部署到nginx
    1、在官网下载安装Nginx(记得安装稳定版本)2、执行Nginx.exe(通过查看任务管理器,确定任务是否执行)listen默认为80端口,若Nginx.exe无法启动(查看任务管理器找不到nginx),则有......
  • k8s常用命令
    kubectl常用命令指南Kubctl命令是操作kubernetes集群的最直接的方式,特别是运维人员,需要对这些命令有一个详细的掌握Kubectl自动补全#setupautocompleteinbash......