Kubernetes集群安装部署

Kubernetes集群组件:

-Master节点

  - etcd 一个高可用的K/V键值对存储和服务发现系统

  - kube-apiserver 提供kubernetes集群的API调用

  - kube-controller-manager 确保集群服务

  - kube-scheduler 调度容器,分配到Node

-Minion节点

  - flannel 实现夸主机的容器网络的通信

  - kubelet 在Node节点上按照配置文件中定义的容器规格启动容器

  - kube-proxy 提供网络代理服务

集群示意图

  Kubernetes工作模式server-client,Kubenetes Master提供集中化管理Minions。

部署1台Kubernetes Master节点和3台Minion节点,

192.168.137.142 cmmaster

192.168.137.148 cmnode1

192.168.137.199 cmnode2

192.168.137.212 cmnode3

安装EPEL源,在所有节点上

# yum -y install epel-release

安装配置Kubernetes Master,在Master节点上

1.使用yum安装etcd和kubernetes-master

# yum -y install etcd kubernetes-master

2.编辑/etc/etcd/etcd.conf文件

ETCD_NAME=default

ETCD_DATA_DIR="/var/lib/etcd/default.etcd"

ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"

ETCD_ADVERTISE_CLIENT_URLS="http://localhost:2379"

3.编辑/etc/kubernetes/apiserver文件

KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"

KUBE_API_PORT="--port=8080"

KUBELET_PORT="--kubelet-port=10250"

KUBE_ETCD_SERVERS="--etcd-servers=http://127.0.0.1:2379"

KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"

KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota"

KUBE_API_ARGS=""

4.启动etcd、kube-apiserver、kube-controller-manager、kube-scheduler等服务,并设置开机启动。

启动etcd、kube-apiserver、kube-controller-manager、kube-scheduler等服务,并设置开机启动。

for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler; do systemctl restart $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES ; done

# systemctl status  etcd.service

# systemctl status  kube-apiserver.service

# systemctl status  kube-controller-manager.service

# systemctl status  kube-scheduler.service

5.在etcd中定义flannel网络

[root@cmmaster ~]# etcdctl mk /atomic.io/network/config '{"Network":"172.17.0.0/16"}'

安装配置Kubernetes Node

如下操作在cmnode1、cmnode2、cmnode3上执行

1.安装flannel kubernetes-node

yum -y install flannel kubernetes-node

2.为flannel网络指定etcd服务,修改/etc/sysconfig/flanneld文件

FLANNEL_ETCD="http://192.168.137.142:2379"

FLANNEL_ETCD_KEY="/atomic.io/network"

3.修改/etc/kubernetes/config文件

KUBE_LOGTOSTDERR="--logtostderr=true"

KUBE_LOG_LEVEL="--v=0"

KUBE_ALLOW_PRIV="--allow-privileged=false"

KUBE_MASTER="--master=http://192.168.137.142:8080"

4.按照如下内容修改对应node的配置文件/etc/kubernetes/kubelet

KUBELET_ADDRESS="--address=0.0.0.0"                                   #将127.0.0.1修改成0.0.0.0

KUBELET_PORT="--port=10250"

KUBELET_HOSTNAME="--hostname-override=192.168.137.148"             #修改成对应Node的IP

KUBELET_API_SERVER="--api-servers=http://192.168.137.142:8080"     #指定Master节点的API Server

KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=registry.access.redhat.com/rhel7/pod-infrastructure:latest"

KUBELET_ARGS=""

5.在所有Node节点上启动kube-proxy,kubelet,docker,flanneld等服务,并设置开机启动

# for SERVICES in kube-proxy kubelet docker flanneld;do systemctl restart $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES; done

•验证集群是否安装成功

在master上执行如下命令

[root@cmmaster ~]# kubectl get node

NAME              STATUS    AGE

192.168.137.147   Ready     7m

192.168.137.148   Ready     1m

192.168.137.199   Ready     7m

上述节点正常显示,状态为Ready,则说明集群搭建成功

转载于:https://blog.51cto.com/andyliu/2060412

实战4节点Centos7.3 安装Kubernetes集群相关推荐

  1. CentOS 7.5 使用 yum 安装 Kubernetes 集群(二)

    一.安装方式介绍 1.yum 安装 目前CentOS官方已经把Kubernetes源放入到自己的默认 extras 仓库里面,使用 yum 安装,好处是简单,坏处也很明显,需要官方更新 yum 源才能 ...

  2. Centos离线安装Kubernetes集群

    目录 kuberadmin离线安装K8s集群 环境准备 基础环境配置 安装docker 准备基础镜像以及安装包 镜像 集群初始化 设置.kube/config 安装网络组件 加入node节点 验证集群 ...

  3. 完整安装kubernetes集群环境(不需要科学上网)

    1.准备基础环境 我们将使用kubeadm部署3个节点的 Kubernetes Cluster 节点详细信息: 节点主机名 节点IP 节点角色 操作系统 节点配置 k8s-master 192.168 ...

  4. 二进制包安装Kubernetes集群环境完整版

    Kubernetes 概述 1. Kubernetes是什么 Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称K8S. K8S用于容器化应用程序的部署 ...

  5. 安装Kubernetes集群

    目录 1.K8s是什么 2.架构 1.工作方式 2.组件架构 1.控制平面组件(Control Plane Components) 2.Node 组件 3.形象化理解各组件的意义 3.kubeadm创 ...

  6. k8s 一键安装Kubernetes集群

    集群方案 使用三台物理机或VMwareVMware虚拟机来搭建集群环境,一台主控服务器,两台工作节点服务器. 一,集群安装准备 kubeasz项目(https://github.com/easzlab ...

  7. 傻瓜式安装Kubernetes集群

    目录 一.环境准备 二.docker安装 三.Kubernetes集群安装 四.k8s安装nginx 五.安装Dashboard 一.环境准备 一台兼容的 Linux 主机.Kubernetes 项目 ...

  8. Kubernetes - 一键安装Kubernetes集群

    文章目录 集群方案 一,集群安装准备 主控服务器 下载离线文件,安装Docker 安装 python.pip.ansible 工作节点 二,配置集群安装环境 启动 kubeasz 容器 设置参数允许离 ...

  9. CentOS7系统上Kubernetes集群搭建

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

最新文章

  1. Web API With AJAX: Handle Session in Web API
  2. iOS 单例模式全面解析
  3. python 运行java jar包,从Python运行javajar文件的最快方法?
  4. Java编程基础25——多线程上
  5. 分享实录 | 深度学习技术红利下的代码补全
  6. 《论语》读后颜渊第十二主要大意
  7. 欢乐纪中某A组赛【2019.7.11】
  8. java返回特定下标元素_java基础--输出数组中指定元素的下标
  9. Spring 系列: Spring 框架
  10. Crash -- 生成Minidump调试信息
  11. 【自我救赎--牛客网Top101 4天刷题计划】 第一天 热身运动
  12. 6个文件写出Tomcat核心功能(新手必看)
  13. 清除windows 远程桌面访问记录 批处理
  14. ThreadX视频教程第2期:通俗易懂的介绍Cortex-M内核的OS特性,双堆栈,非特权级,PendSV,SVC,Systick等,争取人人都可以掌握
  15. 花了3个小时解决了和异地女朋友一起看电影的需求(内附源码)
  16. 当OA遇上鸿蒙,打开信创智慧办公新画卷
  17. SLD各地物配置文件
  18. Python爬虫入门【7】: 蜂鸟网图片爬取之二
  19. 2021年江苏省高考成绩排名查询,2021年江苏高考分数一分一段位次表,江苏高考个人成绩排名查询方法...
  20. 扩展:hive插入数据到ES

热门文章

  1. linux systemd 编译,交叉编译 systemd(to be continued)
  2. php 可以做pc客户端吗,vue.js能做pc端吗
  3. java css是什么_Java 之 CSS
  4. php中的static,php中的static
  5. lisp 线型虚实变换_绘画|虚实?国风画这叫线型变化!画线条的正确姿势,你对了吗...
  6. 高级考题_经济师考过就满足?还有这个高级职称等你拿!
  7. errorgetlast php,php error_clear_last()函数与error_get_last()函数
  8. 深入理解JVM虚拟机(九):运行期优化与JIT编译器
  9. 5位无符号阵列乘法器设计_可变位宽的大规模矩阵乘法方法
  10. simple go web application 二维码生成 打包部署