前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >kubeadm搭建kubernetes集群之二:创建master节点

kubeadm搭建kubernetes集群之二:创建master节点

作者头像
程序员欣宸
发布2018-01-04 14:31:28
1.5K0
发布2018-01-04 14:31:28
举报
文章被收录于专栏:实战docker实战docker

在上一章《kubeadm搭建kubernetes集群之一:构建标准化镜像》中我们用VMware安装了一个CentOS7虚拟机,并且打算用这个虚拟机的镜像文件作为后续整个kubernetes的标准化镜像,现在我们就以这个镜像为基础,开始安装kubernetes集群吧;

前提条件

由于要用到谷歌的服务,所以要求您的网络环境可以访问国外网站,具体的方案就不在这里说了;

复制文件

如下图所示,cent7是我们上一章操作完成后对应的CentOS7的VMware文件夹,现在把这个文件夹复制三份一模一样的,再分别重命名为maste、node1、node2:

这里写图片描述
这里写图片描述

启动master

打开VMware软件,选中上面我们复制的master文件夹,选中里面的文件然后点击“打开”按钮,如下图:

这里写图片描述
这里写图片描述

如下图,点击红框中的“编辑虚拟机设置”按钮

这里写图片描述
这里写图片描述

如下图,在设置页面中将虚拟机名字改成”master”:

这里写图片描述
这里写图片描述

如下图,点击红框中的按钮启动master:

这里写图片描述
这里写图片描述

如下图,在弹出的窗口中选择“我已复制该虚拟机”:

这里写图片描述
这里写图片描述

修改hostname再重启master

等master启动完毕,进入系统,修改/etc/hostname文件,这里面只有一行内容“localhost.localdomain”,改成”master”;

修改完hostname文件后,重启master;

启动kubelet服务

执行以下命令设置kubelet自启动,然后再启动kubelet服务:

代码语言:javascript
复制
systemctl enable kubelet;systemctl start kubelet

初始化kubernetes的master服务

执行以下命令,初始化kubernetes的master服务,此时由于要去下载谷歌服务的镜像文件,所以请保证当前网络可以访问国外网站:

代码语言:javascript
复制
kubeadm init --pod-network-cidr=192.168.0.0/16 --apiserver-advertise-address=0.0.0.0

如果网络没有问题,就请耐心等待吧,大约二十分钟就会完成init过程,如下图:

这里写图片描述
这里写图片描述

注意上图中的最后一句kubeadm join –token 4fccd2.b0e0f8918bd95d3e 192.168.119.132:6443,在node加入的时候我们就是用这一句来将node加入到集群的;

为什么init操作要用这么长时间呢?执行docker images命令可以看到下载多了很多镜像,如下图:

这里写图片描述
这里写图片描述

新增了6个镜像;

创建kube目录,添加kubectl配置

执行以下命令,把配置信息复制到执行目录中:

代码语言:javascript
复制
mkdir -p $HOME/.kube;cp -i /etc/kubernetes/admin.conf $HOME/.kube/config;chown $(id -u):$(id -g) $HOME/.kube/config
添加Calico(网络组件)

执行以下命令,安装Calico

代码语言:javascript
复制
kubectl apply -f http://docs.projectcalico.org/v2.4/getting-started/kubernetes/installation/hosted/kubeadm/1.6/calico.yaml
检查是否启动成功

执行以下命令,看基础服务的pod都起来了没有:

代码语言:javascript
复制
kubectl get pods --all-namespaces

看到的pod信息如下图所示,红框中有一个pod并不是Running状态,而是ContainerCreating:

这里写图片描述
这里写图片描述

这时候请耐心等待几分钟,再看就会变成下面的状态:

这里写图片描述
这里写图片描述

用docker images命令看一下,发现多了几个镜像,如下图:

这里写图片描述
这里写图片描述

用kubectl get node命令查看当前的节点信息,能看见只有一个master节点,如下图:

这里写图片描述
这里写图片描述

至此,kubernetes集群的master节点就安装完成了,因为还没有加入node节点,所以此时还不能部署应用,等下一章我们将node节点加入后再部署应用试试;

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-12-03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前提条件
  • 复制文件
  • 启动master
  • 修改hostname再重启master
  • 启动kubelet服务
  • 初始化kubernetes的master服务
  • 创建kube目录,添加kubectl配置
    • 添加Calico(网络组件)
      • 检查是否启动成功
      相关产品与服务
      容器服务
      腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档