k8s入门概述
ansible算是应用编排工具-安装、配置等 当然也有其他工具
 docker-以前是直接部署到os,有docker之后,应用封装到docker中。访问、控制等发生了变化,需要新的编排工具。
       docker compose--更适合于单机编排,docker swarm,docker machine(预制工具)--这三个工具为当年docker号称的编排三剑客
       mesos(idc os,只是资源分配工具)+marathon(编排)
       kubernetes(80%以上发份额)===========================================
 DevOpsdevops、MicroServices、Blockchain
瀑布式-敏捷-精密
单体架构-分层-微服务(天然跟容器集合,找到了微服务快速落地方案)
CI: 持续集成             交付给运维以前实现自动,如有问题反馈自动给开发
 CD:持续交付 Delivery    自动交付给运维
 CD: 持续部署 Deployment  自动部署到生产交付到运维人员前做了什么:
 计划--架构设计--开发--build--测试--运维人员部署发布有了容器后win mac linix异构环境无区别,问题迎刃而解。
devops不一定用到容器上,但是如果200个微服务环境,手动就很麻烦了,容器编排工具就很容易落地。
devops并不是技术,而是一种文化。
 ===========================================
 kubernetes
     舵手、飞行员
     Borg(谷歌内部使用的)


    
代码在github上
https://github.com/kubernetes     
官宣特性:自动装箱、自我修复、水平扩展、服务发现和负载均衡、自动发布和回滚
          秘钥和配置管理、存储编排(动态供给)、批量处理运行。

集群:master(1台或者多台)/nodes(容器运行主机 一台或者多台)
       master:API Server、Scheduler,Controller-Manager
       node:kubelet(集群角色,与api server交互),docker,kube-proxy
       Pod:label,label SeLector  ()
            Label:key=value  
            Label SeLector:
            
 常见控制器
       Pod:自主式pid、控制器管理的pod
                ReplicationController(最早的控制器)  
                ReplicaSet
                Deployment(管理无状态的应用)
                StatefulSet(有状态副本集)  
                job,Ctonjob               
       HPA
                HorizontalPodAutoscaler
                
 AddOns:附件
       
 kubernetes:master组件有一个api组件(api server)、调度器scheduler、控制器(健康状态检测,持续性探测)、控制器管理器(监控控制器)
 kubernetes最基本运行的单元叫做pod============================================
 三种网络:
     1、pod网络:pod运行在一个网络中(同一个Pod内的多个容器间:lo,各pod间的通信:nat、overlay network叠加网络,pod和service之间的通信:)
     2、集群网络:service跟pod不同网段
     3、节点网段
 =============================================
 etcd--存储
 =============================================
 要保障安全至少4个证书
 =============================================
 CNI:网络解决方案
     flannel:网络配置
     calico:网络配置,网络策略 (bgp,比较复杂)
     canel:网络策略
     。。。。
     
 namespace:逻辑管理边界,资源隔离