快速部署Kubernetes集群管理
这篇文章介绍了如何快速部署一套Kubernetes集群,下面就快速开始吧!
准备工作
//关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
//关闭selinux,修改/etc/selinux/config
SELINUX=disabled
机器部署规划
主机 | IP | 部署组件 |
---|---|---|
master主节点 | 192.168.199.206 | etcd、kube-apiserver、kube-controller-manager、kube-scheduler |
node1子节点 | 192.168.199.159 | kubelet、kube-proxy、docker |
node2子节点 | 192.168.199.175 | kubelete、kube-proxy、docker |
k8s组件采用yum安装的方式,快速安装。
Master节点
//安装etcd
[root@206 ~]# yum install -y etcd
//修改/etc/etcd/etcd.conf配置文件
[root@206 ~]# vim /etc/etcd/etcd.conf
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.199.206:2379"
//配置etcd内网信息
[root@206 ~]# etcdctl set /atomic.io/network/config '{"Network":"172.17.0.0/16"}'
ps:其中网络号172.17.0.0/16与docker中的docker0网络一致(若不一致,可修改docker0网络或者配置上述etcd网络);
atomic.io与下面的Flannel配置中的FLANNEL_ETCD_PREFIX对应;
//运行etcd服务
[root@206 ~]# systemctl start etcd
[root@206 ~]# systemctl enbale etcd
//安装kubernetes-master
[root@206 ~]# yum install -y kubernetes-master
//修改/etc/kubernetes/apiserver配置文件
[root@206 ~]# vim /etc/kubernetes/apiserver
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
KUBE_ETCD_SERVERS="--etcd-servers=http://192.168.199.206:2379"
//修改/etc/kubernetes/config配置文件
[root@206 ~]# vim /etc/kubernetes/config
KUBE_MASTER="--master=http://192.168.199.206:8080"
//运行master服务
[root@206 ~]# systemctl start kube-apiserver kube-scheduler kube-controller-manager
[root@206 ~]# systemctl enable kube-apiserver kube-scheduler kube-controller-manager
//测试服务,若输出以下数据,则服务正常。
[root@206 ~]# curl -l http://192.168.199.206:8080
{
"paths": [
"/api",
"/api/v1",
"/apis",
"/apis/apps",
"/apis/apps/v1beta1",
"/apis/authentication.k8s.io",
"/apis/authentication.k8s.io/v1beta1",
"/apis/authorization.k8s.io",
"/apis/authorization.k8s.io/v1beta1",
"/apis/autoscaling",
"/apis/autoscaling/v1",
"/apis/batch",
"/apis/batch/v1",
"/apis/batch/v2alpha1",
"/apis/certificates.k8s.io",
"/apis/certificates.k8s.io/v1alpha1",
"/apis/extensions",
"/apis/extensions/v1beta1",
"/apis/policy",
"/apis/policy/v1beta1",
"/apis/rbac.authorization.k8s.io",
"/apis/rbac.authorization.k8s.io/v1alpha1",
"/apis/storage.k8s.io",
"/apis/storage.k8s.io/v1beta1",
"/healthz",
"/healthz/ping",
"/healthz/poststarthook/bootstrap-controller",
"/healthz/poststarthook/extensions/third-party-resources",
"/healthz/poststarthook/rbac/bootstrap-roles",
"/logs",
"/metrics",
"/swaggerapi/",
"/ui/",
"/version"
]
Node节点(159和175安装方法一样)
//安装docker
[root@159 ~]# yum install -y docker
//安装flannel
[root@159 ~]# yum install -y flannel
//修改/etc/sysconfig/flannel配置文件
[root@159 ~]# vim /etc/sysconfig/flannel
FLANNEL_ETCD_ENDPOINTS="http://192.168.199.206:2379"
//安装kubernetes-note
[root@159 ~]# yum install -y kubernetes-node
//修改/etc/kubernetes/config配置文件
[root@159 ~]# vim /etc/kubernetes/config
KUBE_MASTER="--master=http://192.168.199.206:8080"
//修改/etc/kubernetes/kubelet配置文件
[root@159 ~]# vim /etc/kubernetes/kubelet
KUBELET_HOSTNAME="--hostname-override=192.168.199.159"
KUBELET_API_SERVER="--api-servers=http://192.168.199.206:8080"
//运行服务
systemctl enable kubelet kube-proxy
systemctl start kubelet kube-proxy
在Master机器上管理Node节点
[root@206 ~]# kubectl get nodes
NAME STATUS AGE
192.168.199.159 Ready 32m
192.168.199.175 Ready 4m
快速部署Kubernetes集群管理的更多相关文章
- Kubernetes探索学习001--Centos7.6使用kubeadm快速部署Kubernetes集群
Centos7.6使用kubeadm快速部署kubernetes集群 为什么要使用kubeadm来部署kubernetes?因为kubeadm是kubernetes原生的部署工具,简单快捷方便,便于新 ...
- 使用Rancher的RKE快速部署Kubernetes集群
简要说明: 本文共涉及3台Ubuntu机器,1台RKE部署机器(192.168.3.161),2台Kubernetes集群机器(3.162和3.163). 先在Windows机器上,将rke_linu ...
- 利用kubeadm快速部署 kubernetes 集群
结合一下两个教程 https://www.cnblogs.com/along21/p/10303495.html 链接:https://pan.baidu.com/s/1O_pcywfso4VFOsF ...
- 二进制部署 Kubernetes 集群
二进制部署 Kubernetes 集群 提供的几种Kubernetes部署方式 minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernet ...
- 通过kubeadm快速部署K8S集群
kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 $ kubeadm i ...
- 教你在Kubernetes中快速部署ES集群
摘要:ES集群是进行大数据存储和分析,快速检索的利器,本文简述了ES的集群架构,并提供了在Kubernetes中快速部署ES集群的样例:对ES集群的监控运维工具进行了介绍,并提供了部分问题定位经验,最 ...
- 高可用Kubernetes集群-15. 部署Kubernetes集群统一日志管理
参考文档: Github:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsear ...
- 美团点评Kubernetes集群管理实践
背景 作为国内领先的生活服务平台,美团点评很多业务都具有非常显著.规律的”高峰“和”低谷“特征.尤其遇到节假日或促销活动,流量还会在短时间内出现爆发式的增长.这对集群中心的资源弹性和可用性有非常高的要 ...
- 菜鸟系列k8s——快速部署k8s集群
快速部署k8s集群 1. 安装Rancher Rancher是业界唯一完全开源的企业级容器管理平台,为企业用户提供在生产环境中落地使用容器所需的一切功能与组件. Rancher2.0基于Kuberne ...
随机推荐
- 【BZOJ4198】[Noi2015]荷马史诗 贪心+堆
[BZOJ4198][Noi2015]荷马史诗 Description 追逐影子的人,自己就是影子. ——荷马 Allison 最近迷上了文学.她喜欢在一个慵懒的午后,细细地品上一杯卡布奇诺,静静地阅 ...
- Django Web开发指南笔记
Django Web开发指南笔记 语句VS表达式 python代码由表达式和语句组成,由解释器负责执行. 主要区别:表达式是一个值,它的结果一定是一个python对象:如:12,1+2,int('12 ...
- Shell parameter expansion
使用sh写一些小型的脚本会使工作更加简单.有部分内容可能大家都比較陌生(至少我是这样). 就是变量有关的參数展开,以下就是一些简单的描写叙述和使用方法.能够使代码更加简洁 展开运算符 替换运算 ${v ...
- 【转】Java中的代码点与代码单元
转载自:http://blog.csdn.net/xujinsmile/article/details/8526387 最近看core java,之前一直不明白,看了不少帖子和博客,总算搞明白了. J ...
- es6技巧写法
为class绑定多个值 普通写法 :class="{a: true, b: true}" 其他 :class="['btn', 'btn2', {a: true, b: ...
- Android Studio第一次启动失败的解决办法
Android Studio Android 开发环境 由于GFW的问题,安装后第一次启动会在显示Fetching android sdk component information对话框后,提示错误 ...
- 《机器学习实战》学习笔记第三章 —— 决策树之ID3、C4.5算法
主要内容: 一.决策树模型 二.信息与熵 三.信息增益与ID3算法 四.信息增益比与C4.5算法 五.决策树的剪枝 一.决策树模型 1.所谓决策树,就是根据实例的特征对实例进行划分的树形结构.其中有两 ...
- POJ3294 Life Forms —— 后缀数组 最长公共子串
题目链接:https://vjudge.net/problem/POJ-3294 Life Forms Time Limit: 5000MS Memory Limit: 65536K Total ...
- IE不支持HTML5表单属性placeholder的解决办法
1. [代码][JavaScript]代码 (function ($) { $.fn.placeholder = function (options) { var defaults ...
- 关于for 循环里 线程执行顺序问题
最近在做项目时遇到了 这样的需求 要在一个for循环里执行下载的操作, 而且要等 下载完每个 再去接着走循环.上网查了一些 觉得说的不是很明确.现在把我用到的代码 贴上 希望可以帮到有此需求的开发者 ...