首页 > 其他分享 >kubernetes集群架构

kubernetes集群架构

时间:2022-11-02 20:04:21浏览次数:84  
标签:Node 架构 kubernetes 集群 master kubeadm 节点

  • Master: 管理(控制)节点,相当于公司的管理层
  • Master 节点主要由 API Server 、Controller-Manager 和Scheduler 三个组件,以及一个用于存储
  • 集群状态的 Etcd存储服务组成
  • Node (Worker): 工作worker节点,相当于公司具体完成工作的基层员工
  • Node节点则主要包含 Kubelet 、Kube Proxy 及容器运行时( 当前docker 仍是最为常用的实现)
  • 三个组件,它们承载运行各类应用容器

kubernetes集群架构_k8s

三个网络功能

     节点网络

  • 集群主机节点间的通信网络,并负责打通与集群外部端点间的通信 Pod网络
  • 为集群上的Pod对象提供的网络
  • 每个pod 从此网络动态获取地址,且每次重启pod后IP地址可能会变化
  • 需要经由CNI网络插件实现,例如Flannel、Calico、Cilium等 Service网络
  • 主要用于解决 pod 使用动态地址问题


3 Kubernetes 集群组件

  • kubernetes组件分成三种

Control Plane Components 控制平台组件: master主机

  • API Server
  • Controller-Manager
  • Scheduler
  • Etcd

Node Components 节点组件

  • Kubelet
  • Kube Proxy
  • Docker

Addons 附件

  • flannel
  • CoreDNS

kubernetes集群架构_docker_02

安装工具:​​​​https://www.cncf.io/certification/software-conformance/​

第三方平台和工具

kubernetes集群架构_docker_03


Kubernetes集群部署流程说明

  • 每个节点主机的初始环境准备
  • 准备代理服务,以便访问k8s.gcr.io,或根据部署过程提示的方法获取相应的Image
  • Kubernetes集群API访问入口的高可用和harbor(可选)
  • 在所有Master和Node节点都安装容器运行时,实际Kubernetes只使用其中的Containerd
  • 在所有Master和Node节点安装kubeadm 、kubelet、kubectl(在node节点可不安装)
  • 在第一个 master 节点运行 kubeadm init 初始化命令 ,并验证 master 节点状态
  • 在第一个 master 节点安装配置网络插件
  • 在其它master节点运行kubeadm join 命令加入到控制平面集群中(测试环境可选)
  • 在所有 node 节点使用 kubeadm join 命令加入集群 , 并验证 node 节点状态
  • 创建 pod 并启动容器测试访问 ,并测试网络通信

阿里云k8s镜像站地址

cat <<EOF > /etc/yum.repos.d/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
EOF
setenforce 0
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet


标签:Node,架构,kubernetes,集群,master,kubeadm,节点
From: https://blog.51cto.com/lovejxs/5817964

相关文章

  • apifox生成kubernetes-api文档
    前言:尽管多数时候,我们都是通过客户端库(如client-go),而非原生的API进行来操作kubernetes资源,但是对于学习API库,能够直接操作显然再好不过了。通过apifox,我们能够实现这个目的......
  • 玩转Redis集群
    玩转Ridis集群Reids集群模式主从模式哨兵模式(Sentinel)Cluster模式一、主从模式ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅠ、直接配置运行Redis1.1master(主库)#......
  • ES无法形成一个集群的问题
     elasticsearch.yml 配置文件要加空格     详细解释参考  https://blog.csdn.net/opp003/article/details/121500176 ......
  • docker搭建rabbitmq镜像集群
    目录一、搭建RabbitMq的运行环境1.通过search查询rabbitmq镜像2.通过pull拉取rabbitmq的官方最新镜像3.创建容器4.启动管理页面5.设置erlangcookie二、普通模式三......
  • Elastic集群监控工具的安装
    HEAD插件安装    elasticsearch-head是用于监控Elasticsearch状态的客户端插件,包括数据可视化、执行增删改查操作等安装步骤   1.先安装Nodejs   ......
  • 架构(domain层详解...)
    架构 理解:1、Repo数据源,Domain把数据源数据转换为界面使用的数据  domain层详解domain的概念,通常会分很多层,比如经典的三层架构,控制层、业务层、数据访问层(DA......
  • kubernetes的yml
    kubernetes的yml1:创建namespace文件po.yml内容如下apiVersion:v1kind:Namespacemetadata:name:po 命令:kubectlapply-fpo.yml 删除namespace......
  • 活动预告 | 2022 SACC 中国系统架构师大会
    10月27日下午14:30-15:30,OpenMLDBPMC、第四范式资深体系架构科学家张浩,将在2022SACC中国系统架构师大会中为大家带来议题为《开源机器学习数据库OpenMLDB:线上线下一......
  • 关于 NGINX Kubernetes Gateway,你需要知道的 5 件事
    原文作者:IlyaKrutovofF5原文链接:​​​关于NGINXKubernetesGateway,你需要知道的5件事​​转载来源:NGINX官方网站在过去的几年里,F5NGINX帮助您成功走完了Kuberne......
  • 记一次node节点无法加入K8S集群
    #问题现象:root@small-virtual-machine:~#kubeadmjoin10.0.0.133:6443--tokend2hyl5.5qt5fzjsdbxm2k5o   --discovery-token-ca-cert-hashsha256:d02674df33b......