1

我正在使用kubernetes頭盔將應用程序部署到我的羣集。當helm使用羣集的kube-config文件部署到羣集時,我的筆記本電腦一切正常。如何從k8s羣集外部的CI/CD管道使用kubernetes頭盔

我想從我的CI/CD服務器(與我的羣集分開)使用helm自動將應用程序部署到羣集。我爲我的CI/CD服務器創建了一個k8s服務帳戶。但是,如何爲服務帳戶創建kube-config文件,以便helm可以使用它從我的CI/CD服務器連接到我的羣集?

或者這是不是從CI/CD服務器使用Helm的正確方法?

+0

這是正確的做法。您可以複製〜/ .kube目錄以獲取所需的配置。 –

回答

1

Helm通過使用安裝的kubectl與您的羣集通信。這意味着如果你可以通過kubectl訪問你的集羣,你可以使用該集羣的helm。

不要忘記確保您正在使用正確的上下文,以防您在kubcfg文件中有多個羣集。您可以運行kubectl config current-context並將其與kubecfg中的羣集詳細信息進行比較來檢查。

你可以在Helm的文檔中找到更多的細節,查看quick start guide瞭解更多信息。

0

在這種情況下,您需要將kubectl安裝在CI/CD服務器所識別的任何從屬設備或代理上,或者在您的自動化系統中實時安裝kubectl,然後確保您有OR能夠生成一個kubeconfig來使用。

要回答這個問題:

但是我怎麼創建的服務帳戶KUBE-config文件...

您可以設置新的集羣,憑證和使用環境使用kubectl config set-cluster,kubectl config set-credentialskubectl config set-context在默認或自定義kubeconfig文件中使用kubectl。如果您有KUBECONFIG env變量集並且指向kubeconfig文件,那麼該工作或設置新條目時只需傳遞-kubeconfig即可指向自定義文件。

這裏的the relevant API documentation v1.6。

0

我們創建了helmsman,它爲您提供聲明性語法來管理羣集中的舵圖。無論你在哪裏運行,它都會爲你配置kubectl(以及helm)。它也可以從碼頭集裝箱使用。