赞
踩
基本的 Kubernetes 面试问题
什么是 Kubernetes?
答:kubernetes是一个开源容器管理工具,负责容器部署,调度,容器扩缩容,以及负载平衡。
具体功能:
自愈:重新启动失败的容器,在节点不可用时,替换和重新调度节点上的容器,对用户定义的健康检查不响应的容器会被终止,并且在容器准备好服务之前不会把其向客户端广播。
弹性伸缩:通过监控容器的cpu的负载值,如果这个平均值高于80%,增加这个容器的数量,如果低于10%,减少容器的数量。
服务的自动发现和负载均衡:kubernetes为容器提供了唯一的IP地址和一组容器的单个dns名称,并可以在他们之间进行负载均衡。
滚动升级和一键回滚:kubernetes
逐渐部署对应用程序或其配置的更改,同时监视应用程序运行状况,以确保它不会同时终止所有实例。 如果出现问题,Kubernetes会为您恢复更改,利用日益增长的部署解决方案的生态系统。
Kubernetes 与 Docker 有什么关系?
docker可以构建容器,但这些容器通过kubernetes来进行跨主机相互通信。我们还可以使用kubernetes手动关联和编排在多个主机上运行容器。
Kubernetes 的组成?
kubectl:客户端命令行工具,作为整个系统的操作入口。
kube-apiserver: 以REST API服务形式提供接口,作为整个系统的控制入口。
kube-conroller-manager:执行整个系统的后台任务,包括节点的状态状况,pod个数,pods和service的关联等。
kube-scheduler:负责节点的资源管理,接收来自kube-apiserver创建pods任务,并分配到某个节点。
etcd:复制节点间的服务发现和配置共享。
kube-proxy:运行在每个计算节点上,负责pod网络代理,定时从etcd获取service信息来做相应的策略。
kubelet:运行在每个计算节点上,作为agent,接收分配该节点的pods任务及管理容器,周期性获取容器状态,反馈给kube-apiserver
DNS:一个可选的DNS服务,用于为每个serivce对象创建DNS记录,这样所有的pod就可以通过DNS访问服务。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。