請問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已淘汰
不建議一上來就干,先看下基本概念,學習效率會更高