k8s基础架构学习总结

k8s的核心功能:

1.自愈: 重新启动失败的容器,在节点不可用时,替换和重新调度节点上的容器,对用户定义的健康检查不响应的容器会被中止,并且在容器准备好服务之前不会把其向客户端广播。
2.弹性伸缩: 通过监控容器的cpu的负载值,增加容器的数量
3.服务的自动发现和负载均衡: 不需要修改您的应用程序来使用不熟悉的服务发现机制,Kubernetes 为容器提供了自己的 IP 地址和一组容器的单个DNS 名称,并可以在它们之间进行负载均衡。
4.滚动升级和一键回滚: Kubernetes 逐渐部署对应用程序或其配置的更改,同时监视应用程序运行状况,以确保它不会同时终止所有实例。 如果出现问题,Kubernetes会为您恢复更改,利用日益增长的部署解决方案的生态系统。

k8s组件:

在这里插入图片描述

Master:
    APISERVER: 所有服务访问统一入口
    CrontrollerManager: 维持副本期望数目
    Scheduler: 负责任务接收, 选择合适的节点进行分配任务
    ETCD: 键值对数据库, 储存K8S集群所有重要信息(持久化)

Worker:
    Kubelet:直接跟容器引擎进行交互实现容器生命周期管理
    kube-proxy:负责写入规则至IPTABLES、IPVS实现服务映射访问
    
Pod: k8s最小管理资源的单位
    自主式Pod: Pod里面能运行多个Docker而且共享同一个IP和存储空间
    Controller管理Pod: 控制Pod的状态和行为
        控制器种类ReplicaSet、Deloyment, Job, CronJob #TODO
    通讯方式: 
        同一个Pod内部通讯: 共享同一个网络命名空间, localhost就可以
        不同Pod通讯: 
            同一台机器由网桥直接转发至另一个Pod
            不同主机通过Flannel
            外网通过Service,通过lvs维护和转发

k8s资源清单:

在这里插入图片描述

资源清单是创建Pod的方式

Init(初始化数据): 做就绪检测
探针:
    三种检测方式: 
        ExecAction(命令返回码为0则认为诊断成功)
        TcpSockerAction(对指定端口的容器ip地址进行TCP检测,如果端口打开,诊断成功)
        HttpGetAction(对指定端口路径执行http的get请求, 响应码>=200<400, 诊断成功)
    readness(就绪探测): 指示容器是否准备好服务请求,如果就绪检测失败, 端点控制器
        将从Pod匹配的所有Service的端点中删除Pod的IP地址。
        初始延迟之前的就绪状态默认为Failure。如果不提供探针,则默认为Success。
    liveness(存活探测): 指示容器是否正在运行, 如果存活探测失败,则会杀死容器,
        并且容器将受到重启策略影响。如果容器不提供存活探针, 则默认为Success。

服务发现Service:

TODO
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值