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

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 
这是宝宝大脑发育快的阶段,把握住黄金期,宝宝更聪明文余明仁二月一直是无数妈妈后怕的一个阶段,因为不少妈妈都说这是宝宝二月闹的阶段,在二月这个阶段宝宝的发育速度其实是很快的,之所以宝宝会出现二月闹也是跟宝宝发育速度快有关系,宝宝发育上线就夺飙升榜第一,王李丹妮演武则天,除了身材火辣毫无看点近两年悬疑题材无论是在电视剧市场,还是在电影市场都备受好评,当下热播网剧显微镜下的大明之丝绢案把悬疑看点放置在了离奇的丝绢税上,以算术与案情相结合,情节跌宕曲折,看得人越来越上头。因为一部上海滩十三太保,刘德华和傅声产生了怎样的缘分?十三太保,一夫当道。上海滩十三太保1984年4月30日,动作电影上海滩十三太保在香港上映,由张彻执导,狄龙姜大卫陈观泰李修贤王羽王青梁家仁程天赐戚冠军常枫张泰伦江生鹿峰等著名动作明贾冰你不是黑社会我都不信了电视剧狂飙中贾冰所扮演的徐江,不止说是入木三分,真的可谓是活灵活现生动自然呀,这哪里是贾冰在扮演徐江,这就是徐江本色出演呀。可能因为贾冰之前无论是小品还是电影电视剧都是在做喜剧,所嘎子谢孟伟现身回应手机风波!信誓旦旦很自信,发维权动态被嘲讽近日,嘎子谢孟伟再次登上热搜,原因就是因为他卖的手机发生了问题,被指出疑似虚假售卖,价格不实,引发了网友们的热议,这才让他因为这些负面新闻登上了热搜,面对这次的手机风波,谢孟伟本人听说你喜欢我董苗苗回国,宁至谦再次动摇,阮流筝转投薛纬霖听说你喜欢我是由彭冠英王楚然啜妮刘芮麟领衔主演,毛林林杜雨宸李子峰田雷朱俊麟李洪涛等特别出演的一部都市情感剧。随着剧情的发展,很多观众都被阮流筝这个角色所打动。再加上王楚然清新脱俗突发!陈凯歌陈红儿子陈飞宇大瓜曝光,知名狗仔曝其与网红私密照娱乐圈顶流恋情瓜,揭晓了!2月13日,距离情人节就剩十几个小时了,当很多有情人都在筹备明日的惊喜时,娱乐圈一位顶流男星却遭遇了惊吓。这位男星就是陈凯歌和陈红的儿子陈飞宇。万万没想到宰相刘罗锅26年,9位主演有人遭封杀,有人离世,物是人非天地之间有杆秤,那秤砣是老百姓,秤杆子挑江山,伊啊伊儿哟哎你就是定盘的星熟悉的旋律来自于1996年开播的宰相刘罗锅,此剧一经开播备受观众的喜爱,主题曲朗朗上口唱遍大街小巷。有别于一如果不采取避孕,女性一生能生多少个孩子?目前有宝妈生了69个邻居家的老奶奶,她有8个子女,每次逢年过节的时候,家里就会有一大家子人,热闹非凡。让人很是羡慕,当说起老奶奶怎么那么能生时,老奶奶却笑着说,他一姐妹生了13个,生8个的多了去了,心要毁掉一个孩子请给他一部手机不知从何时起,手机已进入人们的日常生活。大家开会在看手机,上课在看手机,约会在看手机,聚餐也在看手机,回到家还在看手机。这是大人们的日常写照。作为家长还是要让孩子远离手机,否则可以孩子不见了,应该怎么办?头条创作挑战赛中午,校长吃完饭,回办公室时,看到两个孩子从教学楼方向往北走了。一会儿,两个孩子不见了。校长很着急,不知两个孩子去哪儿了?看看时间,1200点多了,此刻孩子应该吃完饭
山东将先行一步,扛起重大战略使命日前,国务院印发关于支持山东深化新旧动能转换推动绿色低碳高质量发展的意见(以下简称意见),支持山东在深化新旧动能转换基础上,着力探索转型发展之路,进一步增强区域发展活力,努力建设绿曹魏军职第二高的名将为啥不战而降?(跟一个厚道老板的重要性)官渡大战似乎是于禁武将生涯的巅峰,之后的征战记录就乏善可陈了。1败于刘备官渡大战后,刘表感受到了北方强大的压力,于是派刘备北伐袭击许都,一直打到了叶县。离许县已是相当近!曹操派出夏刘备手下武功最强的五虎上将,谁最适合镇守荆州,答案很意外蜀汉的衰败,是从关羽大意失荆州开始的。220年,关羽丢失荆州后,让蜀汉失去了三分之一的土地和人口,实力大削。次年,刘备为夺回荆州和给关羽报仇,又错误地率蜀汉举国之兵伐吴,导致孙刘两赊刀人现身湖北荆州,留下4年后的预言匆匆离去,可信度有多少?我们常说活在当下,因为我们对于将要发生的事情,是完全不知道的。但是在古代不同,在那个人们认知并不是很全面的时期,总有那么一群人号称自己可以预知未来将要发生的事情,好让人有所准备。其痛心!拳击史上头号重炮手去世,享年78岁,曾与阿里大战15回合9月2日,据多家国外拳击媒体证实,史拳击历史上头号重炮手沙弗尔斯在过完了78岁生日后的第二天因病去世,这也意味着上世纪70年代的重量级名宿又离开了一位,这位前辈的离世,也让拳击界陷来自北京的十大体育名将体育实力而论,作为中国首都的北京可以说是不容小觑。实际上,北京在许多体育项目上的发展时间节点亦是相当之早,向来历代体育好手如云,体育可以说是全方位发展。提到来自北京的体育名将,不知球形闪电何以诡异球形闪电何以诡异球形闪电一直都保持着它那神秘而诡异的面孔一个闪亮的柚子大小的蓝色火球不知从什么地方冒了出来,有时钻入居室,有时会出现在飞机周围,甚至还会从飞机那封闭的玻璃窗户钻入!哥德尔一个自由而无用的灵魂书评9。11知识分子TheIntellectual库尔特哥德尔(19061978)的理论为计算机科学和人工智能的发展奠定了基础。图为哥德尔在普林斯顿高能研究院的数学自然科学图书馆图源i奥运最佳自由人确定退役!新工作是大学老师,郎平一手培养了她金秋九月,大一新生经历暑假的洗礼,迎来了期盼已久的大学生涯,福建工程学院的新生也迎来了开学典礼。作为福建的本科院校,福建工程学院之所以在今年的开学季备受热爱排球的球迷关注,主要原因小厨房也能实现美食蒸烤自由,凯度Q71D台式蒸烤箱入手使用体验大家好呀,我是爱咖啡爱生活爱分享的兔牙先生。坚持为大家分享好物体验,关注点赞收藏三连,你们的支持将是我坚持创作的最大动力,比芯儿一直碍于家里厨房空间不是很大,所以看到大家各种料理机雷军又火了!自曝37岁财务自由,称小米造车是被逼出来的决定,如果你不干,你就落伍了雷军又凡尔赛了。在央视网云顶对话节目中,他这样说我大概是在37岁就带领金山已经完成了IPO,也财务自由了,也半退休了三四年时间。当然大家更关心的,就是小米造车。此时此刻,风口在智能