RKE 叢集kubeconfig檔案
與 Kubernetes 叢集通訊前,您需要在本地機器中下載和安裝kubectl檔案,請單擊此處( https://kubernetes.io/docs/tasks/tools/install-kubectl/ )下載kubectl。
kubeconfig 檔案,即 kubeconfig file,是用於配置叢集訪問的檔案的統稱,這並不意味著真的有一個名為“kubeconfig”的檔案。例如,在部署 Kubernetes 叢集的時候,RKE 會自動生成一個名為kube_config_cluster.yml的檔案用於配置叢集訪問,那麼這個檔案就是是 RKE 使用的 kubeconfig 檔案。
您可以配合 kubectl 命令列工具使用 kubeconfig 檔案,詳情請參考Kubernetes 官方文件。
說明:如果您沒有修改 RKE 預設配置,RKE 自動生成的 kubeconfig 檔案檔案會儲存在~/.kube/config路徑,kubectl 會檢查該路徑下是否存在 kubeconfig 檔案kube_config_cluster.yml。如果您將 kubeconfig 檔案儲存在其他路徑,可以輸入以下命令,使 kubectl 使用其他路徑下的 kubeconfig 檔案配置叢集訪問。
kubectl --kubeconfig /custom/path/kube.config get pods
執行以下命令,檢查 Kubernetes 機器的版本,以確認 kubectl 的工作狀態:
kubectl --kubeconfig kube_config_cluster.yml version Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.0", GitCommit:"fc32d2f3698e36b93322a3465f63a14e9f0eaead", GitTreeState:"clean", BuildDate:"2018-03-27T00:13:02Z", GoVersion:"go1.9.4", Compiler:"gc", Platform:"darwin/amd64"} Server Version: version.Info{Major:"1", Minor:"8+", GitVersion:"v1.8.9-rancher1", GitCommit:"68595e18f25e24125244e9966b1e5468a98c1cd4", GitTreeState:"clean", BuildDate:"2018-03-13T04:37:53Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
如果返回的資訊中包含了 client 端和 server 端的版本號,則表示您在本地有一個kubectlclient 端,並且能夠使用它從新建的叢集獲取 server 版本號,kubectl 處於正常狀態。現在您可以在 kubectl 命令列工具中使用kubectl 命令控制叢集,就像請求叢集中的節點一樣。
kubectl --kubeconfig kube_config_cluster.yml get nodes
NAME STATUS ROLES AGE VERSION
10.0.0.1 Ready controlplane,etcd,worker 35m v1.10.3-rancher1