Kubernetes集群部署之一系统环境初始化
安装版本:
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集群部署之一系统环境初始化的更多相关文章
- Docker学习-Kubernetes - 集群部署
Docker学习 Docker学习-VMware Workstation 本地多台虚拟机互通,主机网络互通搭建 Docker学习-Docker搭建Consul集群 Docker学习-简单的私有Dock ...
- kubernetes 集群部署
kubernetes 集群部署 环境JiaoJiao_Centos7-1(152.112) 192.168.152.112JiaoJiao_Centos7-2(152.113) 192.168.152 ...
- kubernetes集群部署
鉴于Docker如此火爆,Google推出kubernetes管理docker集群,不少人估计会进行尝试.kubernetes得到了很多大公司的支持,kubernetes集群部署工具也集成了gce,c ...
- Kubernetes集群部署关键知识总结
Kubernetes集群部署需要安装的组件东西很多,过程复杂,对服务器环境要求很苛刻,最好是能连外网的环境下安装,有些组件还需要连google服务器下载,这一点一般很难满足,因此最好是能提前下载好准备 ...
- 基于Kubernetes集群部署skyDNS服务
目录贴:Kubernetes学习系列 在之前几篇文章的基础,(Centos7部署Kubernetes集群.基于kubernetes集群部署DashBoard.为Kubernetes集群部署本地镜像仓库 ...
- 为Kubernetes集群部署本地镜像仓库
目录贴:Kubernetes学习系列 经过之前两篇文章:Centos7部署Kubernetes集群.基于kubernetes集群部署DashBoard,我们基本上已经能够在k8s的集群上部署一个应用了 ...
- Kubernetes 集群部署(2) -- Etcd 集群
Kubenetes 集群部署规划: 192.168.137.81 Master 192.168.137.82 Node 192.168.137.83 Node 以下在 Master 节点操作. ...
- Gitlab CI 集成 Kubernetes 集群部署 Spring Boot 项目
在上一篇博客中,我们成功将 Gitlab CI 部署到了 Docker 中去,成功创建了 Gitlab CI Pipline 来执行 CI/CD 任务.那么这篇文章我们更进一步,将它集成到 K8s 集 ...
- linux运维、架构之路-Kubernetes集群部署
一.kubernetes介绍 Kubernetes简称K8s,它是一个全新的基于容器技术的分布式架构领先方案.Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部 ...
随机推荐
- CODEVS.1228 苹果树(DFS序)
To CODEVS.1228 苹果树 To poj 3321 Description 在卡卡的房子外面,有一棵苹果树.每年的春天,树上总会结出很多的苹果.卡卡非常喜欢吃苹果,所以他一直都精心的呵护这 ...
- pwcrack--一款集合多种md5解密的工具
项目开源地址:https://github.com/L-codes/pwcrack-framework Ruby2.5+ (tested with Ruby2.5.3 & Ruby 2.6.3 ...
- 潭州课堂25班:Ph201805201 WEB 之 页面编写 第二课 (课堂笔记)
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- Problem E: 用链表实现约瑟夫环
Description 你听说过约瑟夫问题吗?问题大致如下:首先n个人围成一个圈,标记为1到n号.接着,从1号开始报数(从1开始),然后2号报数,然后3号...当有人报到到m时,这个人就要踢出比赛,然 ...
- 利用gsoap工具,通过wsdl文件生成webservice的C++工程文件
一.下载gsoap文件,下载地址:https://zh.osdn.net/projects/sfnet_gsoap2/releases/ 二.以gsoap-2.8为例,解压到D盘,在D:/gsoap- ...
- Zookeeper学习笔记——1 单机版本环境搭建
下载 首先去官网下载: http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.11/ 然后执行tar -zxvf解压 启动 进入conf目录, ...
- UVa 127 - "Accordian" Patience POJ 1214 链表题解
UVa和POJ都有这道题. 不同的是UVa要求区分单复数,而POJ不要求. 使用STL做会比較简单,这里纯粹使用指针做了,很麻烦的指针操作,一不小心就错. 调试起来还是很费力的 本题理解起来也是挺费力 ...
- 四种常见 Git 工作流比较
BY 童仲毅(geeeeeeeeek@github) 这是一篇在原文(BY atlassian)基础上演绎的译文.除非另行注明,页面上所有内容采用知识共享-署名(CC BY 2.5 AU)协议共享. ...
- JVM Debugger Memory View for IntelliJ IDEA
Posted on August 19, 2016 by Andrey Cheptsov Every day we try to find new ways to improve developer ...
- 手把手教你 Mockito 的使用
什么是 Mockito Mockito 是一个强大的用于 Java 开发的模拟测试框架, 通过 Mockito 我们可以创建和配置 Mock 对象, 进而简化有外部依赖的类的测试.使用 Mockito ...