Windows 使用 helm3 和 kubectl

来源:https://www.cnblogs.com/innerpeacez/archive/2019/07/30/11268012.html
-Advertisement-
Play Games

簡介: 主要原因是,我不會 vim ,在 linux 上修改 charts 的很蹩腳,所以就想著能不能再 windows 上執行 helm 命令,將 charts install linux 上搭建的 kubernetes 集群上,答案當然是可以的。本文將告訴大家怎麼在 windows 上執行 he ...


簡介:

主要原因是,我不會 vim ,在 linux 上修改 charts 的很蹩腳,所以就想著能不能再 windows 上執行 helm 命令,將 charts install linux 上搭建的 kubernetes 集群上,答案當然是可以的。本文將告訴大家怎麼在 windows 上執行 helm 命令和 kubectl 命令,本文的先決條件是需要有一個 kubernetes 集群環境,如果沒有請自行部署。

本文環境

  • kubernetes 1.15
  • helm 3 alpha.2
  • kubectl

Helm 3 是什麼?

helm 是 kubernetes 官方的包管理工具, 通過 helm 將發佈在 kubenetes 環境的多個 yaml 以軟體包(charts)的形式打包,簡化了 kubernetes 集群環境中應用的部署及更新,helm 支持應用的部署,升級,回滾等操作。helm 3 是針對於 helm 來說的升級版,做了一個功能上的調整,以其 github 發佈的版本號命名,目前最新的版本為 Helm v3.0.0-alpha.2。個人認為helm 必定會成為未來 CICD 鏈中的關鍵一環。

kubectl 是什麼?

熟悉 kubernetes 的同學肯定非常熟悉 kubectl ,甚至於每天都會使用到。kubectl是用於針對Kubernetes集群運行命令的命令行介面。

調教經歷

簡單的瞭解的 helm 和 kubectl 之後,我們開始實現在 windows 上執行 helm 命令。

安裝helm3

1.下載 helm3 windows 安裝包,解壓之後,你會看到有個 windows-amd64 的文件夾,其中有個 helm.exe 的可執行文件,我將這個文件夾直接放在了 C:\windows-amd64

2.設置 path

1564151212023

1564151483086

1564151916623

  1. helm init

打開 CMD,進行 helm 的初始化操作, 如果你如法訪問 google 的 stable 倉庫 ,將以下內容保存到$HOME\helm\repository\repositories.yaml 文件中。

apiVersion: v1
generated: "2019-07-23T09:39:54.849920932+08:00"
repositories:
- caFile: ""
  cache: C:\Users\innerpeacez\.helm\repository\cache\stable-index.yaml
  certFile: ""
  keyFile: ""
  name: stable
  password: ""
  url: https://kubernetes-charts.storage.googleapis.com
  username: ""

出現下圖所示,就說明初始化完成了

1564152036983

安裝 kubectl

1.下載 kubectl windows 安裝包

2.設置path

這裡為了方便,我將 kubectl.exe 文件和 helm.exe 文件放在了同一個目錄,就不用設置兩次path了

3.配置 kubernetes config 文件,這個文件是你在 linux 伺服器上使用 kubectl 與kubernetes 交互的配置文件,我們只要在 linux 上找到 $HOME/.kube/config 文件,將其複製到windows 的$HOME/.kube/config ,即可,我的位置是 C:\Users\innerpeacez\.kube\config

4.測試 kubectl

1564213477567

通過 helm 部署應用到 kubernetes 中

配置好 helm 和 kuberctl 之後,我們還需要給helm 設置 conext ,因為 helm 3,的訪問 k8s 集群許可權是與 我們在 kubeconfig 設置的許可權是一致的

查看當前 context

kubectl config current-context

設置 context 指定我們需要部署應用對應的 namespace ,不指定使用的是 default

kubectl config set-context <current-context> --namespace test

部署應用

helm -n test install promethues .\prometheus\

出現以下內容就說明應用已經開始部署了

NAME: promethues
LAST DEPLOYED: 2019-07-27 15:53:30.4257149 +0800 CST m=+0.775545401
NAMESPACE: test
STATUS: deployed

NOTES:
The Prometheus server can be accessed via port 80 on the following DNS name from within your cluster:

.......

總結

本文主要講述了 windows 中我們怎麼通過 helm 與 kubernetes 進行交互,寫這篇文章是因為目前網上大部分介紹 windows 上使用 k8s 的都是在 windows 上使用 minikube 來玩的,還有就是為了方便調試 charts。希望可以幫助到你。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Linux網路——修改配置文件 摘要:本文主要學習瞭如何通過修改配置文件來設置網路參數。 配置文件 通過修改系統的配置文件為系統設置網路參數,這種方式的優點是可以永久保存,電腦重啟後仍然生效。缺點是這樣的設置不會立刻生效,需要重啟電腦或者相關服務才可以使其生效。 在Linux系統里,跟網路有關的 ...
  • 用vim打開文件,在第34行向右移動15字元,怎麼做? 34G 15 或者15j 如何到達文件的頁首或者頁尾? 1G或者gg G 如何在游標所在行中,移動到行頭及行尾? home end vim的一般命令模式下,按下r鍵有什麼用? 替換游標下的字元 將目前正在編輯的文件另存為新文件newfilena ...
  • linux是一個多用戶操作系統,用戶可以在不同的地方鏈接上LINUX伺服器。 在系統中我們可以用w或者who來查看用戶: [root@7273 ~]# who root pts/0 2019-04-17 20:45 (58.63.138.162) root pts/1 2019-05-5 22:2... ...
  • 1、查看本地分支:git branch 2、查看遠程分支:git branch -r 或 git branch --remote 3、查看本地和遠程的所有分支:git branch -a ...
  • Linux軟體安裝——服務管理的命令 摘要:本文主要學習了Linux系統中服務管理的命令。 service命令 service命令用於對系統服務進行管理,比如啟動(start)、停止(stop)、重啟(restart)、查看狀態(status)等。 service命令本身是一個shell腳本,它在/ ...
  • 系統控制根據 Hi35xx 晶元特性,完成硬體各個部件的複位、基本初始化工作,同時負責完成 MPP(Media Process Platform 媒體處理平臺)系統各個業務模塊的初始化、去初始化以及管理 MPP 系統各個業務模塊的工作狀態、提供當前 MPP 系統的版本信息、提供大塊物理記憶體管理等功能 ...
  • 0x00 大落 一件蠻坑爹的事情,複製了找了好久的內容合集,在回別人的信息的時候又進行了複製其他內容的操作,結果吾覆蓋了的上一次複製的內容…… 於是開始找找 macOS 有沒有粘貼板記錄的東西,然後在 訪達 中找到了 剪貼板 : 但是這個剪貼板只有當前複製/剪切的內容……再次淚奔 果然已經沒辦法找到 ...
  • 1. 概述 海思提供的媒體處理軟體平臺(Media Process Platform,簡稱 MPP),可支持應用軟體快速 開發。該平臺對應用軟體屏蔽了晶元相關的複雜的底層處理,並對應用軟體直接提供 MPI(MPP Program Interface)介面完成相應功能。該平臺支持應用軟體快速開發以下 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...