kubernetes 1.5.2 部署kube-dns 踩过的坑
看了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 踩过的坑的更多相关文章
- docker部署redis及踩到的坑
对docker很好奇,玩了一下,部署了一个redis,结果踩了很多坑 任务目的就是在docker中成功部署redis并保证数据持久化到本地,配置也使用本地配置 docker run -p : -v $ ...
- 阿里云轻量应用服务器Lamp部署php工程踩过的坑
第一次写博客,也不知道写什么,但是想坚持写博客来提升自己,不喜勿喷. 切回正题,使用阿里云的轻量应用服务器Lamp其实非常方便,价格也很便宜,一键购买需要的环境都帮你搭配好了,剩下的就是自己修改一下数 ...
- windows2012 IIS部署GeoTrust证书踩过的坑。
系统:windows2012 环境:IIS8 在阿里云上买了GeoTrust证书, 按照说明下载证书到服务器, 导入证书, 给IIS站点部署https. 阿里云部署帮助文档:https://help ...
- windows2012 IIS部署GeoTrust证书踩过的坑。 视频测试可用 IIS 证书导入
证书导入方式 https://wenku.baidu.com/view/3504f29a55270722192ef78a.html https://www.cnblogs.com/jackrebel/ ...
- Kubernetes 企业级集群部署方式
一.Kubernetes介绍与特性 1.1.kubernetes是什么 官方网站:http://www.kubernetes.io • Kubernetes是Google在2014年开源的一个容器集群 ...
- linux运维、架构之路-Kubernetes离线、二进制部署集群
一.Kubernetes对应Docker的版本支持列表 Kubernetes 1.9 <--Docker 1.11.2 to 1.13.1 and 17.03.x Kubernetes 1.8 ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录
0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 ...
- kubernetes二进制高可用部署实战
环境: 192.168.30.20 VIP(虚拟) 192.168.30.21 master1 192.168.30.22 master2 192.168.30.23 node1 192.168.30 ...
- Kubernetes集群的部署方式及详细步骤
一.部署环境架构以及方式 第一种部署方式 1.针对于master节点 将API Server.etcd.controller-manager.scheduler各组件进行yum install.编译安 ...
随机推荐
- Spring Boot 文件上传简易教程
上传文件是我们日常使用最为广泛的功能之一,比如App端上传头像.本章演示如何从客户端上传到 Spring Boot 开发的 Api中. 本项目源码 github 下载 1 新建 Spring Boot ...
- python 在linux上面安装beautifulsoup4(bs4) No module named 'bs4'
续费了我的服务器 重做系统成了Linux服务器 然后想把Windown上的Python脚本放上去运行 但是出现了 No module named 'bs4' 的问题 pip install bs4 试 ...
- NIO的理解
一.缓冲区(Buffer):在java NIO中负责数据的存取,实际上就是数组,用于存储不用数据类型的数据,根据数据类型不同(boolean除外),提供了相应类型的缓冲区(ByteBuffer,Cha ...
- 《实战Java高并发程序设计》读书笔记一
第一章 走入并行世界 1.基本概念 同步:同步方法一旦开始,调用者必须等到方法调用返回后,才能继续后续操作 异步:一旦开始,方法调用就会立即返回,调用就可以继续后续操作 并发:表示两个或者多个任务一起 ...
- cmake 的使用
官网教程:https://cmake.org/cmake-tutorial/ 第一个简单的例子 源文件:tutorial.cpp // A simple program that computes t ...
- Python学习(一)——开发语言和Python的安装
开发语言: 高级语言: Python,Java,PHP,C#,Go,ruby,C++...都依赖于C→字节码 语言的对比: Python,Java:既能写网页又能写后台 Python:开发效率比Jav ...
- zookeeper 源码(一) 选举和同步数据
前言 在开始阅读代码前我们先来了解一下zk 的大致结构,具体大概要实现的核心功能有那些,心中有个大概的框架阅读代码时再深入其中的细节,就会非常好懂,本人觉得这是一个阅读源码的好方法,可以最快地切入到源 ...
- Vue CLI 3搭建vue+vuex 最全分析
一.介绍 Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统.有三个组件: CLI:@vue/cli 全局安装的 npm 包,提供了终端里的vue命令(如:vue create .vue ...
- 例题3_2 WERTYU(UVa10082)
把手放在键盘上时,稍不注意就会往右错一位.这样,输入Q会变成W,输入J会变成K等.键盘如下图所示: 输入一个错位后敲出的字符串(所有字母均大写),输出打字员本来想打出的句子.输入保证合法,即一定是错位 ...
- javascript的正则匹配
前段时间需要用到比较多的js代码,当时有点搞不清test和match方法的区别,向百度求助,找到了这边关于正则匹配的博文,感谢作者分享. 原文地址[http://blog.sina.com.cn/s/ ...