问题一:

# yum install -y etcd kubernetes
Error: docker-ce-cli conflicts with :docker-1.13.-.gitb2f74b2.el7.centos.x86_64
Error: docker-ce conflicts with :docker-1.13.-.gitb2f74b2.el7.centos.x86_64

原因:

  安装kubernetes之前已经安装了docker

解决方法:卸载docker服务

  卸载docker:yum remove -y 'rpm -qa |grep docker'

  删除容器镜像:rm -rf /var/lib/docker

再次安装kubernetes,安装成功,而且会自动安装docker

问题二:

2.1

# etcdctl mk /atomic.io/network/config '{"Network":"192.168.3.4/16"}'
Error: client: etcd cluster is unavailable or misconfigured; error #: dial tcp 127.0.0.1:: connect: connection refused; error #: dial tcp 127.0.0.1:: connect: connection refused
error #: dial tcp 127.0.0.1:: connect: connection refused
error #: dial tcp 127.0.0.1:: connect: connection refused
原因: 
  如果出现如上的错误,是因为ETCD_LISTEN_CLIENT_URLS参数没有配置http://127.0.0.1:2379而导致的
解决方法:
  将 # /etc/etcd/etcd.conf 中的ETCD_LISTEN_CLIENT_URLS参数改为:
  ETCD_LISTEN_CLIENT_URLS="http://127.0.0.1:2379" 2.2
# etcdctl mk /atomic.io/network/config '{"Network":"192.168.3.4/16"}'
Error: dial tcp 192.168.3.4:: connect: connection refused

原因:

  ETCD_LISTEN_CLIENT_URLS参数没有配置本地ip “http://192.168.3.4:2379” 而导致的

解决方法: 

将 # /etc/etcd/etcd.conf 中的ETCD_LISTEN_CLIENT_URLS参数改为:
ETCD_LISTEN_CLIENT_URLS="http://192.168.37.49:2379,http://127.0.0.1:2379"

问题三:启动docker服务失败

# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/docker.service.d
└─flannel.conf
Active: failed (Result: exit-code) since Tue -- :: CST; 4min 15s ago
Docs: http://docs.docker.com
Process: ExecStart=/usr/bin/dockerd-current --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current --default-runtime=docker-runc --exec-opt native.cgroupdriver=systemd --userland-proxy-path=/usr/libexec/docker/docker-proxy-current --init-path=/usr/libexec/docker/docker-init-current --seccomp-profile=/etc/docker/seccomp.json $OPTIONS $DOCKER_STORAGE_OPTIONS $DOCKER_NETWORK_OPTIONS $ADD_REGISTRY $BLOCK_REGISTRY $INSECURE_REGISTRY $REGISTRIES (code=exited, status=/FAILURE)
Main PID: (code=exited, status=/FAILURE) Jun :: localhost.localdomain systemd[]: Starting Docker Application Container Engine...
Jun :: localhost.localdomain dockerd-current[]: unable to configure the Docker daemon with file /etc/docker/daemon.json: the following directives are specified both as a flag and in the configuration file:...rom file: )
Jun :: localhost.localdomain systemd[]: docker.service: main process exited, code=exited, status=/FAILURE
Jun :: localhost.localdomain systemd[]: Failed to start Docker Application Container Engine.
Jun :: localhost.localdomain systemd[]: Unit docker.service entered failed state.
Jun :: localhost.localdomain systemd[]: docker.service failed.
原因是:
  安装kubernets之前安装过的docker残留文件影响了kubernets安装的docker启动
解决方法:
  将/etc/docker/daemon.json删除,重新启动即可。
问题四:创建k8s管理mysql的pod时:
# kubectl create -f mysql.yaml
error: error validating "mysql.yaml": error validating data: couldn't find type: v1beta1.Deployment; if you choose to ignore these errors, turn validation off with --validate=false
原因:
kubectl 的版本是1.5版本的
# kubectl version
Client Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.2", GitCommit:"269f928217957e7126dc87e6adfa82242bfe5b1e", GitTreeState:"clean", BuildDate:"2017-07-03T15:31:10Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.2", GitCommit:"269f928217957e7126dc87e6adfa82242bfe5b1e", GitTreeState:"clean", BuildDate:"2017-07-03T15:31:10Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"} 解决方法:
将mysql.yaml脚本中的 “ apiVersion: apps/v1beta1 ” 改为 “apiVersion: extensions/v1beta1 ” 即可
不同的apiversion解释:
apps API组将是v1部署类型所在的位置 . apps/v1beta1 版本已在1.6.0中添加,因此如果您有1.5.x客户端或服务器,则仍应使用 extensions/v1beta1 版本 .
apps/v1beta1 和 extensions/v1beta1 部署类型相同,但在通过 apps API创建时,会使用一些改进的默认值

搭建docker+k8s踩过的坑的更多相关文章

  1. [坑况]——webpack搭建前端环境踩过的坑啊

    前言 嘿哈,webpack搭建前端环境踩过的坑啊! 第一个:完全不知所措 webpack4 下面用不了HtmlWebpackPlugin 和 ExtractTextPlugin 解决方案: html- ...

  2. 在windows上搭建SSH服务踩过的坑

    前两天安装了windows操作系统,想在windows上做内网穿透,所以就想在windows下启用ssh服务,今天就来讲一下我在搭建ssh服务中遇到的坑. 我显示在Mac下搭建了ssh服务,并且测试通 ...

  3. Appium+Java(三)搭建环境之踩过的坑

    一.原因 有最少两年多没写手机自动化测试了,正巧公司有需求搞TOC端自动化测试调研,先入为主,因为之前写过appium所以先用它埋点试水了 二.现象: 1.我早期的appium版本是v1.4.16 2 ...

  4. centos7搭建docker+k8s集成

    1. 关闭防火墙 # systemctl stop firewalld # systemctl disable firewalld # setenforce 2. 使用yum安装etcd和kubern ...

  5. Docker & k8s 系列一:快速上手docker

    Docker & k8s 系列一:快速上手docker 本篇文章将会讲解:docker是什么?docker的安装,创建一个docker镜像,运行我们创建的docker镜像,发布自己的docke ...

  6. Docker & k8s 系列三:在k8s中部署单个服务实例

    本章将会讲解: pod的概念,以及如何向k8s中部署一个单体应用实例. 在上面的篇幅中,我们了解了docker,并制作.运行了docker镜像,然后将镜像发布至中央仓库了.然后又搭建了本机的k8s环境 ...

  7. 三万字无坑搭建基于Docker+K8S+GitLab/SVN+Jenkins+Harbor持续集成交付环境

    写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 文章和搭建环境所需要的yml文件已收 ...

  8. k8s踩坑记 - kubeadm join 之 token 失效

    抛砖引玉 环境 centos 7 amd64 两台 kubernetes 1.10 伴随着k8s1.10版本的发布,前天先在一台机器上搭建了k8s单机版集群,即既是master,也是node,按照经验 ...

  9. Docker从入门到掉坑(四):上手k8s避坑指南

    在之前的几篇文章中,主要还是讲解了关于简单的docker容器该如何进行管理和操作,在接下来的这篇文章开始,我们将开始进入对于k8s模块的学习 不熟悉的可以先回顾之前的章节,Docker教程系列文章将归 ...

随机推荐

  1. Golang协程实现流量统计系统(1)

    # 学习内容: # 学习目标: 学习Golang的基础开发 常用的Golang编程技艺 精巧省力的Go Lib 协程的真实应用实践 与其他语言对比着学 协程并发模型的深度应用 Growth hacki ...

  2. EBS 显示主页面的工作列表和主菜单

    EBS环境: R12.1.3 问题描述:如果系统的“个性化页”做了设置,可能出现登录系统后,如果下图红框中的 主菜单和工作列表没有显示的情况,如果需要重新显示“主菜单”和“工作列表”,可参考以下操作 ...

  3. cinder-----常用命令

    云硬盘的创建查询 #创建卷类型 cinder type-create rbd #rbd是云硬盘类型名称,可自行定义 #查询卷类型 cinder type-list #卷类型扩展规格 cinder ty ...

  4. 学习笔记 - Git

    学习参考网址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 Git是目前世界上 ...

  5. git pull 覆盖本地代码

    在使用Git的过程中,有些时候我们只想要git服务器中的最新版本的项目,对于本地的项目中修改不做任何理会,就需要用到Git pull的强制覆盖,具体代码如下: $ git fetch --all $ ...

  6. MySQL orzdba、dodba、top、iostat、vmstat、perf等

    1 mysq自带的mysqladmin命令 mysqladmin -usystem -p*** -h127.0.0.1 -P3306 -r -i 1 extended-status \ |grep & ...

  7. java:Session(概述,三层架构实例(实现接口封装JDBC),Session实现简单购物车实例)

    1.Session概述: Session:在计算机中,尤其是在网络应用中,称为“会话控制”.Session 对象存储特定用户会话所需的属性及配置信息.这样,当用户在应用程序的 Web 页之间跳转时,存 ...

  8. HCL试验3

    PC端配置:配置ip地址 配置网关 交换机(左)配置:①创建VLAN system-view vlan 10 vlan 20 ②配置PC端接口 interface gi 1/0/1 port link ...

  9. Linux文件目录的权限

    权限对文件的重要性:(主要是针对文件的内容而言,与文件名没有关系) r: 可读取此文件的实际内容. w: 可以编辑.新增或者修改该文件的内容(但不能删除该文件) x: 该文件具有可以被系统执行的权限. ...

  10. (转).net中的session与cookies区别及使用方法

    cookie数据存放在客户的浏览器上,session数据放在服务器上,cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session   先介绍一 ...