kubernetes

实例,搭建一个flask web应用
dockfile

几个概念

CI 持续集成
CD 持续交付 Delivery
CD 持续部署 Deployment

kubernetes架构

master-node模式,
master上还有三个守护进程,分别是 api-server , control manager, schduler ,
node,kubelet,docker引擎

Pod, Label,Label Select 最小运行单位,是对docker的一层抽象化,一个pod里可以运行多个docker。

特征

自动装箱,自我修复,水平扩展,服务发现和负载均衡,自动发布和回滚,秘钥和配置管理(把配置文件放到一个容器上,其他容器是现在这个容器上读取到配置文件再启动服务),存储编排,批量处理执行
通过restful api 来对对象进行操作, kubectl --> restful调用,yaml配置文件
命令式和声明式:
    Kubectl run nginx ///命令
    Kubectl  create/delete +yaml
    Kubectl  apply  + yaml

基石 --资源对象
所有的资源实体都可以表示为资源对象,
资源对象通过yaml描述
通过api或者kubectl来管理对象
一旦创建对象,kubenetes系统将持续工作以确保对象存在

对象模型

yaml文件

api信息

查看命令解释

使用yaml文件创建应用

Pod

流程

  1. 用户通过 kubectl 进行操作,如部署新的应用
  2. api server请求,并将其存储到Etcd
  3. watcher 和controlers监测到资源状态的变化,并进行操作
  4. replicaSet watcher/controller 监测到新的app,创建新的pod达到期望的实例个数
  5. Scheduler 将新的pod分配到Kubelet
  6. kubelet 监测到 pods 并通过容器运行时部署他们
  7. kubeproxy 管理pod网络,包括服务发现,负载均衡

命令行


posted @ 2019-09-07 16:51  π=3.1415926  阅读(135)  评论(0)    收藏  举报