前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >白话kubernetes的十万个为什么 - kubernetes

白话kubernetes的十万个为什么 - kubernetes

作者头像
justmine
发布2018-06-01 14:51:15
1.2K0
发布2018-06-01 14:51:15
举报
文章被收录于专栏:容器化

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] 驱赶该节点上运行的所有容器到其他可用节点

持续更新中.......

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-04-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Kubernetes简称?
  • Kubernetes是什么?
  • Kubernetes能干什么?
  • 如何与Kubernetes系统进行交互?
  • kubectl有哪些优化了用户体验的命令?
  • 在实际应用中一般如何操作资源?
  • kubernetes最常用的数据库?
  • 什么是ReplicaSet?
  • ReplicaSet的实际工作流程?
  • kubelete是什么?
  • kubelete是干什么的?
  • kubenetes会直接创建容器吗?
  • kuberproxy的工作流程?
  • kubernetes有哪些组件?
  • 什么是Service?
  • Deployment有哪些功能?
  • Volume是干什么的?
  • kubectl 命令行语法?
  • kubectl 常见的命令有哪些?
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档