中文网站建设模板下载,建立公司网站的重点,建设文化网站好处,青岛注册公司在哪个网站申请文章目录 deploymentspodNodeserviceskubectl 实现应用伸缩kubectl 实现滚动更新kubernetes架构 deployments
中文文档
http://docs.kubernetes.org.cn/251.htmldeployment是用来创建和更新应用的#xff0c;master 会负责将创建好的应用实例调度到集群中的各个节点
应用实例… 文章目录 deploymentspodNodeserviceskubectl 实现应用伸缩kubectl 实现滚动更新kubernetes架构 deployments
中文文档
http://docs.kubernetes.org.cn/251.htmldeployment是用来创建和更新应用的master 会负责将创建好的应用实例调度到集群中的各个节点
应用实例创建完成后Kubernetes Deployment Controller会持续监视这些实例。如果管理实例的节点被关闭或删除那么 Deployment Controller将会替换它们实现自我修复能力。 pod
pod 是 kubernetes 中的最小单位 pod 会被master 分配到指定的node上直到生命周期结束凡人皆有一死来描述pod没有比这跟准确的了Node
Node 是物理机或者虚拟机被master 管理kubelet 管理 k8s master 和node 之间的通信管理机器上运行的pods 和containers 容器kubectl get 列出资源
kubectl describe 显示资源的详细信息
kubectl logs 打印容器中的容器日志
kubectl exec pod中容器内部执行的命令 services
ReplicationController动态创建新的Pods来保持应用的运行,如果pod数目少了Kubernetes中的Service 是一个抽象的概念它定义了Pod的逻辑分组和一种可以访问它们的策略这组Pod能被Service访问使用YAML 优先或JSON 来定义ServiceService所针对的一组Pod通常由LabelSelector实现可以通过type在ServiceSpec中指定一个需要的类型的 ServiceService的四种type:ClusterIP默认 - 在集群中内部IP上暴露服务。此类型使Service只能从群集中访问。
NodePort - 通过每个 Node 上的 IP 和静态端口NodePort暴露服务。NodePort 服务会路由到 ClusterIP 服务这个 ClusterIP 服务会自动创建。通过请求 NodeIP:NodePort可以从集群的外部访问一个 NodePort 服务。
LoadBalancer - 使用云提供商的负载均衡器如果支持可以向外部暴露服务。外部的负载均衡器可以路由到 NodePort 服务和 ClusterIP 服务。
ExternalName - 通过返回 CNAME 和它的值可以将服务映射到 externalName 字段的内容没有任何类型代理被创建。这种类型需要v1.7版本或更高版本kube-dnsc才支持。 kubectl 实现应用伸缩
在之前模块中我们创建了一个Deployment然后通过Service暴露Deployment创建的Pod来运行应用当流量增加时我们需要扩展应用来满足用户需求。通过Deployment更改副本数可以实现伸缩。 kubectl 实现滚动更新
滚动更新通过Deployments实现应用实例在不中断、不停机情况下更新新的Pod会逐步调度到可用的资源Node节点上更新时的Pod数量可以是数字或百分数(pod)来表示。在Kubernetes更新中支持升级 / 回滚恢复更新与应用伸缩相似滚动更新是实现流量负载均衡方式。
kubernetes架构
Borg是谷歌内部的大规模集群管理系统负责对谷歌内部很多核心服务的调度和管理。Borg的目的是让用户能够不必操心资源管理的问题让他们专注于自己的核心业务并且做到跨多个数据中心的资源利用率最大化etcd 保存整个集群的状态
controller manager 负责维护集群的状态比如故障检测自动扩展滚动更新等
scheduler 负责资源的调度按照预定的调度策略将pod 调度到相应的机器上
kubelet 负责维护容器的生命周期同时也负责volume 网络的管理
container runtime 负责镜像管理以及pod和容器的真正运行
kube-proxy 负责为service 提供cluster 内部的服务发现和负载均衡 参考文章 http://docs.kubernetes.org.cn/115.html