欢迎光临散文网 会员登陆 & 注册

Kubernetes(k8s)集群管理实战|Kubernetes环境搭建部署

2021-01-21 10:09 作者:动力节点小王本王  | 我要投稿

本篇文章主要核心内容:

Kubernetes整体架构

Kubernetes环境搭建方式

Kubeadm部署Kubernetes

Kubernetes部署环境要求

Kubernetes部署环境准备

Kubernetes整体架构

Master

k8s集群控制节点,对集群进行调度管理,接受集群外用户去集群操作请求;

Master Node 由 API Server、Scheduler、ClusterState Store(ETCD 数据库)和 Controller MangerServer 所组成;

Nodes

集群工作节点,运行用户业务应用容器;

Nodes节点也叫Worker Node,包含kubelet、kube proxy 和 Pod(Container Runtime);

Kubernetes环境搭建方式

部署 Kubernetes 环境(集群)主要有多种方式:

(1)minikube

minikube可以在本地运行Kubernetes的工具,minikube可以在个人计算机(包括Windows,macOS和Linux PC)上运行一个单节点Kubernetes集群,以便您可以试用Kubernetes或进行日常开发工作;

https://kubernetes.io/docs/tutorials/hello-minikube/ 

(2)kind

Kind和minikube类似的工具,让你在本地计算机上运行Kubernetes,此工具需要安装并配置Docker;

https://kind.sigs.k8s.io/ 

(3)kubeadm

Kubeadm是一个K8s部署工具,提供kubeadm init 和 kubeadm join两个操作命令,可以快速部署一个Kubernetes集群;

官方地址:

https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/ 

https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/ 

(4)二进制包

从Github下载发行版的二进制包,手动部署安装每个组件,组成Kubernetes集群,步骤比较繁琐,但是能让你对各个组件有更清晰的认识;

(5)yum安装

通过yum安装Kubernetes的每个组件,组成Kubernetes集群,不过yum源里面的k8s版本已经比较老了,所以这种方式用得也比较少了;

(6)第三方工具

有一些大神封装了一些工具,利用这些工具进行k8s环境的安装;

(7)花钱购买

直接购买类似阿里云这样的公有云平台k8s,一键搞定;

Kubeadm部署Kubernetes

kubeadm是官方社区推出的一个用于快速部署 kubernetes 集群的工具,这个工具能通过两条指令完成一个kubernetes集群的部署;

1、创建一个Master节点:

kubeadm init

2、将Node节点加入到Master集群中:

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

Kubernetes部署环境要求

(1)一台或多台机器,操作系统CentOS 7.x-86_x64

(2)硬件配置:内存2GB或2G+,CPU 2核或CPU 2核+;

(3)集群内各个机器之间能相互通信;

(4)集群内各个机器可以访问外网,需要拉取镜像;

(5)禁止swap分区;

如果环境不满足要求,会报错,比如:

Kubernetes部署环境准备

# 关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

# 关闭selinux

sed -i 's/enforcing/disabled/' /etc/selinux/config  #永久

setenforce 0  #临时

# 关闭swap(k8s禁止虚拟内存以提高性能)

sed -ri 's/.*swap.*/#&/' /etc/fstab #永久

swapoff -a #临时

# 在master添加hosts

cat >> /etc/hosts << EOF

192.168.172.134 k8smaster

192.168.172.135 k8snode

EOF

# 设置网桥参数

cat > /etc/sysctl.d/k8s.conf << EOF

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

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

EOF

sysctl --system  #生效

# 时间同步

yum install ntpdate -y

ntpdate time.windows.com

Kubernetes,点击以下实战教程,带你快速入门Kubernetes!


Kubernetes(k8s)集群管理实战|Kubernetes环境搭建部署的评论 (共 条)

分享到微博请遵守国家法律