018.Kubernetes二进制部署插件coredns
一 修改配置文件
1.1 下载解压
1 [root@k8smaster01 ~]# cd /opt/k8s/work/kubernetes/
2 [root@k8smaster01 kubernetes]# tar -xzvf kubernetes-src.tar.gz
1.2 修改配置
1 [root@k8smaster01 ~]# cd /opt/k8s/work/kubernetes/cluster/addons/dns/coredns
2 [root@k8smaster01 coredns]# cp coredns.yaml.base coredns.yaml
3 [root@k8smaster01 coredns]# source /opt/k8s/bin/environment.sh
4 [root@k8smaster01 coredns]# sed -i -e "s/__PILLAR__DNS__DOMAIN__/${CLUSTER_DNS_DOMAIN}/" -e "s/__PILLAR__DNS__SERVER__/${CLUSTER_DNS_SVC_IP}/" coredns.yaml
5 [root@k8smaster01 coredns]# vi coredns.yaml
6 ……
7 image: registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.3.1
8 ……
9 #修改image的源。
二 创建 coredns
2.1 创建coredns并检查
1 [root@k8smaster01 coredns]# kubectl create -f coredns.yaml
2.2 检查 coredns 功能
1 [root@k8smaster01 coredns]# kubectl get all -n kube-system
三 确认验证
3.1 新建Deployment
1 [root@k8smaster01 ~]# cd /opt/k8s/work
2 [root@k8smaster01 work]# cat > my-nginx.yaml <<EOF
3 apiVersion: extensions/v1beta1
4 kind: Deployment
5 metadata:
6 name: my-nginx
7 spec:
8 replicas: 2
9 template:
10 metadata:
11 labels:
12 run: my-nginx
13 spec:
14 containers:
15 - name: my-nginx
16 image: nginx:1.7.9
17 ports:
18 - containerPort: 80
19 EOF
3.2 export该Deployment
1 [root@k8smaster01 work]# kubectl expose deploy my-nginx
3.3 查看该service
1 [root@k8smaster01 work]# kubectl get services --all-namespaces | grep my-nginx
2 default my-nginx ClusterIP 10.254.157.163 <none> 80/TCP 9s
3
3.4 创建另一个pod
1 [root@k8smaster01 ~]# cd /opt/k8s/work
2 [root@k8smaster01 work]# cat > dnsutils-ds.yml <<EOF
3 apiVersion: v1
4 kind: Service
5 metadata:
6 name: dnsutils-ds
7 labels:
8 app: dnsutils-ds
9 spec:
10 type: NodePort
11 selector:
12 app: dnsutils-ds
13 ports:
14 - name: http
15 port: 80
16 targetPort: 80
17 ---
18 apiVersion: extensions/v1beta1
19 kind: DaemonSet
20 metadata:
21 name: dnsutils-ds
22 labels:
23 addonmanager.kubernetes.io/mode: Reconcile
24 spec:
25 template:
26 metadata:
27 labels:
28 app: dnsutils-ds
29 spec:
30 containers:
31 - name: my-dnsutils
32 image: tutum/dnsutils:latest
33 command:
34 - sleep
35 - "3600"
36 ports:
37 - containerPort: 80
38 EOF
39 [root@k8smaster01 work]# kubectl create -f dnsutils-ds.yml
40 [root@k8smaster01 work]# kubectl get pods -lapp=dnsutils-ds

3.5 检查解析
1 [root@k8smaster01 ~]# kubectl create clusterrolebinding kube-apiserver:kubelet-apis --clusterrole=system:kubelet-api-admin --user kubernetes
2 [root@k8smaster01 ~]# kubectl -it exec dnsutils-ds-4f2nt bash
3 root@dnsutils-ds-4f2nt:/# cat /etc/resolv.conf
4 nameserver 10.254.0.2
5 search default.svc.cluster.local svc.cluster.local cluster.local
6 options ndots:5
7
8 [root@k8smaster01 work]# kubectl exec dnsutils-ds-4f2nt nslookup kubernetes
9 [root@k8smaster01 work]# kubectl exec dnsutils-ds-4f2nt nslookup www.baidu.com
10 [root@k8smaster01 work]# kubectl exec dnsutils-ds-4f2nt nslookup my-nginx
11 [root@k8smaster01 work]# kubectl exec dnsutils-ds-4f2nt nslookup kube-dns.kube-system.svc
12 [root@k8smaster01 work]# kubectl exec dnsutils-ds-4f2nt nslookup kube-dns.kube-system.svc.cluster.local
13 [root@k8smaster01 work]# kubectl exec dnsutils-ds-4f2nt nslookup kube-dns.kube-system.svc.cluster.local.

018.Kubernetes二进制部署插件coredns的更多相关文章
- 019.Kubernetes二进制部署插件dashboard
一 修改配置文件 1.1 下载解压 [root@k8smaster01 ~]# cd /opt/k8s/work/kubernetes/ [root@k8smaster01 kubernetes]# ...
- Kubernetes 二进制部署(一)单节点部署(Master 与 Node 同一机器)
0. 前言 最近受“新冠肺炎”疫情影响,在家等着,入职暂时延后,在家里办公和学习 尝试通过源码编译二进制的方式在单一节点(Master 与 Node 部署在同一个机器上)上部署一个 k8s 环境,整理 ...
- kubernetes二进制部署k8s-master集群controller-manager服务unhealthy问题
一.问题现象 我们使用二进制部署k8s的高可用集群时,在部署多master时,kube-controller-manager服务提示Unhealthy [root@ceph-01 system]# k ...
- 003.Kubernetes二进制部署准备
一 前置准备 1.1 前置条件 相应的充足资源的Linux服务器: 设置相应的主机名,参考命令: hostnamectl set-hostname k8smaster Mac及UUID唯一: 若未关闭 ...
- Kubernetes 二进制部署(二)集群部署(多 Master 节点通过 Nginx 负载均衡)
0. 前言 紧接上一篇,本篇文章我们尝试学习多节点部署 kubernetes 集群 并通过 haproxy+keepalived 实现 Master 节点的负载均衡 1. 实验环境 实验环境主要为 5 ...
- Kubernetes 二进制部署
目录 1.基础环境 2.部署DNS 3.准备自签证书 4.部署Docker环境 5.私有仓库Harbor部署 6.部署Master节点 6.1.部署Etcd集群 6.2.部署kube-apiserve ...
- 008.Kubernetes二进制部署Nginx实现高可用
一 Nginx代理实现kube-apiserver高可用 1.1 Nginx实现高可用 基于 nginx 代理的 kube-apiserver 高可用方案. 控制节点的 kube-controller ...
- 012.Kubernetes二进制部署worker节点Flannel
一 部署flannel 1.1 安装flannel kubernetes 要求集群内各节点(包括 master 节点)能通过 Pod 网段互联互通.flannel 使用 vxlan 技术为各节点创建一 ...
- 013.Kubernetes二进制部署worker节点Nginx实现高可用
一 Nginx代理实现kube-apiserver高可用 1.1 Nginx实现高可用 基于 nginx 代理的 kube-apiserver 高可用方案. 控制节点的 kube-controller ...
随机推荐
- Java学习笔记之面向对象
面向对象概念 面向对象编程 &面向过程编程 面向对象:关心是谁来做 面向过程:关心的是怎么做 面向对象总结成一句话:就是分工与协作,干活的是对象 生活中: 对象 -----抽象-------- ...
- Java的事件自定义事件学习
课程设计要做一个游戏,由于对C++不是很熟悉,老师也准许使用java 或者其他的语言,在.net我学过事件,一种委托回调,但是在java 我不是很了解,应该原理都相同吧! 游戏大致是这样的,现在这在写 ...
- Python开发【第十一篇】函数
函数 什么是函数? 函数是可以重复执行的语句块,可以重复调用并执行函数的面向过程编程的最小单位. 函数的作用: 函数用于封装语句块,提高代码的重用性,定义用户级别的函数.提高代码的可读性和易维护性. ...
- ndnsim结果分析
ndnSIM中提供了几种trace用来对仿真结果进行跟踪,生成数据文件txt 官网地址: https://ndnsim.net/current/metric.html#packet-trace-hel ...
- JBOSS中间件漏洞总汇复现
JBOSS中间件漏洞总汇复现 JBoss JMXInvokerServlet 反序列化漏洞 漏洞复现 直接使用docker搭建的漏洞环境. 环境搭建完成后,直接使用工具检测即可:工具下载地址https ...
- springboot使用idea打jar包
1.如果有本地jar包依赖,放到/WEB-INF/lib下,用system类型配到pom中 <dependency> <groupId>org.wechat</group ...
- pytest1-Installation and Getting Started
pytest是python的一种单元测试框架(非自带,需要安装),与python自带的unitest测试框架相比,使用起来更加简洁.效率更高.总之,一句话,pytest优于unitest. 1.安装p ...
- 7.Linux文件编辑之Vim
1.VIM基本概述 1.什么是VIM? vi和vim是Linux下的一个文本编辑工具.(可以理解为windows的记事本,或word文档) 2.为什么要使用VIM? 因为Linux系统一切皆为文件,而 ...
- springboot学习(二十二)_ 使用@Constraint注解自定义验证注解
最近项目在使用如@NotNull @Max 等配合@vaild 注解进行验证传过来的参数校验,然后通过统一异常处理,直接返回给前端,不用在业务代码中对这些参数进行校验.但是官方提供的并不能全部满足项目 ...
- ubuntu 虚拟机设置静态ip
$ sudo vim /etc/network/interfaces auto ens33 # 使用的网络接口,之前查询接口是为了这里 iface ens33 inet static ...
