安装版本:

centos   version:        7.4
docker version: 18.03.1-ce
kubectl version: v1.10.1
etcdctl version: 3.2.18
Flannel 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-master
10.200.3.106 k8s-node-
10.200.3.107 k8s-node-

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-
[root@k8s-master ~]# ssh-copy-id k8s-node-

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
---- ::-- https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Resolving 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|:... connected.
HTTP request sent, awaiting response... OK
Length: (.6K) [application/octet-stream]
Saving to: ‘docker-ce.repo’ %[===========================================================================================>] , --.-K/s in 0s -- :: (63.8 MB/s) - ‘docker-ce.repo’ saved [/]

第二步: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

  

Kubernetes集群部署之一系统环境初始化的更多相关文章

  1. Docker学习-Kubernetes - 集群部署

    Docker学习 Docker学习-VMware Workstation 本地多台虚拟机互通,主机网络互通搭建 Docker学习-Docker搭建Consul集群 Docker学习-简单的私有Dock ...

  2. kubernetes 集群部署

    kubernetes 集群部署 环境JiaoJiao_Centos7-1(152.112) 192.168.152.112JiaoJiao_Centos7-2(152.113) 192.168.152 ...

  3. kubernetes集群部署

    鉴于Docker如此火爆,Google推出kubernetes管理docker集群,不少人估计会进行尝试.kubernetes得到了很多大公司的支持,kubernetes集群部署工具也集成了gce,c ...

  4. Kubernetes集群部署关键知识总结

    Kubernetes集群部署需要安装的组件东西很多,过程复杂,对服务器环境要求很苛刻,最好是能连外网的环境下安装,有些组件还需要连google服务器下载,这一点一般很难满足,因此最好是能提前下载好准备 ...

  5. 基于Kubernetes集群部署skyDNS服务

    目录贴:Kubernetes学习系列 在之前几篇文章的基础,(Centos7部署Kubernetes集群.基于kubernetes集群部署DashBoard.为Kubernetes集群部署本地镜像仓库 ...

  6. 为Kubernetes集群部署本地镜像仓库

    目录贴:Kubernetes学习系列 经过之前两篇文章:Centos7部署Kubernetes集群.基于kubernetes集群部署DashBoard,我们基本上已经能够在k8s的集群上部署一个应用了 ...

  7. Kubernetes 集群部署(2) -- Etcd 集群

    Kubenetes 集群部署规划: 192.168.137.81  Master 192.168.137.82  Node 192.168.137.83  Node 以下在 Master 节点操作. ...

  8. Gitlab CI 集成 Kubernetes 集群部署 Spring Boot 项目

    在上一篇博客中,我们成功将 Gitlab CI 部署到了 Docker 中去,成功创建了 Gitlab CI Pipline 来执行 CI/CD 任务.那么这篇文章我们更进一步,将它集成到 K8s 集 ...

  9. linux运维、架构之路-Kubernetes集群部署

    一.kubernetes介绍        Kubernetes简称K8s,它是一个全新的基于容器技术的分布式架构领先方案.Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部 ...

随机推荐

  1. win7下一劳永逸地解决触控板禁用的问题

    win7下一劳永逸地解决触控板禁用的问题--有鼠标时触摸板不再可用, 没鼠标时才启用 下载Synaptics触摸板驱动并安装(去官网或驱动之家都可以) →重启 开始→运行→框内输入 regedit 点 ...

  2. Android中POST请求代码

    public static String getDataByPost(String APIUrl,Map<String, String> paramsHashMap){ String re ...

  3. 内置系统账户:Local system/Network service/Local Service 区别

    参考文献: http://www.cnblogs.com/xianspace/archive/2009/04/05/1429835.html 前言 今天在安装sqlserver2008 r2的时候,在 ...

  4. Android 热修复方案Tinker(一) Application改造

    基于Tinker V1.7.5 Android 热修复方案Tinker(一) Application改造    Android 热修复方案Tinker(二) 补丁加载流程    Android 热修复 ...

  5. Keras模型的导出和pb文件的转换

    Keras有两种类型的模型,序贯模型(Sequential)和函数式模型(Model),函数式模型应用更为广泛,序贯模型是函数式模型的一种特殊情况. 两类模型有一些方法是相同的: model.summ ...

  6. AB Test 是什么

    关于AB Test是什么 一种灰度发布方式. ps:什么是灰度发布 每个灰度对象都是0%(白色)到100%(黑色)的中间值,灰度发布是指在黑白之间,能够平滑过度的一种发布方式. 实现方式 让一部分用户 ...

  7. JSON.parse 必须用双引号包起来

    Why is it that whenever I do :- JSON.parse('"something"') it just parses fine but when I d ...

  8. eclipse:报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

    JavaWeb: 报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Bui ...

  9. SoapUI Pro Project Solution Collection-change the JDBC Request behavior

    change the jdbc request : 1.change the driver name,connection string,query string or assert. the obj ...

  10. sublime text3怎么安装Package Control

    sublime text3地址:https://packagecontrol.io/installation#st3 1.打开Preferences——Browse Packages,打开一个文件夹C ...