范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

k8s集群详细安装实录

  前言
  k8s全称kubernetes,是一个开源的容器编排引擎,用来对容器化应用进行自动化部署、 扩缩和管理。该项目托管在 CNCF。目前k8s已经成为发展最快、市场占有率最高的容器编排引擎产品,越来越多企业正在拥抱k8s,推动微服务、容器等热门技术的普及和落地。
  对于 k8s这项平台级技术,覆盖的技术范围非常广,包括了计算、网络、存储、高可用、监控、日志管理等多个方面。越是门槛高的知识,就越需要搭建一个最小可用系统,先把玩起来,快速了解基本概念、功能和使用场景,建立起对学习对象的感性认识。如果直接上来就学习理论知识和概念,很容易从入门到放弃。
  0. 目录
  1. k8s基础知识
  2. 部署环境
  3. CentOS初始化配置
  4. Master节点配置
  5. Worker节点配置
  6. 使用k8s部署应用
  7. 后记
  8. 参考文献
  1. k8s基础知识
  k8s集群是主从分布式架构,由Master Node和Worker Node组成,节点上运行着k8s组件服务。
  Master 是 Cluster 的大脑,主要职责是调度,运行的 k8s 组件有kube-apiserver、kube-scheduler、kube-controller-manager、etcd 和 Pod 网络(例如 flannel)。可以同时运行多个 Master实现高可用。 API Server(kube-apiserver):提供 HTTP/HTTPS RESTful API,实现认证、授权、访问控制、API注册和发现等功能,各种客户端工具(CLI 或 UI)以及 k8s 其他组件可以通过它管理 Cluster 资源。 Scheduler(kube-scheduler):负责决定将 Pod 放在哪个 Node 上运行。Scheduler 在调度时会充分考虑 Cluster 的拓扑结构、当前各个节点的负载以及应用对高可用、性能、数据亲和性的需求。 Controller Manager(kube-controller-manager):负责管理 Cluster 各种资源,保证资源处于预期的状态。Controller Manager 由多种 controller 组成,包括 replication controller、endpoints controller、namespace controller、serviceaccounts controller 等。不同的 controller 管理不同的资源。例如 replication controller 管理 Deployment、StatefulSet、DaemonSet 的生命周期,namespace controller 管理 Namespace 资源。 etcd :负责保存 Cluster 的配置信息和各种资源的状态信息。当数据发生变化时,etcd 会快速地通知 k8s相关组件。 Pod 网络:Pod 是 k8s的最小工作单元。每个 Pod 包含一个或多个容器。Pod 中的容器会作为一个整体被 Master 调度到一个 Worker上运行。Pod 要能够相互通信,Cluster 必须部署 Pod 网络,flannel 是其中一个可选方案。
  Worker是 Pod 运行的地方,k8s 支持 Docker、rkt 等容器 Runtime。Worker上运行的组件有 kubelet、kube-proxy 和 Pod 网络。Worker 由 Master 管理,负责监控并向Master汇报容器的状态,并根据 Master 的要求管理容器的生命周期。 kubelet:是 Worker的 agent,当 Scheduler 确定在某个 Worker上运行 Pod 后,会将 Pod 的具体配置信息(image、volume 等)发送给该节点的 kubelet,kubelet 根据这些信息创建和运行容器,并向 Master 报告运行状态。 kube-proxy:service 在逻辑上代表了后端的多个 Pod,外界通过 service 访问 Pod。service 接收到的请求是如何转发到 Pod 的呢?这就是 kube-proxy 要完成的工作。每个 Worker都会运行 kube-proxy 服务,负责将访问 service 的 TCP/UPD 数据流转发到后端的容器。如果有多个副本,kube-proxy 会实现负载均衡。
  2. 部署环境
  本次实验将搭建一个包含1个Master 节点 + 2个Worker 节点的k8s集群环境。
  操作系统版本:CentOS 7.9
  k8s版本:1.20.15
  docker版本:19.3.5
  主机名
  ip
  k8s-master
  10.10.10.128
  k8s-worker1
  10.10.10.131
  k8s-worker2
  10.10.10.132
  3. CentOS初始化配置
  TIPS:本次实验准备了3台CentOS 虚拟机,为了减少重复劳动,可以先初始化配置好一台虚拟机,再克隆出另外两台虚拟机(记得要修改IP)。
  (1)更新yum源(非必须) yum update -y
  (2)配置网络 cd /etc/sysconfig/network-scripts/  # 进入网络配置目录 vim ifcfg-ens36      # 编辑对应网卡的配置文件,我的环境是ens36 # 修改网卡配置文件内容如下所示 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static  # BOOTPROTO的值由dhcp改为static,设为静态IP DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens36 DEVICE=ens36 ONBOOT=yes          # ONBOOT的值由no改为yes IPADDR=10.10.10.128 NETMASK=255.255.255.0 GATEWAY=10.10.10.2    # 设置网关,就可以过NAT形式上外网 DNS1=10.10.10.2 ZONE=public PREFIX=24   service network restart # 重启网络服务使新配置生效
  (3)修改主机名 hostnamectl set-hostname k8s-master # 修改主机名,重新打开终端即可看到主机名已修改成功   # 采取类似方法修改两台worker节点的主机名 hostnamectl set-hostname k8s-worker1  # 修改10.10.10.131的主机名 hostnamectl set-hostname k8s-worker2  # 修改10.10.10.132的主机名
  (4)配置hosts vim /etc/hosts # 添加以下3行 10.10.10.128 k8s-master 10.10.10.131 k8s-worker1 10.10.10.132 k8s-worker2
  (5)关闭主机防火墙 systemctl stop firewalld  # 关闭防火墙 systemctl disable firewalld # 禁用开机自启动
  (6)关闭selinux [root@localhost ~]# getenforce   # 查看selinux状态 Enforcing                      # selinux未关闭 [root@localhost ~]# setenforce 0  # 临时关闭selinux [root@localhost ~]# getenforce   # 查看selinux状态 Permissive                     # selinux已关闭   #永久关闭selinux的方法 vim /etc/sysconfig/selinux 将SELINUX=enforcing 替换为SELINUX=disabled,需重启主机
  (7)关闭swap # 临时关闭 swapoff -a        # 永久关闭swap vim /etc/fstab 注释掉最后一行关于swap的配置
  (8)将桥接的IPv4流量传递到iptables的链 touch /etc/sysctl.d/k8s.conf  # k8s.conf文件原来不存在,需要新建 vim /etc/sysctl.d/k8s.conf # 添加下面4行 net.bridge.bridge-nf-call-ip6tables=1 net.bridge.bridge-nf-call-iptables=1 net.ipv4.ip_forward=1 vm.swappiness=0   sysctl --system               # 加载系统参数,使配置生效
  (9)安装docker rpm -qa | grep docker  # 查看是否已安装docker组件 yum remove docker docker-common docker-client # 如已安装,则卸载旧版docker相关组件 yum install -y yum-utils    #安装yum-utils,提供yum-config-manager命令               yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  #添加阿里云的yum源,便于快速下载docker yum list docker-ce --showduplicates | sort -r   #查看可获取的docker版本 yum install -y docker-ce-19.03.5 docker-ce-cli-19.03.5 containerd.io # 安装指定版本的docker,这里选择19.03.5   systemctl enable docker     # 设置开机自启动 systemctl start docker       # 启动docker服务 systemctl status docker      # 查看docker服务状态
  (10)安装k8s
  添加阿里云yum源,便于快速下载k8s cat 
北京最值得去的地方之凤凰中心终于去了一直想去的凤凰中心,真是惊艳,这里是著名的凤凰卫视所在地,总建筑面积6。5万平方米,建筑高度55米。除了办公和演播制作功能之外,开放了部分空间可以体验参观。凤凰中心本着绿色人死后去了什么地方,人死后仍会有意识,大脑会继续运行?有这样的一句话,人终究有一死,无论你是贫穷富贵,都无法摆脱这个结局,的确也是这样的。人的生命与地球其他生命一样,有生就有死,这样的变化从未改变过。死亡意味着生命终止,停止生存,是生国际空间站补上最后一个漏气点此前据俄罗斯今日俄罗斯(RT)电视台网站报道,2021年11月26日,俄罗斯联邦航天局公布了2018年8月联盟MS09飞船轨道舱漏气事件的调查报告,认为飞船上的钻孔是美国宇航员塞丽恒大足球时代彻底落幕,广州队迎来新主人,八冠王辉煌能否继续亲情提示亲爱的读者,如何能每天能读到这样的体育资讯呢?点击右上角的关注按钮即可,您的关注将是我创作的最大动力!回顾过去的一年,对于中国足球而言无疑是充满跌宕起伏的,首先国足在世预赛云南生物多样性数字化百科图谱紫花雪山报春传说有一种报春花夏天才开,没错就是我来源昆明日报掌上春城紫花雪山报春Primulachionantha紫花雪山报春,隶属于被子植物,报春花科,报春花属。多生长于海拔30004400米的高山草地草甸流石滩和杜鹃丛中,国华为P50Pocket云南首发品鉴!60春城先锋女性齐聚掌上春城讯2021年12月23日,她享先锋女性时尚派对暨HUAWEIP50Pocket品鉴会在昆明恒隆广场成功举行,春城时尚达人齐聚,畅玩时尚派对!色彩美学追求极致的HUAWEIP百余家景区将免票或优惠河南省旅游切换至冬游模式白雪覆盖老君山金顶潘跃运摄影洛阳白云山雪景景区供图银基冰雪世界景区供图大宋东京梦华大型实景演出景区供图老君山冬景高均海摄影开栏的话2021年即将进入尾声,回首过去,注定是不平凡的一河南百余家景区有免票或优惠活动来源河南日报网河南百余家景区有免票或优惠活动河南日报客户端记者刘春香实习生崔璨12月27日,行走河南读懂中国河南人游河南推广活动在只有河南戏剧幻城启动。仪式上发布了省内130多家景云南麻粟坡县地雷村,环境优美民风淳朴,真有地雷不要乱跑比较喜欢三线建设那段历史,拍摄过视频,也写过不少文章,反响还不错,引起热议,其中不少友友认为,三线厂的用途不是很大,有资源浪费的嫌疑,这里不做评价,提倡百家争鸣,百花齐放嘛,不过,云南42岁残疾妈妈,欠巨款做试管婴儿,女儿出生后她追悔莫及众所周知,女性是有最佳生育年龄的,一般是在23岁至30岁之间,早几年和晚几年都会对母亲和胎儿产生很大的影响。若早于20岁怀孕,胎儿与尚在发育的母亲抢夺营养,最后两败俱伤,两者营养不云南黑井古镇摄影游记(No。3)进入冬天,连四季如春的滇中地区也开始冷了起来。最要命的是它并不是一直冷,或者一直暖,而是忽冷忽热的,并没有什么规律可言,把人的情绪都搞乱了。所以,黑井游记的第三篇就一直耽搁了下来。
华为商城新上三款智选手机之前线下因误导消费者惹争议目前华为商城上架三款WIKO5GHinova105GHinova10Pro5G三款智选手机!价格如何先不说,看看配置!WIKO5G6。78英寸的LCD屏,FHD23881080像素南宁性暗示钥匙扣事件,绝不能一笑而过快点过来这么粗鲁,温柔点跪求二奶妞,给大爷笑一个春心荡漾如果有一天我变成色狼,请别忘记我纯真过当这些词语出现在学校周边的小卖部,出现在那些卖给孩子们,用在钥匙扣各种包包玩具等包装上长妇幼的儿科门诊继续开启全年无休模式2月起,长宁区妇幼保健院儿科门诊恢复常态化。该门诊位于愚园路院区门诊1号楼一楼,将继续开启全年无休模式,致力于守护周边012岁儿童的健康。近日一天上午10点,记者来到长妇幼儿科门诊分享暴喵加速器的计时模式,你可能不知道的坑!跟很多普通的上班族一样,自从走出校园以后,平时能玩游戏的时间是越来越少。这两天趁着元宵节放假,我打开许久不开的电脑,登录暴喵加速器,却突然发现自己的游戏时间莫名其妙被清零了!一查才1000亿枚芯片!台积电宣布,中芯国际赌输了?文文学科技社在老美野蛮蛮横不讲道理的制裁下,我国的芯片发展受到了极大的阻力。但是我们并不是笼中鸟瓮中鳖,我们已经开始自立自强的道路,试图在芯片领域闯出我们自己的一片天。不过老美这一杀入学习平板红海学而思的围城内外双减之后,教材之外,学而思也选择了硬件作为突破围城的武器,尽管来得有些晚。继学拍拍之后,学而思的又一款教育智能硬件产品xPad智能学习机面世。截至2月8日,抖音平台数据显示该产品已新能源车对普通老百姓来讲就是骗局新能源汽车新能源车该有的样子你还会买新能源吗?近年来,新能源车火爆程度不亚于当年的智能手机,然而,我觉得当前新能源车对普通老百姓来讲就是骗局,就跟现在的A股一样,专家说的头头是道,胡锡进要失业了?网友用ChatGPT模仿胡编体写作,笑疯了再平凡,也可以有自己的观点!点击右上方关注,金银和您一起每天轻松笑看各类热点资讯。对于国外科技圈来说,这段时间最火的当然是ChatGP。这款上知天文下知地理的人工智能聊天机器人,于高颜值NothingPhone2登场,性能体验更高级,有望成为旗舰杀手?大家还记得去年去年发布的NothingPhone(1)吗?凭借这独特的外观设计受到了很多消费者的喜爱。但是,随着深度使用之后,不少消费者表示这代产品存在着不少的缺陷,例如在处理器上2023年最佳iPad笔记和个人知识管理应用程序(笔记APP)科技之巅十分钟阅读学习Notes方法感谢分享笔记应用程序18款最佳iPad笔记应用正在寻找适用于iPad的最佳笔记应用程序?这是2023年最佳iPad笔记应用程序的综述。正在寻找适恭喜30完胜,8000万先生大爆发,尤文掀翻绊脚石,终结3轮不胜赛前排名第16的萨勒尼塔纳队迎来了意甲第21轮的较量,萨勒尼塔纳队此役坐镇自己的主场PK赛前排名第13的尤文图斯队。本赛季双方首回合的较量,萨勒尼塔纳队做客逼平了尤文,最近4轮联赛