博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Kubernetes集群部署之一系统环境初始化
阅读量:6006 次
发布时间:2019-06-20

本文共 2476 字,大约阅读时间需要 8 分钟。

安装版本:

centos   version:        7.4docker   version:        18.03.1-cekubectl  version:        v1.10.1etcdctl  version:        3.2.18Flannel  version:       v0.10.0

基本架构:

IP地址 主机名 服务
10.200.3.105 k8s-master etcd/docker/kube-apiserver/kube-controller-manager/kube-scheduler/flannel
10.200.3.106 k8s-node-1 etcd/docker/kube-proxy/kubelet/flannel
10.200.3.107 k8s-node-2 etcd/docker/kube-proxy/kubelet/flannel

1. 关闭SELinux和防火墙

#systemctl disable firewalld.service#systemctl stop firewalld.service

2.设置主机名:

# hostnamectl --static set-hostname k8s-master# hostnamectl --static set-hostname k8s-node-1# hostnamectl --static set-hostname k8s-node-2

3.设置/etc/hosts保证主机名能够解析

10.200.3.105    k8s-master10.200.3.106    k8s-node-110.200.3.107    k8s-node-2

4. 设置部署节点到其它所有节点的SSH免密码登录

[root@k8s-master ~]# ssh-keygen -t rsa    [root@k8s-master ~]# ssh-copy-id k8s-master[root@k8s-master ~]# ssh-copy-id k8s-node-1[root@k8s-master ~]# ssh-copy-id k8s-node-2

5.安装Docker(三台主机都安装)

第一步:使用国内Docker源

[root@k8s-master ~]# cd /etc/yum.repos.d/[root@k8s-master yum.repos.d]#  wget \  https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo--2018-05-30 17:20:48--  https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repoResolving mirrors.aliyun.com (mirrors.aliyun.com)... 103.15.99.96, 103.15.99.93, 103.15.99.94, ...Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|103.15.99.96|:443... connected.HTTP request sent, awaiting response... 200 OKLength: 2640 (2.6K) [application/octet-stream]Saving to: ‘docker-ce.repo’100%[===========================================================================================>] 2,640       --.-K/s   in 0s      2018-05-30 17:20:49 (63.8 MB/s) - ‘docker-ce.repo’ saved [2640/2640]

第二步:Docker安装:

[root@k8s-master yum.repos.d]# yum install -y docker-ce

第三步:启动后台进程:

[root@k8s-master ~]# systemctl start docker

6.准备部署目录

#mkdir -p /opt/kubernetes/{cfg,bin,ssl,log}

 

Kubernetes主要由以下几个核心组件组成:

etcd 保存了整个集群的状态;

apiserver 提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制;

controller manager 负责维护集群的状态,比如故障检测、自动扩展、滚动更新等;

scheduler 负责资源的调度,按照预定的调度策略将Pod调度到相应的机器上;

kubelet 负责维护容器的生命周期,同时也负责Volume(CSI)和网络(CNI)的管理;

Container runtime 负责镜像管理以及Pod和容器的真正运行(CRI);

kube-proxy 负责为Service提供cluster内部的服务发现和负载均衡;

除了核心组件,还有一些推荐的Add-ons:

kube-dns负责为整个集群提供DNS服务

Ingress Controller为服务提供外网入口

Heapster提供资源监控

Dashboard提供GUI

Federation提供跨可用区的集群

 

参考文档:https://github.com/unixhot/salt-kubernetes

     https://jimmysong.io/kubernetes-handbook/practice/install-kubernetes-on-centos.html

  

转载地址:http://owpmx.baihongyu.com/

你可能感兴趣的文章
转载-Webp格式用户Android客户端
查看>>
关键字的作用
查看>>
多态时:成员特点,成员变量
查看>>
【ZZ】常用推荐算法
查看>>
Linux内核中链表的实现与应用【转】
查看>>
创建进程及进程相关方法
查看>>
C语言将字符串转换成对应的数字(十进制、十六进制)【转】
查看>>
正则表达式【TLCL】
查看>>
WebService
查看>>
mybatis的if判断integer
查看>>
LeetCode OJ:Length of Last Word(最后一个词的长度)
查看>>
python的defaultdict
查看>>
【项目管理】中小公司PMO不一样期间的责任
查看>>
Eclipse添加maven之后报错 Eclipse is running in a JRE, but a JDK is required 解决方法
查看>>
jQuery插件开发
查看>>
git的初始设置
查看>>
.NET Remoting 体系结构 之 生命周期管理
查看>>
Android文件操作工具类
查看>>
逻辑删除和物理删除的区分
查看>>
关于闭包的理解(JS学习小结)
查看>>