整改网站建设情况,wordpress全静态,网站建设及推广方案ppt模板,韩国网站never官网文章目录 Kubernetes概念Kubernetes核心概念集群podConfigMap Kubernetes架构master节点的组件worker节点组件 Kubernetes网络架构内部网络外部网络 k8s各端口含义 Kubernetes概念 
K8S就是Kubernetes#xff0c;Kubernetes首字母为K#xff0c;末尾为s#xff0c;中间一共有… 文章目录 Kubernetes概念Kubernetes核心概念集群podConfigMap Kubernetes架构master节点的组件worker节点组件 Kubernetes网络架构内部网络外部网络 k8s各端口含义  Kubernetes概念 
K8S就是KubernetesKubernetes首字母为K末尾为s中间一共有8个字母所以简称K8s。 
它是一个为容器化应用提供集群部署和管理的开源工具由 Google 开发。通过k8s可以使用配置文件轻松管理上千台机器。 
k8s的部署配置文件和docker的dockerfile很类似其内容描述了整个部署过程。 
Kubernetes核心概念 
集群 
由多个节点组成的、共同对外提供服务的一个节点组可添加或删除节点 
pod 
K8S 调度、管理的最小单位一个 Pod 可以包含一个或多个容器每个 Pod 有自己的虚拟IP。一个工作节点可以有多个 pod主节点会考量负载自动调度 pod 到哪个节点运行。 
如果一组应用紧耦合那么他们应该在一个pod中编排 
ConfigMap 
微服务上线时根据不同服务需要有一些可变配置为了实现对微服务各个节点的灵活配置k8s内置支持微服务的配置configmap将配置信息写入configmap然后configmap以环境变量的方式注入到pod中pod中的容器可以访问这些配置。 
Kubernetes架构 
架构中分为master/worker两个部分  master节点的组件 
etcd: 负责存储k8s集群的状态数据、节点数据等API server: 是操作etcd的唯一接口Scheduler: 负责资源调度Controler Manager: 集群状态的协调控制者维护集群状态 
worker节点组件 Controller Runtime: 下载镜像和容器的组件  kubelet: 与master节点上API server交互负责管理worker节点上的组件运行在集群中每个节点node上。注意他是一个进程而不是组件。  pod: K8S 调度、管理的最小单位一个 Pod 可以包含一个或多个容器每个 Pod 有自己的虚拟IP。一个工作节点可以有多个 pod主节点会考量负载自动调度 pod 到哪个节点运行。  kube-proxy: 对pod进行寻址和负载均衡  用户操作 k8s 集群一般是通过 kubectl命令行工具或者 dashboard Pod 之间进行通讯是通过集群内部的覆盖网络 Overlay Network外部流量想要进入集群访问 Pod 则是通过负载均衡 Load Balander 设备进行。 Kubernetes网络架构 
k8s有四层网络从上到下分别是 
外部接入网络(NodePort/LoadBalancer/Ingress)service网络pod网络node节点网络 
内部网络 
节点网络用来保证master和worker以及worker节点之间能够做正常寻址和通讯 
pod之间通过pod网络(在节点网络之上)寻址和通信 
不同节点之间的pod访问可以通过路由或者其他方式访问节点的ip可能会随着关机挂起而改变需要service网络维护。 
worker节点中的kubelet将信息传给master节点中的etcd来实现服务注册。 
kube-DNS和kube-proxy获取etcd中的信息来实现服务发现。 kube-DNS保存serviceName-ClusterIP的信息。(service服务的ip叫ClusterIp) ClusterIP并不是一成不变的ServiceName是唯一的。 Kube-Proxy保存CluserIP-PodIP的信息。这样两层可以实现POD 在集群之间的网络连接。kube-proxy是集群中每个节点node上运行的网络代理。 外部网络 
NodePort 
将service暴露在节点网络上 
LoadBalancer 
将service暴露在节点网络上负载均衡 
Ingress 
如果需要暴露在节点网络中的服务有很多仅仅使用 load balancer 的话成本是很高的。Ingress 可以等价于反向代理或者网关它的主要作用就是反向路由它可以将多个 k8s 内部的服务同时暴露出去但仅需一个 load balancer。Ingress 还有一些其他功能如动态路由更新、安全认证、日志监控等。 
k8s各端口含义 
port: 是k8s集群内部访问service的端口即通过clusterIP: port可以访问到某个servicenodePort: 是外部访问k8s集群中service的端口通过nodeIP: nodePort可以从外部访问到某个servicetargetPort: 是pod的端口从port和nodePort来的流量经过kube-proxy流入到后端pod的targetPort上最后进入容器containerPort: 是pod内部容器的端口targetPort映射到containerPort