kubernetes系列教程(一)初探kubernetes功
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,1. kubernetes简介1.1 kubernetes介绍Kubernetes是google开源的一套微服务,容器化的编排引擎,是google内部容器十多年实战沉淀的结晶,已战胜Swarm,Mes
千家信息网最后更新 2025年12月02日kubernetes系列教程(一)初探kubernetes功
1. kubernetes简介
1.1 kubernetes介绍
Kubernetes是google开源的一套微服务,容器化的编排引擎,是google内部容器十多年实战沉淀的结晶,已战胜Swarm,Messo成为容器编排的行业标准。kuberntes内置有很多非常优秀的特性使开发者专注于业务本身,其包含的功能如下:
- Service discovery and load balancing,服务发现和负载均衡,通过DNS实现内部解析,service实现负载均衡
- Storage orchestration,存储编排,通过plungin的形式支持多种存储,如本地,nfs,ceph,公有云快存储等
- Automated rollouts and rollbacks,自动发布与回滚,通过匹配当前状态与目标状态一致,更新失败时可回滚
- Automatic bin packing,自动资源调度,可以设置pod调度的所需(requests)资源和限制资源(limits)
- Self-healing,内置的健康检查策略,自动发现和处理集群内的异常,更换,需重启的pod节点
- Secret and configuration management,密钥和配置管理,对于敏感信息如密码,账号的那个通过secret存储,应用的配置文件通过configmap存储,避免将配置文件固定在镜像中,增加容器编排的灵活性
- Batch execution,批处理执行,通过job和cronjob提供单次批处理任务和循环计划任务功能的实现
- Horizontal scaling,横向扩展功能,包含有HPA和AS,即应用的基于CPU利用率的弹性伸缩和基于平台级的弹性伸缩,如自动增加node和删除nodes节点。
1.2 kubernetes架构
kubernetes包含两种角色:master节点和node节点,master节点是集群的控制管理节点,作为整个k8s集群的大脑。
- 负责集群所有接入请求(kube-apiserver),在整个集群的入口;
- 集群资源调度(kube-controller-scheduler),通过watch监视pod的创建,负责将pod调度到合适的node节点;
- 集群状态的一致性(kube-controller-manager),通过多种控制器确保集群的一致性,包含有Node Controller,Replication Controller,Endpoints Controller等;
- 元数据信息存储(etcd),数据持久存储化,存储集群中包括node,pod,rc,service等数据;
通常由3或5个节点组成高可用集群,其中etcd内置的集群组成,kube-apiserver由haproxy或nginx做负载分发,kube-scheduler和kube-controller-manager内置的选举机制保障,确保集群内同一个时刻只有一个leader节点,其他处于阻塞状态,防止脑裂。
node节点是实际的工作节点,负责集群负载的实际运行,即pod运行的载体,其通常包含三个组件:Container Runtime,kubelet和kube-proxy
- Container Runtime是容器运行时,负责实现container生命周期管理,如docker,containerd,rktlet;
- kubelet负责镜像和pod的管理,
- kube-proxy是service服务实现的抽闲,负责维护和转发pod的路由,实现集群内部和外部网络的访问。
其他组件还包括
- cloud-controller-manager,用于公有云的接入实现,提供节点管理(node),路由管理,服务管理(LoadBalancer和Ingress),存储管理(Volume,如云盘,NAS接入),需要由公有云厂商实现具体的细节,kubernetes提供实现接口的接入,如腾讯云目前提供CVM的node管理,节点的弹性伸缩(AS),负载均衡的接入(CLB),存储的管理(CBS和CFS)等产品的集成;
- DNS组件由kube-dns或coredns实现集群内的名称解析;
- kubernetes-dashboard用于图形界面管理;
- kubectl命令行工具进行API交互;
- 监控系统用于采集node和pod的监控数据,如prometheus,heapster+influxdb+grafana;
- 日志采集系统,用于收集容器的业务数据,实现日志的采集,存储和展示,实现有Fluentd+ELK(ElasticSearch+Logstash+Kiabana)。
1.3 参考文档
kubernetes功能介绍,https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/
- kubernetes组件介绍https://kubernetes.io/docs/concepts/overview/components/
返回kubernetes系列教程目录
**如果觉得文章对您有帮助,请订阅专栏,分享给有需要的朋友吧
集群
节点
存储
管理
容器
数据
接入
功能
状态
组件
资源
服务
调度
一致
均衡
弹性
运行
配置
一致性
业务
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库单表查询可以用嵌套吗
上海继续大学网络安全成绩
软件开发为什么要有分支合并
货运数据库系统
怎么购买正版SQL数据库
同源基因数据库
软件开发用深色模式好不好
上海招圣网络技术有限公司
网络安全责任有
大专软件开发专业前景
网络安全意识论文查重率30%
计算机网络技术课程资料
换数据库后启动不了怎么回事
服务器ip地址怎么映射
我的世界服务器大全群
池州软件开发公司哪家好
电子商务网络技术实训收获
物流统计软件开发
学校网络安全谨防诈骗课件ppt
灾难服务器推荐
网络安全法属于基本法吗
互联网科技有限公司职位
中小学生网络安全知识进行讲解
oracle数据库怎么改结构
计算机三级网络技术和二级
有没有能炸我的世界服务器
中国软件开发处于世界地位
开车上高速怎样看服务器
海淀区专业软件开发口碑推荐
网络技术英文专业术语