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 ...
随机推荐
- 实验吧之【who are you?】(时间盲注)补充
第二种方法 使用brup进行盲注 也是一个道理 不多贴了 这里提一下 burp怎么判断超时 Options->Connections->Tiimeouts->Normal这一空 ...
- dnn文本分类
简介 文本分类任务根据给定一条文本的内容,判断该文本所属的类别,是自然语言处理领域的一项重要的基础任务.具体的,本任务是对文本quey进行分类,任务流程如下: 收集用户query数据. 清洗,标记. ...
- 机器学习:eclipse中调用weka的Classifier分类器代码Demo
weka中实现了很多机器学习算法,不管实验室研究或者公司研发,都会或多或少的要使用weka,我的理解是weka是在本地的SparkML,SparkML是分布式的大数据处理机器学习算法,数据量不是很大的 ...
- 《Java并发编程实战》读书笔记-第2章 线程安全性
要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的和可变的状态的访问. 修复多线程问题的方式: 不在线程之间共享该状态变量 将状态变量修改为不可变的变量 在访问状态变量时使用同步 ...
- JS中==运行机制
1. 判断两边是否有NaN,如果有则一律返回false 2.判断两边是否含有布尔值,如果有的话则将true转化为1,false转化为0. 3.遇到null或者undefined,则不会进行类型转换,它 ...
- CSS3、jQuery实现3D翻书动画
使用CSS3 ,jQuery实现点击翻书动画效果,完整效果可在firefox中查看 HTML <div class="desktop"> <div class=& ...
- 如何在CentOS6.4系统上安装KVM虚拟机
CentOS6.4系统上安装KVM虚拟机 备注:以下操作说明是经过实验验证后总结出来的笔录,有需要的朋友可以进行参考,以下是基于VMware12.5.2虚拟机版本上安装的实验环境. 一.安装KVM ...
- GO实现简单(命令行)工具:sftp,文檔压解,RDS备份,RDS备份下载
GO实现简单(命令行)工具:sftp,文檔压解,RDS备份,RDS备份下载 轉載請註明出處:https://www.cnblogs.com/funnyzpc/p/11721978.html 内容提要: ...
- The value for the useBean class attribute is invalied
JSP: The value for the useBean class attribute XXX is ...
- [随机化算法] 听天由命?浅谈Simulate Anneal模拟退火算法
Simulate Anneal模拟退火算法,是一种用于得到最优解的随机化算法. 如果可以打一手漂亮的随机化搜索,也许当你面对一筹莫展的神仙题时就有一把趁手的兵器了. 这篇题解将教你什么?SA的基本思路 ...
