前言:  网上搭建k8s的文章很多,但很多都无法按其说明在阿里云ecs服务器成功搭建,所以我就花了些时间基于自己成功搭建k8s的步骤写了个 操作手册,希望对想搭建k8s环境的盆友有所帮助。

声明:  由于本人对k8s不是很熟悉,大部分也是参考别人的文章而写,再次对同行的分享表示感谢.

1. 集群信息:

master01 :  39.100.137.XX (172.26.214.XX)

slave1:       39.98.155.XX (172.26.214.XX)

slave2:       39.98.154.XX (172.26.214.XX)

2. 设置主机名: master, slave均需配置

#master执行

>vi /etc/sysconfig/network

HOSTNAME=master01

#slave1执行

>vi /etc/sysconfig/network

HOSTNAME=master01

#slave2执行

>vi /etc/sysconfig/network

HOSTNAME=slave02

3. 设置主机名与ip的对应关系: master, slave均需配置

>cat /etc/hosts

172.26.214.XX  master01

172.26.214.XX  slave01

172.26.214.XX  slave02

4. 关闭swap:master, slave均需配置

重启机器后,如果是临时关闭,别忘记再次执行.

>swapoff -a     #临时关闭

>vim /etc/fstab  #永久关闭

将/dev/mapper/centos-swap swap swap default 0 0 这一行前面加个#号将其注释掉

5. 将桥接的IPv4流量传递到iptables : master, slave均需配置

>vim /etc/sysctl.conf

添加:

net.ipv4.ip_forward = 1

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

6. 载入sysctl.conf配置文件: master, slave均需执行

>sysctl -p

7. 添加阿里云YUM软件源 : master, slave均需配置

>cd /etc/yum.repos.d

>touch kubernetes.repo

>vi kubernetes.repo

添加:

[kubernetes]

name=Kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64

enabled=1

gpgcheck=1

repo_gpgcheck=1

gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg \

https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

8. 安装kubeadm,kubelet和kubectl :master, slave均需配置

yum install -y kubelet-1.15.1 kubeadm-1.15.1 kubectl-1.15.1

9. 如果已经提前安装docker, 则重启下docker

我本地在装k8s之前已经按照好docker.

注意: 每个节点都需提前安装好docker环境.

10. 启动kubelet : master, slave均需执行

#systemctl enable kubelet: 添加开机自启动

>systemctl enable kubelet && systemctl start kubelet

11. 初始化k8s master : 只在master执行

kubeadm init

--image-repository registry.aliyuncs.com/google_containers

--kubernetes-version v1.15.1

--pod-network-cidr=10.244.0.0/16

初始化参数解释:

--service-cidr: 指定serverice网络地址, 可以理解为一个负载均衡的虚拟vip

--apiserver-advertise-address: 指定Master api 组件ip地址,用于与其它节点通信.

--pod-network-cidr=10.244.0.0/16: k8s的网络插件所需要用到的配置信息,用来给node分配子网段, 这是flannel的配法.

12. 配置kubectl认证信息: 只在master执行

# 对于非root用户

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config

# 对于root用户

>vi /etc/profile

export KUBECONFIG=/etc/kubernetes/admin.conf

也可以直接放到~/.bash_profile

>echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile

13. 安装Pod网络插件(CNI): 只在master执行

要让 Kubernetes 集群能够工作,必须安装 Pod 网络,否则 Pod 之间无法通信

Kubernetes 支持多种网络方案,这里我使用 flannel

kube-flannel.yml 地址:

https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel.yml

将其内容保存至本地文件kube-flannel.yml,然后执行:

>kubectl apply -f ./kube-flannel.yml

14. Node节点配置, 将node 加入master :只在node节点执行.

kubeadm join <Master节点的IP和端口>

向集群添加新节点,执行在kubeadm init输出的kubeadm join命令:这个在master init初始化时会有提示,将示例中的ip更换为子节点的IP

#slave1执行:

>kubeadm join 172.26.214.XX:6443 --token amqw4o.i3eya5a1z5f6zuq7 \

--discovery-token-ca-cert-hash \

sha256:c45e01b12ea2e2954c8659328d972da5aa217e54c44c11c496b548b0df4c3095

#slave2执行:  和slave1执行命令相同.

注意:此命令执行后,需要一段时间才能, 在主机用kubectl get nodes命令查到新加入的node.

15. 开放端口

在阿里云后台开放: 6443 2379 2380 10250~10252, 31620 端口. 具体方法请自行研究如何设置阿里云访问端口.\

16. 验证安装结果

>kubectl get nodes

>kubectl get pods -n kube-system

17. 安装Dashboard

自行参考: https://blog.csdn.net/networken/article/details/85607593

18. 至此安装完毕,不喜者勿入.

基于阿里云ECS服务器的k8s集群环境搭建相关推荐

  1. 阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  2. 基于阿里云ECS+ 宝塔面板(bt) + WordPress 搭建个人主页(以独立博客为例)

    宝塔面板建站 – 一键快速部署WordPress博客程序 基于阿里云ECS+ 宝塔面板(bt) + WordPress 搭建个人主页(以独立博客为例) 以前总是说独立建站独立建站,但始终没有行动.这两 ...

  3. Docker+K8S 集群环境搭建及分布式应用部署

    互联网正在飞速发展,早已由最初的单体架构演变为如今的分布式架构,而分布式架构也为系统运维带来了挑战.架构在发展,系统运维技术也在不断升级.而伴随着系统运维的是如今炒的火热的容器技术,Docker 就是 ...

  4. 云计算学习笔记:基于阿里云ECS服务器搭建云上博客WordPress教程(详细图文版)

    今天使用阿里云免费提供的一台基础环境的 CentOS 6.4 64 位的 ECS(云服务器)实例,完成了安装和部署LAMP 环境并安装 WordPress博客,下面记录下实验过程,和一些小细节上的问题 ...

  5. 基于CentOs下的Hadoop完全分布式集群环境搭建

    Hadoop配置 一.准备工作 1.下载虚拟机,安装centos 在VM中新建4台虚拟机(内存建议2-4G) VMware14下载 提取码:e6dn centos6.8和centos7下载 提取码:4 ...

  6. 总结 Underlay 和 Overlay 网络,在k8s集群实现underlay网络,网络组件flannel vxlan/ calico IPIP模式的网络通信流程,基于二进制实现高可用的K8S集群

    1.总结Underlay和Overlay网络的的区别及优缺点 Overlay网络:  Overlay 叫叠加网络也叫覆盖网络,指的是在物理网络的 基础之上叠加实现新的虚拟网络,即可使网络的中的容器可 ...

  7. docker-ce-v18.09.0+kubernetes-v1.15.1(k8s)集群环境+dashboard-v1.10.1搭建完整教程

    一.k8s简介 什么是kubernetes 首先,他是一个全新的基于容器技术的分布式架构领先方案.Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg).在Docke ...

  8. 基于阿里云ECS,Ubuntu系统搭建离线下载服务器

    基于阿里云ECS,Ubuntu系统搭建离线下载服务器 很开心能参加本次阿里云训练营,使用的ECS是阿里云,ubuntu系统 1.了解什么是CCAA CCAA 是服务器离线下载解决⽅案包,组件包含了Ar ...

  9. 阿里云ECS服务器怎么安装宝塔面板?

    首先,宝塔Linux面板安装前的环境要求: 1.操作系统:全新系统(支持CentOS.Ubuntu.Debian.Fedora.Deepin) 2.确保是纯净的操作系统,没有安装过其它环境带的Apac ...

最新文章

  1. [New Portal]Windows Azure Virtual Machine (5) 配置VM的Endpoints
  2. Rocchio算法—文本分类
  3. 记ubuntu16.04的一个网络问题
  4. mixin模式 python_总结了 90 条写 Python 程序的建议
  5. python 爬虫爬取小说信息
  6. java SWT Browser实现浏览器功能并运行JavaScript代码
  7. zookeeper zoo.cfg配置文件
  8. WordPress插入图片无法居中的解决方法
  9. 微软认证学习资料大集合(软件+资料)
  10. 怎么测试本地网页在不同分辨率下电脑显示效果_汇总一波百万高清壁纸站,8K分辨率的都有...
  11. linux开机启动服务,Linux开机启动服务
  12. uni-app 基于 Promise 的 request 请求封装
  13. spring源码之下载及构建
  14. 笔记本出现此windows无线服务器,笔记本Windows7提示Windows无法配置此无线连接如何解决?...
  15. hp打印机没有右键扫描_win7右键点击打印机图标没有扫描选项怎么解决
  16. Markdown:VS Code中预览markdown的快捷键和markdown的简单语法
  17. 微信内置浏览器无法下载文件应用的解决方案
  18. 超声波模块收发电路原理图
  19. Android桌面小插件——Widget
  20. PhoneApp的启动过程

热门文章

  1. 交互细节分析——注册登录
  2. 在运行vue项目时发生这种 Cannot find module ‘xxxxx‘ ,解决办法?
  3. listView divider marginLeft marginRight
  4. Oracle入门基础(十一)一一PL/SQL基本语法
  5. Cornerstone永久试用
  6. html的radio源代码,htmlradio-radio,html
  7. scDML:单细胞转录组数据的批次对齐
  8. 江苏中原建设集团有限公司10KV正式用电工程电能管理系统的设计与应用
  9. 儿童背包亚马逊美国站CPC认证ASTMF963
  10. 搜狗地图api android,搜狗地图API - Sogou Maps Service API