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的更多相关文章

  1. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  2. Atom使用记录(持续更新中)

    部分内容取自:http://www.jianshu.com/p/dd97cbb3c22d,我自己也在使用,持续更新中 Atom安装插件在窗口中File---Setting---install 在里面进 ...

  3. Pig基础学习【持续更新中】

    *本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.* Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的,可以作为MapR ...

  4. Pig语言基础-【持续更新中】

      ***本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.***   Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的, ...

  5. java视频教程 Java自学视频整理(持续更新中...)

    视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...

  6. 系列文章:老项目的#iPhone6与iPhone6Plus适配#(持续更新中,更新日期2014年10月12日 星期日 )

    本文永久地址为http://www.cnblogs.com/ChenYilong/p/4020399.html ,转载请注明出处. ********************************** ...

  7. 知道创宇爬虫题--代码持续更新中 - littlethunder的专栏 - 博客频道 - CSDN.NET

    知道创宇爬虫题--代码持续更新中 - littlethunder的专栏 - 博客频道 - CSDN.NET undefined 公司介绍 - 数人科技 undefined

  8. Python开发【第二十三篇】:持续更新中...

    Python开发[第二十三篇]:持续更新中...

  9. 《WCF技术剖析》博文系列汇总[持续更新中]

    原文:<WCF技术剖析>博文系列汇总[持续更新中] 近半年以来,一直忙于我的第一本WCF专著<WCF技术剖析(卷1)>的写作,一直无暇管理自己的Blog.在<WCF技术剖 ...

随机推荐

  1. 使用SimHash进行海量文本去重[转载]

    阅读目录 1. SimHash与传统hash函数的区别 2. SimHash算法思想 3. SimHash流程实现 4. SimHash签名距离计算 5. SimHash存储和索引 6. SimHas ...

  2. 深入出不来nodejs源码-编译启动(1)

    整整弄了两天,踩了无数的坑,各种奇怪的error,最后终于编译成功了. 网上的教程基本上都过时了,或者是版本不对,都会报一些奇怪的错误,这里总结一下目前可行的流程. node版本:v10.1.0. 首 ...

  3. 关于Linux虚拟化技术KVM的科普

    虚拟化技术应用越来越广泛,虚拟化技术需求越来越强劲.KVM.XEN.Docker等比较热门,尤其是KVM技术越来越受欢迎. 基于此背景,了解一下KVM+QEMU就有点必要了. 从网上收集了一些资料进行 ...

  4. 移动网站用backbone还是angular?

    移动网站用backbone还是angular? 作者:戴嘉华链接:https://www.zhihu.com/question/21871888/answer/26130922来源:知乎著作权归作者所 ...

  5. JavaScript设计模式 Item 2 -- 接口的实现

    1.接口概述 1.什么是接口? 接口是提供了一种用以说明一个对象应该具有哪些方法的手段.尽管它可以表明这些方法的语义,但它并不规定这些方法应该如何实现. 2. 接口之利 促进代码的重用. 接口可以告诉 ...

  6. Axure使用——创建折叠菜单

    1.先添加动态面板 2.往动态面板中添加矩形 3.接着先隐藏下面的矩形(也就是你要折叠起来的内容) 4.一定要注意: 5.添加动态面板的状态 6.把之前做的那个矩形全部复制到state1中 7.把之前 ...

  7. create_volume.go

    package api import (     "net/http"     "io/ioutil"     "errors"     & ...

  8. MySQL 大数据量快速插入方法和语句优化

    MySQL大数据量快速插入方法和语句优化是本文我们主要要介绍的内容,接下来我们就来一一介绍,希望能够让您有所收获! INSERT语句的速度 插入一个记录需要的时间由下列因素组成,其中的数字表示大约比例 ...

  9. C++中函数重载和函数覆盖的区别

    C++中经常会用到函数的重载和覆盖,二者也在很多场合都拿出来进行比较,这里我就对二者的区别做点总结: 函数重载: 函数重载指的是函数名相同.函数特征值不同的一些函数,这里函数的特征值指的是函数的参数的 ...

  10. OsharpNS轻量级.net core快速开发框架简明入门教程-Osharp.Redis使用

    OsharpNS轻量级.net core快速开发框架简明入门教程 教程目录 从零开始启动Osharp 1.1. 使用OsharpNS项目模板创建项目 1.2. 配置数据库连接串并启动项目 1.3. O ...