from:kubernetes集群搭建以及遇到的问题

centos7.2搭建kubernetes集群以及遇到的问题

环境准备:
  • centos7.2
  • etcd
  • flannel
  • kubenetes1.3

说明:一台pc用于搭建kubernetes master节点,n台kuernetes节点,组成一个kubernetes集群,master节点需要运行etcd kube-apiserver kube-controller-manager

node ip
kube-master 192.168….
kube-node-1 192.168…
….. …..
kube-node-i 192.168…

安装所需软件

安装etcd

etcd安装在kubernetest master节点上
本教程只安装单机的etcd,如果需要用etcd集群,请自行网上找etcd集群搭建教程

sudo wget http://code.yunfancdn.cn/huangjia/document/raw/master/kubernete/etcd-v2.2.0-linux-amd64.tar.gzsudo tar -zxf etcd-v2.2.0-linux-amd64.tar.gzsudo cd etcd-v2.2.0-linux-amd64sudo cp etcd etcdctl /usr/bin
安装flannel
sudo wget http://code.yunfancdn.cn/huangjia/document/raw/master/kubernete/flannel-0.5.4-linux-amd64.tar.gzsudo cd flannel-0.5.4sudo flanneld  /usr/bin
安装kubenetes
sudo wget http://code.yunfancdn.cn/huangjia/document/raw/master/kubernete/kubernetes.tar.gzsudo tar -zxf kubernetes.tar.gzsudo cd kubernetessudo cp kube* /usr/bin

部署各组件

etcd启动:

etcd -name etcd \
-data-dir /var/lib/etcd \
-listen-client-urls http://0.0.0.0:2378,http://0.0.0.0:4001 \
-advertise-client-urls http://0.0.0.0:2378,http://0.0.0.0:4001 \
>> /var/log/etcd.log 2>&1 &

kubernetes api server启动:

sudo kube-apiserver \
--logtostderr=true --v=0 \
--etcd_servers=http://172.17.11.254:4001 \
--insecure-bind-address=0.0.0.0 --insecure-port=8080 \
--service-cluster-ip-range=10.254.1.0/16 \
>> /home/huangjia/log/kube-apiserver.log 2>&1 &

kube-controller-manager:

sudo kube-controller-manager \
--logtostderr=true --v=0 \
--master=http://0.0.0.0:8080 \
>> /home/huangjia/log/kube-controller-manager.log 2>&1 &

kube-scheduler:

sudo kube-scheduler \
--logtostderr=true --v=0 \
--master=http://0.0.0.0:8080 \
>> /home/huangjia/log/kube-scheduler.log 2>&1 &

kube-proxy:

sudo kube-proxy \
--logtostderr=true --v=0 \
--master=http://0.0.0.0:8080 \
>> /home/huangjia/log/kube-proxy.log 2>&1 &

node启动组件

docker:

sudo docker -d \
-H unix:///var/run/docker.sock -H 0.0.0.0:2375 \
>> /home/huangjia/log/docker.log 2>&1 &

kubelet:

sudo kubelet \
--address=0.0.0.0 \
--port=10250 \
--logtostderr=true --v=0 \
--api-servers=http://0.0.0.0:8080 \
>> /home/huangjia/log/kubelet.log 2>&1 &

kube-proxy:

sudo kube-proxy \
--logtostderr=true --v=0 \
--master=http://192.168.3.27:8080 \
>> /home/huangjia/log/kube-proxy.log 2>&1 &

flanneld:

etcdctl -C http://192.168.3.206:4001 \
set /coreos.com/network/config '{"Network":"10.0.0.0/16"}'flanneld -etcd-endpoints=http://192.168.3.206:4001 \
>> /home/huangjia/log/flanneld.go 2>&1 &source /run/flannel/subnet.envifconfig docker0 ${FLANNEL_SUBNET} 此命令行将docker0的网罗更改为flannel的网络

docker

docker -d \
-H unix:///var/run/docker.sock -H 0.0.0.0:2375 \
--bip=${FLANNEL_SUBNRT} --mtu=${FLANNEL_MTU} \
>> /home/huangjia/log/docker.log 2>&1 &

F && Q

  1. 在环境搭建完成之后再master节点执行如下命令:
sudo kubectl get nodes 或其他任何kubectl get create delete等操作,都会报如下错误error: provided data does not appear to be a protobuf message, expected prefix [107 56 115 0]
  • 1
  • 2
  • 3

原因:
结合本教程所搭建的环境,kubectl默认的是采用master节点的ip:8080的方式去连接apiserver发送请求,但是我在部署的过程中,由于master节点的8080端口已经被其他的应用所占用,所以我更改了apiserver的端口为9080,所以当直接用:kubectl get 等操作的时候会报以上错误。
解决方式有两种:
一:通过kubectl -s http://matserIp:apiserverPort get
二:通过kubectl config set-cluster name –server=http://matserIp:apiserverPort 然后通过
kubectl –cluster=name get 就能正常的操作了

kubernetes集群搭建以及遇到的问题相关推荐

  1. Kubernetes集群搭建之Etcd集群配置篇

    docker快速启动etcd脚本 https://www.cnblogs.com/ka1em/p/11300355.html rm -rf /tmp/etcd-data.tmp && ...

  2. kubernetes集群搭建Zabbix监控平台

    kubernetes集群搭建Zabbix监控平台 一.zabbix介绍 1.zabbix简介 2.zabbix特点 3.zabbix的主要功能 4.zabbix架构图 二.检查本地k8s环境 1.检查 ...

  3. Kubernetes集群搭建及容器化部署

    Kubernetes集群搭建及容器化部署 目录 一.k8s 集群部署 2 1.k8s 快速入门 2 2.k8s 集群安装 10 二.k8s 容器化部署 18 1.Kubectl命令行部署 18 2.K ...

  4. kubernetes集群搭建

    Kubernetes集群组件: - etcd 一个高可用的K/V键值对存储和服务发现系统 - flannel 实现夸主机的容器网络的通信 - kube-apiserver 提供kubernetes集群 ...

  5. Kubernetes集群搭建以及基本使用【具详细】;

    文章目录 前言 一.有了docker为什么还需要k8s 二.K8s介绍.集群架构.服务器配置推荐 1.kubernetes是什么 2.Kubernetes集群架构与组件 3.生产环境部署K8s的两种方 ...

  6. 4.kubernetes集群搭建

    实验环境 主机名 IP 备注 k8s-80 192.168.188.80 2U2G.master k8s-81 192.168.188.81 1U1G.node k8s-82 192.168.188. ...

  7. 二进制方式搭建kubernetes集群搭建步骤

    二进制方式搭建k8s的使用步骤: 我们按照下面六个步骤来做: 注意哦,本文只是实验步骤,告诉你我们将会做什么.具体的文章可以直接查看相应步骤下的链接就可以了. 一. 实验环境准备 在开始之前,部署 K ...

  8. CentOS7系统上Kubernetes集群搭建

    虚拟机创建 在自己的Mac系统里面利用Parallels Desktop创建3台虚拟机,具体信息如下: CentOS7-Node1: 10.211.55.7 parallels/centos-test ...

  9. 多台云服务器的 Kubernetes 集群搭建

    环境 两台或多台腾讯云服务器(本人搭建用了两台),都是 CentOs 7.6, master 节点:服务器为 4C8G,公网 IP:124.222.61.xxx node1节点:服务器为 4C4G,公 ...

最新文章

  1. Redis的keys命令到底有多慢?
  2. P5357 【模板】AC自动机(二次加强版)(AC自动机建fail树dfs求模式串出现次数)
  3. JS BOM之location.hash详解
  4. SQL SERVER 存储过程学习笔记 (转)
  5. TPC-W安装与配置(威斯康星大学Java版)
  6. 5分钟学习基于Go,go-microservice-template,Minke的微服务
  7. DL之DNN:基于Tensorflow框架对神经网络算法进行参数初始化的常用九大函数及其使用案例
  8. dhcp是哪一层的协议_OSI各个分层分别负责哪些功能?有哪些主要协议?涉及到哪些设备?...
  9. 加入域报错(找不到网络路径)
  10. artsy 爬虫_让我们得到Artsy! 使用神经网络创建自定义Snapchat过滤器!
  11. mysql data masking_Percona8.0.17的数据屏蔽插件的使用
  12. 用于网络销售的虚拟产品演示软件
  13. 10大白帽黑客专用的 Linux 操作系统
  14. 从零开始开发一个大型网站
  15. 基于MATLAB的图像平滑滤波降噪(去噪)系统(通信毕业设计)(中值滤波,维纳滤波,小波降噪,均值滤波,椒盐噪声)
  16. 暴力破解密码(pywifi)python
  17. 关于欧拉角和Gimbal lock
  18. Android基本常识
  19. 一个简单有趣的微信聊天机器人
  20. UI界面教程:用PS设计运动app跑友圈页面

热门文章

  1. 利用vector定义MAT类对象数组的方法
  2. 大学毕业标语计算机学院,大学毕业横幅标语创意
  3. 用来定制shell环境 set/shopt
  4. 如何应対syn flood
  5. cad卸载_30年CAD老师傅一步步教你怎么把CAD卸载得一干二净
  6. 无效字符 java_Java知识查漏补缺
  7. 百度地图3.1课程—检索演示
  8. Symfony2Book06:路由
  9. 自定义SearchView的搜索提示
  10. 《SOA与REST:用REST构建企业级SOA解决方案》—第2章2.1节如何使用案例研究