嘉兴网站建设公司哪家好,抽奖页面设计,关于地产设计网站,o2o平台排名1、架构及服务
Kubernetes作为容器集群系统#xff0c;通过健康检查重启策略实现了Pod故障自我修复能力#xff0c;通过调度算法实现将Pod分布式部署#xff0c;并保持预期副本数#xff0c;根据Node失效状态自动在其他Node拉起Pod#xff0c;实现了应用层的高可用性。
…1、架构及服务
Kubernetes作为容器集群系统通过健康检查重启策略实现了Pod故障自我修复能力通过调度算法实现将Pod分布式部署并保持预期副本数根据Node失效状态自动在其他Node拉起Pod实现了应用层的高可用性。
针对Kubernetes集群高可用性还应包含以下两个层面的考虑Etcd数据库的高可用性和Kubernetes Master组件的高可用性。
Master节点扮演着总控中心的角色通过不断与工作节点上的Kubelet进行通信来维护整个集群的健康工作状态。如果Master节点故障将无法使用kubectl工具或者API做任何集群管理。
Master节点主要有三个服务kube-apiserver、kube-controller-mansger和kube-scheduler其中kube-controller-mansger和kube-scheduler组件自身通过选择机制已经实现了高可用所以Master高可用主要针对kube-apiserver组件而该组件是以HTTP API提供服务因此对他高可用与Web服务器类似增加负载均衡器对其负载均衡即可并且可水平扩容。
2、组件说明
APIserver:所有服务访问统一入口 controllerManager维护副本的期望数目 scheduler负责介绍任务选择合适节点接受任务 ETCD键值对数据库存储K8S集群重要信息持久化 Kubectl :实现容器生命周期管理 Kubectl proxy:写入规则至ipvs Coredns可以为集群中的SVC创建一个A记录 DashboardB/S结构的访问体系 Ingress:官方实现的是4层代理ingress实现的是7层代理域名主机名 Federation跨K8S集群调用
3、IP地址规划
高可用K8S集群为避免脑裂一般采用如三、五、七等奇数个mater节点首先要有一个 master 节点可以先将单一节点集群构建完毕然后再让其他服务器加入组成三个master 节点高可用然后再以工作节点 Node 加入。此文档为全新构建。
地址主机名内存CPU角色10.208.1.190————vip10.208.1.191k8s-master-012C 4GMaster0110.208.1.192k8s-master-022C 4GMaster0210.208.1.195k8s-master-032C 4GMaster0310.208.1.196k8s-node-012c 4GNode0110.208.1.198k8s-node-022c 4GNode02
# 都开通直通上网方便拉去镜像。4、操作系统内核版本
#cat /etc/redhat-release
CentOS Stream release 85、修改hosts【所有节点】
必须配置否则结点与master无法通讯
#cat /etc/hosts EOF
10.208.1.190 master.k8s.io k8s-vip
EOF6、修改hostname【各节点依次操作】
修改 10.208.1.191 服务器
#hostnamectl set-hostname k8s-master-01修改 10.208.1.192 服务器
#hostnamectl set-hostname k8s-master-02修改 10.208.1.195 服务器
#hostnamectl set-hostname k8s-master-03修改 10.208.1.196 服务器
#hostnamectl set-hostname k8s-node-01修改 10.208.1.198 服务器
#hostnamectl set-hostname k8s-node-027、关闭防火墙和selinux【所有节点】
systemctl stop firewalld systemctl disable firewalld
sed -i s/^SELINUXenforcing$/SELINUXdisabled/ /etc/selinux/config setenforce 0#注意以上语句的空格复制到记事本粘贴/etc前面有空格
8、关闭swap【所有节点】【必须】
swapoff -a
sed -i / swap / s/^\(.*\)$/#\1/g /etc/fstab9、设置系统【所有节点】
1针对于linux7以上设置允许路由转发不对bridge的数据进行处理
创建 /etc/sysctl.d/k8s.conf 文件
vim /etc/sysctl.d/k8s.conf加入下面内容:
net.ipv4.ip_forward 1
net.bridge.bridge-nf-call-ip6tables 1
net.bridge.bridge-nf-call-iptables 12挂载br_nebrtfilter
modprobe br_netfilter持久化
echo br_netfilter /etc/modules-load.d/modules.conf3生效配置文件
sysctl -p /etc/sysctl.d/k8s.confsysctl命令用于运行时配置内核参数 查看是否生成相关文件
ls /proc/sys/net/bridge4资源配置文件
/etc/security/limits.conf 是 Linux 资源使用配置文件用来限制用户对系统资源的使用,末尾加入
echo * soft nofile 65536 /etc/security/limits.conf
echo * hard nofile 65536 /etc/security/limits.conf
echo * soft nproc 65536 /etc/security/limits.conf
echo * hard nproc 65536 /etc/security/limits.conf
echo * soft memlock unlimited /etc/security/limits.conf
echo * hard memlock unlimited /etc/security/limits.conf