【云原生 · Kubernetes】apiserver高可用
2024-10-20 16:35:26
7.1 高可用选型
- ipvs+keepalived
- nginx+keepalived
- haprxoy+keepalived
- 每个节点kubelet 启动静态pod nginx haprxoy
7.2 构建nginx或者haproxy镜像
#构建
docker build -t imagename .
7.3 生成kubelet 静态启动pod yaml
mkdir -p /opt/k8s/work/yaml
cd /opt//k8s/work/yaml
cat >/opt/k8s/work/yaml/kube-ha-proxy.yaml <<EOF
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
component: kube-apiserver-ha-proxy
tier: control-plane
annotations:
prometheus.io/port: "8404"
prometheus.io/scrape: "true"
name: kube-apiserver-ha-proxy
namespace: kube-system
spec:
containers:
- args:
- "CP_HOSTS=192.168.2.175,192.168.2.176,192.168.2.177"
image: docker.io/juestnow/nginx-proxy:1.21.0
imagePullPolicy: IfNotPresent
name: kube-apiserver-ha-proxy
env:
- name: CPU_NUM
value: "4"
- name: BACKEND_PORT
value: "5443"
- name: HOST_PORT
value: "6443"
- name: CP_HOSTS
value: "192.168.2.175,192.168.2.176,192.168.2.177"
hostNetwork: true
priorityClassName: system-cluster-critical
status: {}
EOF
参数说明:
- CPU_NUM:nginx 使用cpu 核数
- BACKEND_PORT:后端kube-apiserver监听端口
- HOST_PORT:负载均衡器监听端口
- CP_HOSTS:kube-apiserver服务IP地址列表
- metrics端口:8404 prometheus 拉取数据使用
已有镜像:
- nginx 镜像:docker.io/juestnow/nginx-proxy:1.21.0
- haproxy镜像:docker.io/juestnow/haproxy-proxy:2.4.0
分发kube-ha-proxy.yaml 到所有节点
cd /opt/k8s/work/yaml/
# server 节点
scp kube-ha-proxy.yaml root@192.168.2.175:/apps/work/kubernetes/manifests/
scp kube-ha-proxy.yaml root@192.168.2.176:/apps/work/kubernetes/manifests/
scp kube-ha-proxy.yaml root@192.168.2.177:/apps/work/kubernetes/manifests/
# node 节点
scp kube-ha-proxy.yaml root@192.168.2.187:/apps/work/kubernetes/manifests/
scp kube-ha-proxy.yaml root@192.168.2.185:/apps/work/kubernetes/manifests/
scp kube-ha-proxy.yaml root@192.168.3.62:/apps/work/kubernetes/manifests/
scp kube-ha-proxy.yaml root@192.168.3.70:/apps/work/kubernetes/manifests/
期待下次的分享,别忘了三连支持博主呀~
我是 念舒_C.ying ,期待你的关注~
附专栏链接
【云原生 · Kubernetes】kubernetes v1.23.3 二进制部署(三)
【云原生 · Kubernetes】kubernetes v1.23.3 二进制部署(二)
【云原生 · Kubernetes】kubernetes v1.23.3 二进制部署(一)
【云原生 · Kubernetes】基础组件、Pod、Etcd的相关问题
【云原生 · Kubernetes】Jenkins+Gitlab+Rancher+Docker 实现自动构建镜像的 CI 平台(一)
【云原生 · Kubernetes】Kubernetes 编排部署GPMall(一)
【云原生 · Kubernetes】Kubernetes容器云平台部署与运维
【云原生 · Kubernetes】部署博客系统
【云原生 · Kubernetes】部署Kubernetes集群
【云原生 · Kubernetes】Kubernetes基础环境搭建
最新文章
- ASP.NET Core 中文文档 第四章 MVC(4.5)测试控制器逻辑
- 广州的小伙伴福利-由微软组织的在广州SQL Server线下活动
- java -日期处理
- java-集合2
- Third-person Camera Navigation
- [Android Pro] Android 官方推荐 : DialogFragment 创建对话框
- C/C++代码检视要点
- IOS开发UI篇-NavigationController的基本使用
- 浅析python 的import 模块(转)
- SNS团队Beta阶段第七次站立会议(2017.5.28)
- nginx基础
- vue数据更新UI不刷新显示解决方案
- c++入门之再话内存和引用
- python要点
- C++代码风格指南总结
- 获取日期Date
- Python 枚举 enum
- 学python的第二天
- centOS7中Mariadb数据库安装与基本管理
- java基础:关于java流与文件操作