本文共 3009 字,大约阅读时间需要 10 分钟。
搭建完了Rancher2.4.X,整理一下知识点,其中包括了K8S.方便后面我们玩.知识点当然是持续更新
K8S是容器编排调度引擎.提供了如下的内容:
k8s集群由Master节点和Node(Worker)节点组成。
Master节点指的是集群控制节点,管理和控制整个集群,基本上k8s的所有控制命令都发给它,它负责具体的执行过程。(如下的机器上运行的程序都可以在Rancher起来后通过docker ps看到----cuiyaonan2000@163.com)
在Master上主要运行着:
除了master以外的节点被称为Node或者Worker节点,可以在master中使用命令 kubectl get nodes
查看集群中的node节点。每个Node都会被Master分配一些工作负载(Docker容器)---工作负载就是容器了cuyaonan2000@163.com,当某个Node宕机时,该节点上的工作负载就会被Master自动转移到其它节点上。在Node上主要运行着:
一个 pod 包含一组容器,一个 pod 不会跨越多个工作节点
k8s通常不会直接创建pod,而是通过controller来管理pod的。controller中定义了pod的部署特性,比如有几个剧本,在什么样的node上运行等。
为了满足不同的业务场景,k8s提供了多种controller,包括deployment、replicaset、daemonset、statefulset、job等。(如下的副本就是容器的COPY可以这么理解--cuiyaonan2000@163.com)
deployment可以部署多个副本,每个pod 都有自己的IP,外界如何访问这些副本那?答案是service
k8s的 service定义了外界访问一组特定pod的方式。service有自己的IP和端口,service为pod提供了负载均衡。
k8s运行容器pod与访问容器这两项任务分别由controller和service执行。
cluster是 计算、存储和网络资源的集合,k8s利用这些资源运行各种基于容器的应用。
可以将一个物理的cluster逻辑上划分成多个虚拟cluster,每个cluster就是一个namespace。不同的namespace里的资源是完全隔离的。
Rancher是一个开源的企业级容器管理平台。通过Rancher,企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台。Rancher提供了在生产环境中使用的管理Docker和Kubernetes的全栈化容器部署与管理平台。
Rancher由以下四个部分组成:
Rancher可以使用任何公有云或者私有云的Linux资源。Linux主机可以是虚拟机,也可以是物理机。Rancher仅需要主机有CPU,内存,本地磁盘和网络资源。从Rancher的角度来说,一台云厂商提供的云主机和一台自己的物理机是一样的。
Rancher为运行容器化的应用实现了一层灵活的。Rancher的基础设施服务包括, , , 和安全模块。Rancher的基础设施服务也是通过容器部署的,所以同样Rancher的基础设施服务可以运行在任何Linux主机上。
很多用户都会选择使用容器编排调度框架来运行容器化应用。Rancher包含了当前全部主流的编排调度引擎,例如, , 和。同一个用户可以创建Swarm或者Kubernetes集群。并且可以使用原生的Swarm或者Kubernetes工具管理应用。-----------(使用原生的工具干嘛,那Rancher不是白弄了,希望不会用到-----cuiyaonan2000)
除了Swarm,Kubernetes和Mesos之外,Rancher还支持自己的Cattle容器编排调度引擎。Cattle被广泛用于编排Rancher自己的基础设施服务以及用于Swarm集群,Kubernetes集群和Mesos集群的配置,管理与升级。
Rancher的用户可以在里一键部署由多个容器组成的应用。用户可以管理这个部署的应用,并且可以在这个应用有新的可用版本时进行自动化的升级。Rancher提供了一个由Rancher社区维护的应用商店,其中包括了一系列的流行应用。Rancher的用户也可以。
Rancher支持灵活的插件式的用户认证。支持Active Directory,LDAP, Github等 。 Rancher支持在级别的基于角色的访问控制 (RBAC),可以通过角色来配置某个用户或者用户组对开发环境或者生产环境的访问权限。
下图展示了Rancher的主要组件和功能:
转载地址:http://ebcmf.baihongyu.com/