白话kubernetes的十万个为什么(持续更新中...) - kubernetes
Kubernetes简称?
答:k8s或kube。
Kubernetes是什么?
答:由Google开发的一个强大的平台,可以在集群环境中管理容器化应用程序。本质上是一种特殊的数据库,里面存储的是能够组成kubernetes模型的各种资源,包括Pods、Deployments、Services、Config Maps、Secrets、Namespaces、Nodes、Service Accounts、Ingress、Jobs等等。可以参考:kubernetes实战之运行aspnetcore webapi微服务第9点部分浅析kubernetes。
Kubernetes能干什么?
答:容器编排引擎,管理容器的生命周期和方方面面。
如何与Kubernetes系统进行交互?
答:使用客户端工具kubectl,相当于kubernetes的RESTful接口,这是交互的基本模式。
kubectl有哪些优化了用户体验的命令?
答:kubectl scale 直接指明需要伸缩的Deployment名字即可,而不需要数据库中修改相关资源。
kubectl run 使用某镜像创建Deployment,无需写yml文件完整的描述pod的各种细节。
kubectl expose deploy [name] --type=NodePort --name=[name] --port=80 直接为部署暴露类型为NodePort的服务。
在实际应用中一般如何操作资源?
答:一把使用yml文件或json文件,配合各种kubectl命令。
kubernetes最常用的数据库?
答:etcd。
什么是ReplicaSet?
答:一个“副本集”对象,封装pod的弹性伸缩。例如:使用ReplicaSet告诉k8s集群部署pod,并始终维持5个pod实例。
ReplicaSet的实际工作流程?
答:ReplicaSet Controller监控数据库中的数据变化, 然后检查实际环境中ReplicaSet对象所拥有的pod实际实例数量,如果超过期望的数量,就杀掉富余的pod;如果不足,就立即创建新的pod补充。
kubelete是什么?
答:一种特殊的控制器,运行在集群中每个执行节点上,是集群的守护神。
kubelete是干什么的?
答:当第一次集群调度部署完成后,后续kubelete会持续监控数据库变化,管理pod的生命周期,发现被分配到它所在的节点上运行的那些pod,如果找到新pod,则会在该节点上运行这个新pod。
kubenetes会直接创建容器吗?
答:不会。它使用可插拔的容器引擎(Docker、Rocket等)来实现容器创建。
kuberproxy的工作流程?
答:当有数据包发送到主机上时,它将其路由到正确的pod或容器。
kubernetes有哪些组件?
答:kubectl 客户端命令行工具
kube-apiserver 提供RESTful风格的统一接口
kube-scheduler 负责资源与pod的匹配
kube-controller-manager 负责管理“资源”同步
kubelet 管理pod生命周期
kube-proxy 负责k8s集群网络配置
什么是Service?
答:为pod稳定地提供服务发现和负载均衡的能力。
Deployment有哪些功能?
答:集成了上线部署、滚动升级、创建脚本、暂停上线任务、恢复上线任务、滚动到以前某一版本等功能。
Volume是干什么的?
答:用于存储持久化数据,不同类型的Volume有不同的生命周期。
kubectl 命令行语法?
答:kubectl [command] [type] [name] [flags]
command:get、create、describe、delete。
type:资源类型
name:资源名称
flags:命令行选项
kubectl 常见的命令有哪些?
答:kubectl cluster-info 查看集群信息
kubectl version 显示命令行和kube服务端的版本
kubectl api-versions 显示支持的api版本集合
kubectl config view 显示当前kubectl的配置信息
kubectl logs 查看pod日志
kubectl exec -t [podname] /bin/bash 以交互模式进入容器执行命令
kubectl scale 实现水平或收缩
kubectl rollout status deploy [name]部署状态变更状态检查
kubectl rollout history 部署历史
kubectl rollout undo 回滚部署到最近或者某个版本
kubectl get nodes 查看集群中的节点
kubectl get [type] [name] 查看某种类型资源
kubectl describe [type] [name] 查看特定资源实例详情
kubectl get ep 查看路由端点信息
kubectl set image deploy [deployment-name] [old-image-name]=[new-image-name] 为部署设置镜像
kubectl cordon [nodeid] 标记节点不接受调度
kubectl uncordon [nodeid] 恢复节点可以接受调度
kubectl drain [nodeid] 驱赶该节点上运行的所有容器到其他可用节点
kubectl 如何快速分配管理员权限?
答:
kubectl create serviceaccount --namespace kube-system <serviceaccountname>
kubectl create clusterrolebinding <rolebindingname> --clusterrole=cluster-admin --serviceaccount=<serviceaccountname>
kubectl patch deploy --namespace kube-system <objectname> -p '{"spec":{"template":{"spec":{"serviceAccount":"<serviceaccountname>"}}}}'
持续更新中.......
白话kubernetes的十万个为什么(持续更新中...) - kubernetes的更多相关文章
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- Atom使用记录(持续更新中)
部分内容取自:http://www.jianshu.com/p/dd97cbb3c22d,我自己也在使用,持续更新中 Atom安装插件在窗口中File---Setting---install 在里面进 ...
- Pig基础学习【持续更新中】
*本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.* Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的,可以作为MapR ...
- Pig语言基础-【持续更新中】
***本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.*** Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的, ...
- java视频教程 Java自学视频整理(持续更新中...)
视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...
- 系列文章:老项目的#iPhone6与iPhone6Plus适配#(持续更新中,更新日期2014年10月12日 星期日 )
本文永久地址为http://www.cnblogs.com/ChenYilong/p/4020399.html ,转载请注明出处. ********************************** ...
- 知道创宇爬虫题--代码持续更新中 - littlethunder的专栏 - 博客频道 - CSDN.NET
知道创宇爬虫题--代码持续更新中 - littlethunder的专栏 - 博客频道 - CSDN.NET undefined 公司介绍 - 数人科技 undefined
- Python开发【第二十三篇】:持续更新中...
Python开发[第二十三篇]:持续更新中...
- 《WCF技术剖析》博文系列汇总[持续更新中]
原文:<WCF技术剖析>博文系列汇总[持续更新中] 近半年以来,一直忙于我的第一本WCF专著<WCF技术剖析(卷1)>的写作,一直无暇管理自己的Blog.在<WCF技术剖 ...
随机推荐
- Windows下配置 Nginx + PHP
背景 经常倒腾系统,徘徊于 Windows 的便利和 Linux 的魔性,一旦折腾系统基本配置都要重弄,特此记录对 Nginx和PHP的基本启动.重启和退出 网上经验 网上这种东西一搜一大把,也有很多 ...
- nginx php 配置跨域
我使用的是lnmp一键安装包 在虚拟记住添加 add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allo ...
- JavaScript设计模式之----组合模式
javascript设计模式之组合模式 介绍 组合模式是一种专门为创建Web上的动态用户界面而量身制定的模式.使用这种模式可以用一条命令在多个对象上激发复杂的或递归的行为.这可以简化粘合性代码,使其更 ...
- infolite(中文检索系统)~爬虫利器
infolite 今天为大家分享一个爬虫利器-infolite.这是一个chrome浏览器的插件,如果你在写爬虫的时候对复杂繁琐的控件路径分析是深恶痛绝.那么infolite绝对是你最好的选择. 安装 ...
- IDEA 格式化代码快捷键冲突解决
转自https://blog.csdn.net/ckhmxhfhzt/article/details/72378537 大家都知道,在IDEA中格式化代码的快捷键为Ctrl+Alt+L .但是很多人发 ...
- 用ASP.NET Core 2.0 建立规范的 REST API -- GET 和 POST
本文所需的一些预备知识可以看这里: http://www.cnblogs.com/cgzl/p/9010978.html 和 http://www.cnblogs.com/cgzl/p/9019314 ...
- 【最小生成树+贪心】BZOJ1821: [JSOI2010]Group 部落划分 Group
Description 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人们总是拉帮结派形成属于自己的部落,不同的部落之间则经常发生争斗.只是,这一切都成 ...
- BZOJ_1345_[Baltic2007]序列问题Sequence_单调栈
BZOJ_1345_[Baltic2007]序列问题Sequence_单调栈 Description 对于一个给定的序列a1,…,an,我们对它进行一个操作reduce(i),该操作将数列中的元素ai ...
- BZOJ_1085_[SCOI2005]骑士精神_IDDFS
BZOJ_1085_[SCOI2005]骑士精神_DFS Description 在一个5×5的棋盘上有12个白色的骑士和12个黑色的骑士, 且有一个空位.在任何时候一个骑士都能按照骑 士的走法(它可 ...
- BZOJ_2460_[BeiJing2011]元素_线性基
BZOJ_2460_[BeiJing2011]元素_线性基 Description 相传,在远古时期,位于西方大陆的 Magic Land 上,人们已经掌握了用魔 法矿石炼制法杖的技术.那时人们就认识 ...