请问kubernetes中的几个概念问题?
最近在学习k8s,产生了几个问题:
- node 是不是对应一个物理机或者虚拟机,一个用来工作的机器呢?貌似是这样理解。
- pod的一个副本是不是一定是运行在唯一一个node上面呢?会不会pod的其中一个容器运行中node1,另一个容器运行在node2?
- 除了github,还有没有其他地方可以下载到二进位编译好的可执行程序,github真的太慢了。
- 创建一个RC之前要不要先创建好一个pod呢?如果这个RC对应这个pod?我看到网上的教程好像是不需要的,这令我有些迷惑。
1,理解正确,一个node就是一个网路上的节点,代表一台计算主机,它可以是物理机也可以是虚拟机
2,不同的pod副本有可能分配到不同节点之上,因为主节点会根据情况动态的分配节点给不同的pod,你说这种情况是有可能发生的。但是同一pod内的容器是不会分散到不同节点之上的,因为pod是k8s资源中的最小单位,不能把它的内容分散开部署
3,github的替代品可能会有,但是我不知道,业界现在普遍都用github,不清楚你的具体需要多快的下载速度
4,在配置rc的yaml文件中,spec.template.spec是配置pod信息的地方,可以配置具体的容器等内容,运行后,pod副本就会根据这个template的配置而生成
- 是的。The nodes in a cluster are the machines (VMs, physical servers, etc) that run your applications and cloud workflows.
- pod的一个副本一定是运行在一个node上的,具体运行在哪一个node取决于调度策略,pod是k8s的最小调度单位,同一个pod的containers一定运行在一个node上。
- 买个高级点宽度
- 建议使用Deployment,保证pod的数据满足定义的replica数目。
1、是的
2、pod的副本不一定会运行一个node上面。也有可能像你后面说的「pod的其中一个容器运行中node1,另一个容器运行在node2?」
3、用阿里的yum镜像源,yum 安装
4、RC是控制器,是控制pod。创建RC后,RC会根据配置文件所写的自动创建pods。即便把这个pod手动删除,RC发现pod没有了,还会自动创建。建议用deployment
- 是的
- Pod中的containers不可分割
- yum install kubeadm
- RC可以用来创建和管理Pod,也可以用来管理已有的符合label的Pod。现在一般用ReplicaSet,RC已淘汰
不建议一上来就干,先看下基本概念,学习效率会更高