k8s关键知识点汇总(一)
k8s是什么:Docker分布式系统解决方案
单机版k8s环境搭建:centos7
systemctl disabled firewalld
systemctl stop firewalld
安装etcd(高可用键值数据库)和k8s
yum update #多次尝试,确认网络 连接
yum install -y etcd kubernetes
启动服务(进程)
systemctl start etcd
systemctl start docker #容器创建管理
systemctl start kube-apiserver #所有资源增、删、改、查等操作入口
systemctl start kube-controller-manager #自动化控制中心
systemctl start kube-scheduler #pod调度
systemctl start kubelet #node节点进程,负责pod对应容器创建、起停
sustemctl start kube-proxy #service通信及负载均衡机制组件
常用操作命令
kubectl get nodes #查看集群中node个数
kubectl descripe node <node_name> #查看详细信息
kubectl create -f *.yaml #创建yaml对应资源文件(即kind对象)
kubectl get 对象名称 #查看对象信息
kubectl get svc service_name -o yaml #查看service ClusterIP
kubectl get pods --namespace=namespace_name #查看命名空间的中的对象
基本概念
k8s中所有资源对象都可以使用yaml或JSON文件定义或描述
通常一个节点运行几百个pod
master 集群控制节点 占用一个服务器,高可用占3个服务器
node node工作节点 可以是物理机或虚拟机,node IP物理网卡的IP地址
pod kind:pod,包含一个pause容器和其他业务容器(共享pause的网络栈和volume挂载卷),具有单独的ip地址及Endpoint(Pod IP+ContainerPort pod之间彼此通信,流量通过TCP/IP node IP流出)
Label 一个资源对象(node、pod、service、rc)可以任意多label,一个label可以任意多资源对象
Replication Controller(RC) 描述期望pod的副本数,根据标签筛选目标pod,实际副本小于预期则根据模版创建pod
Deployment RC的升级,可以随时查看当前部署进度
Horizontal Pod Autoscaler(HPA) 横向扩容,可以使用yaml定义之外的方式定义
StatefulSet 用于管理有状态的集群,例如MySql集群,每个pod都有稳定唯一的网络标示及规范名称
Service 具有虚拟IP(Cluster IP)不可ping属于k8s集群内部地址,yaml可定义多端口,可使用type=NodePort实现外部访问Service(例如web端的服务模块),但有负载均衡问题,若运行在谷歌GCE公有云(type=LoardBalancer)则可以解决
Volume 存储卷 Pod中能被多容器访问的共享目录
Persistent Volume 网络存储
Namespace 命名空间 实现多租户资源隔离,一旦创建就可以指定资源对象(×.yaml)在那个Namespace
Annotation 注解
本文转自CSDN-k8s关键知识点汇总(一)
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
安装k8s Master高可用集群
安装k8s Master高可用集群 主机 角色 组件 172.18.6.101 K8S Master Kubelet,kubectl,cni,etcd 172.18.6.102 K8S Master Kubelet,kubectl,cni,etcd 172.18.6.103 K8S Master Kubelet,kubectl,cni,etcd 172.18.6.104 K8S Worker Kubelet,cni 172.18.6.105 K8S Worker Kubelet,cni 172.18.6.106 K8S Worker Kubelet,cni etcd安装 保证k8smaster高可用,不建议使用container的方式启动etcd集群,因为container可能会 出现随时死掉的情况,etcd每个节点的启动service又是有状态的。因此此处将以二进制方式进行部署,建议在正式环境中最少部署3个节点的etcd集群,etcd具体安装步骤参考本地服务方式搭建etcd集群 必要组件以及证书安装 ca证书 参考kubernetes中证书生成创建CA证书,并将ca-key.pem与...
- 下一篇
k8s的部署
k8s集群解决的问题 Docker之间跨节点的通讯 动态管理集群负载,使集群工作在 期望的状态 集群之间资源的调度 集群的运行方式 k8s的节点类型 master节点负责整个集群的控制和管理 node节点是负载节点,运行pod。 master节点所用到的组件 kube-apiserver提供整个集群资源的操作入口(增删改查),也是集群的控制入口,提供http rest接口。 etcd保存整个集群的状态,也即是资源信息。KEY/VALUE模式的存储系统 kube-schedule负载pod(资源)的调度,根据设置策略调度pod到指定的node上运行。 kube-controller-manager维护集群,所有资源的自动化控制中心。当整个集群的状态与期望不符合的时候,组件会努力让集群恢复期望状态,比如:当一个pod死亡,组件新建一个pod恢复对应replicas set期望的状态。 node节点所用到的组件 kubelet负责pod的生命周期管理,同时与master密切协作,实现集群管理的基本功能 kube-proxy实现service的内部服务发现与负载均衡机制的重要组件,主要通过设置...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- MySQL8.0.19开启GTID主从同步CentOS8
- Hadoop3单机部署,实现最简伪集群
- CentOS8编译安装MySQL8.0.19
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池