ilove乖乖女吧 关注:13贴子:644
  • 9回复贴,共1

k8s自学笔记整理

只看楼主收藏回复

开启k8s自学之路


IP属地:浙江1楼2020-04-23 10:05回复
    kubelet负责管理pods和他们上面的容器,images、volumes等。
    kube-proxy每一个node运行一个简单的网络代理和负载均衡。服务端点目前通过dns或者环境变量。这些变量由服务代理所管理的端口来解析。


    IP属地:浙江2楼2020-04-23 10:18
    回复
      重要概念
      cluster 集群 是计算、存储和网络资源的集合。
      master 为实现高可用可运行多个master
      pod是k8s的最小工作单元。每个pod包含一个或多个容器。pod中的容器会作为一个整体被master调度到一个node上运行。
      controller k8s通常不会直接创建pod,而是通过controller来管理pod的。controller中定义了pod的部署特性,比如有几个剧本?,在什么样的node上运行等。为了满足不同业务场景,k8s提供了多种controller,包括deployment、replicaset、daemonset、statefulset、job等。
      deployment deployment是最常用的controller。deployment可以管理pod的多个副本,并确保pod按照期望的状态运行。
      replicaset 实现pod的多副本管理。使用deployment时会自动创建replicaset,也就是说deployment是通过replicaset来管理pod的多个副本的,通常不需要直接使用replicaset。
      daemonset 用于每个node最运行一个pod副本的场景。正如其名称所示的,daemonset通常运行daemon。
      statefuleset 能够保证pod的每个副本整个生命周期中名称是不变的。当某个pod发生故障需要删除并重新启动时,pod的名称会发生变化,同时statefulset会保证副本按照固定的顺序启动、更新或者删除。
      job 用于运行结束就删除的应用,而其他controller中的pod通常是长期持续运行的。
      service deployment可以部署多个副本,每个pod都有自己的ip,外界通过SERVICE访问各个副本,k8s的service定义了外界访问一组特定pod的方式。service有自己的ip和端口,service为pod提供了负载均衡。k8s运行容器pod与访问容器这两项任务,分别由controller和service执行。
      namespace 可以将一个物理的cluster逻辑上划分成多个虚拟cluster,每个cluster就是一个namespace。不同的namespace里的资源是完全隔离的。
      上述来源:https://blog.csdn.net/wenjianfeng/article/details/93347306


      IP属地:浙江3楼2020-04-23 13:05
      回复
        Volume存储卷 k8s的存储卷的生命周期和作用范围是一个pod。每个pod中声明的存储卷由pod中的所有容器共享


        IP属地:浙江4楼2020-04-23 14:26
        回复
          基于docker本地运行kubernetes
          参考:https://www.kubernetes.org.cn/doc-5


          IP属地:浙江5楼2020-04-23 14:36
          回复
            kubernetes给每个pod分配ip地址。当你创建一个集群,你需要给kubernetes分配一个ip地址池。
            使用HTTPS访问apiserver 的配置参考: https://www.kubernetes.org.cn/doc-11


            IP属地:浙江6楼2020-04-24 09:19
            回复
              所有master的持续状态都存在etcd的一个实例中。这可以很好地存储配置数据。因为有watch(观察者)的支持,各部件协调中的改变可以很快被察觉。


              IP属地:浙江7楼2020-04-24 09:48
              回复
                Kubernetes中概念的简要概述
                Cluster : 集群是指由Kubernetes使用一系列的物理机、虚拟机和其他基础资源来运行你的应用程序。
                Node : 一个node就是一个运行着Kubernetes的物理机或虚拟机,并且pod可以在其上面被调度。.
                Pod : 一个pod对应一个由相关容器和卷组成的容器组
                Label : 一个label是一个被附加到资源上的键/值对,譬如附加到一个Pod上,为它传递一个用户自定的并且可识别的属性.Label还可以被应用来组织和选择子网中的资源
                selector是一个通过匹配labels来定义资源之间关系得表达式,例如为一个负载均衡的service指定所目标Pod.
                Replication Controller : replication controller 是为了保证一定数量被指定的Pod的复制品在任何时间都能正常工作.它不仅允许复制的系统易于扩展,还会处理当pod在机器在重启或发生故障的时候再次创建一个
                Service : 一个service定义了访问pod的方式,就像单个固定的IP地址和与其相对应的DNS名之间的关系。
                Volume: 一个volume是一个目录,可能会被容器作为未见系统的一部分来访问。
                Kubernetes volume 构建在Docker Volumes之上,并且支持添加和配置volume目录或者其他存储设备。
                Secret : Secret 存储了敏感数据,例如能允许容器接收请求的权限令牌。
                Name : 用户为Kubernetes中资源定义的名字
                Namespace : Namespace 好比一个资源名字的前缀。它帮助不同的项目、团队或是客户可以共享cluster,例如防止相互独立的团队间出现命名冲突
                Annotation : 相对于label来说可以容纳更大的键值对,它对我们来说可能是不可读的数据,只是为了存储不可识别的辅助数据,尤其是一些被工具或系统扩展用来操作的数据


                IP属地:浙江8楼2020-04-24 10:05
                回复
                  咋没有了,放弃治疗呀


                  IP属地:辽宁9楼2021-08-09 18:26
                  收起回复