看了kubernetes 权威指南 遇见了dns这一块。于是便按照书上的方式部署了一下。

  书上使用的方式是:kube2sky+etcd+skydns的方式。按照书上的yaml写了一遍,发现无论如何都无法将dns部署到kubernetes 的集群中,实在没办法只能着文档了。于是乎发现kubernetes 在1.2以后就已经不使用上面那套dns。1.2以后使用kube-dns+dnsmasq-metrics+kube-dnsmasq的方式部署。下面就是我部署遇见的坑:

1.dns中无法连接apiserver:8080端口(kube-dashborad也有这类问题)。

kube-dns无法连接apiserver的8080端口,一般的问题出现在iptables没有关闭(centos7:systemctl stop firewalld;centos6:service iptables stop )。还有开启ip_forward=1(开启ip转发)。这两步非常关键。建议开机启动。

2. busybox cant reach DNS service(就是创建的pod无法访问dns的服务)

  我这里导致这种问题的是由于flanneld重启,导致flanneld网卡变化,但是docker使用以前的flanneld生成的配置文件。所以nodes之间的docker0网卡无法进行连接。所以,这里需要在flanneld的启动文件中添加这一步:ExecStartPost=/usr/bin/mk-docker-opts.sh -k DOCKER_OPTS -d /run/flannel/docker(centos6自行添加)。然后在docker启动文件中加入读取/run/flannel/docker变量这一步,并且将读取的变量加入到启动。$DOCKER_OPT_BIP $OCKER_OPT_IPMASQ $DOCKER_OPT_MTU(这三个变量对应上面的/run/flannel/docker)

3.将各台机器的主机名和在集群中的名字设置相同,最好加入到/etc/hosts中。

总结: 细节,细节,细节。

kubernetes 1.5.2 部署kube-dns 踩过的坑的更多相关文章

  1. docker部署redis及踩到的坑

    对docker很好奇,玩了一下,部署了一个redis,结果踩了很多坑 任务目的就是在docker中成功部署redis并保证数据持久化到本地,配置也使用本地配置 docker run -p : -v $ ...

  2. 阿里云轻量应用服务器Lamp部署php工程踩过的坑

    第一次写博客,也不知道写什么,但是想坚持写博客来提升自己,不喜勿喷. 切回正题,使用阿里云的轻量应用服务器Lamp其实非常方便,价格也很便宜,一键购买需要的环境都帮你搭配好了,剩下的就是自己修改一下数 ...

  3. windows2012 IIS部署GeoTrust证书踩过的坑。

    系统:windows2012 环境:IIS8 在阿里云上买了GeoTrust证书, 按照说明下载证书到服务器,  导入证书, 给IIS站点部署https. 阿里云部署帮助文档:https://help ...

  4. windows2012 IIS部署GeoTrust证书踩过的坑。 视频测试可用 IIS 证书导入

    证书导入方式 https://wenku.baidu.com/view/3504f29a55270722192ef78a.html https://www.cnblogs.com/jackrebel/ ...

  5. Kubernetes 企业级集群部署方式

    一.Kubernetes介绍与特性 1.1.kubernetes是什么 官方网站:http://www.kubernetes.io • Kubernetes是Google在2014年开源的一个容器集群 ...

  6. linux运维、架构之路-Kubernetes离线、二进制部署集群

    一.Kubernetes对应Docker的版本支持列表 Kubernetes 1.9 <--Docker 1.11.2 to 1.13.1 and 17.03.x Kubernetes 1.8 ...

  7. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...

  8. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 ...

  9. kubernetes二进制高可用部署实战

    环境: 192.168.30.20 VIP(虚拟) 192.168.30.21 master1 192.168.30.22 master2 192.168.30.23 node1 192.168.30 ...

  10. Kubernetes集群的部署方式及详细步骤

    一.部署环境架构以及方式 第一种部署方式 1.针对于master节点 将API Server.etcd.controller-manager.scheduler各组件进行yum install.编译安 ...

随机推荐

  1. wordpress 代码获得菜单的方法

    1.第一种,在function.php中添加这个东东,wp_nav_menu()主要是用这个函数 $menu = 'menu'; $nav_menu = wp_get_nav_menu_object( ...

  2. 吴裕雄 python 机器学习——模型选择数据集切分

    import numpy as np from sklearn.model_selection import train_test_split,KFold,StratifiedKFold,LeaveO ...

  3. 使用SSH客户端远程登录Linux主机

    使用SSH客户端远程登录Linux主机(可替代samba.ftp服务) . Linux系统起初就是为多用户而产生的,可以允许多个用户同时登录linux主机各自进行操作,如图1所示: 图1 SSH(Se ...

  4. JS中的 '+' 号

    当用作单目操作符的时候,+操作符不会对Number类型产生影响.但如果应用在字符串类型上,会将其转换为数字: var a = 25;a =+ a; //对a值没有影响console.log(a); / ...

  5. centos7 安装pip2和pip3

    linux pip2 安装cd /usr/bin yum install -y epel-release yum install -y python-pip _____________________ ...

  6. windows 下安装chrome 调试iphone插件 ios-webkit-debug-proxy

    必备: 1. .NET Framework 4.5 及以上版本 2.powershell 5.1及以上版本 3.可正常访问  https://raw.githubusercontent.com/luk ...

  7. lsof 查看打开了一个文件的有哪些进程 统计那个进程打开的文件最多

    lsof | grep /lib64/libc-2.12.so | wc   == 查看打开了一个文件的有哪些进程 lsof | awk '{print $2,$1}' | sort | uniq - ...

  8. leetcode菜鸡斗智斗勇系列(10)--- Decrypt String from Alphabet to Integer Mapping

    1.原题: https://leetcode.com/problems/decrypt-string-from-alphabet-to-integer-mapping/submissions/ Giv ...

  9. 安卓开发:Password verification failed

    2019年8月5日更新: 我把Android Studio升级到3.4.2版本后,发现下图中的按钮已经不见了,所以本文中之前的创建签名文件的方法已经不行了- ...3.4.2版本是这样的---> ...

  10. 有未经处理的异常: 0xC00000FD: Stack overflow

    将“项目属性.链接器.系统.堆栈保留大小”设大一点比如16000000 这是我在网上找到的答案,很好的解决了我的问题,忘了是哪位大神了,总之,向大神致敬