Windows 使用 helm3 和 kubectl
简介:
主要原因是,我不会 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
- 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: ""
出现下图所示,就说明初始化完成了
安装 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
通过 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: deployedNOTES:
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。希望可以帮助到你。
- 点击查看我的Github
- 点击查看我的个人Blog
- 日拱一卒,不期速成
Windows 使用 helm3 和 kubectl的更多相关文章
- windows kubectl 远程操作k8s
在windows 电脑上配置kubectl远程操作kubernetes 一.下载windows版的kubectl可执行文件 下载地址 二.创建.kube 建议使用git bash cd ~ mkdir ...
- Kubernetes实践技巧:Windows 系统最佳实践
有部分同学是使用的 Windows 系统,我们的直播课程也是在 Windows 系统下面进行的,然后通过 SSH 方式连接到 服务器上面操作 Kubernetes,由于对 vim 不是很熟悉,所以又通 ...
- K8s集群认证之RBAC
kubernetes认证,授权概括总结: RBAC简明总结摘要:API Server认证授权过程: subject(主体)----->认证----->授权[action(可做什么)]--- ...
- 使用RKE快速部署k8s集群
一.环境准备 1.1环境信息 IP地址 角色 部署软件 10.10.100.5 K8s Master Etcd.Control 10.10.100.17 K8s Worker1 Worker 10.1 ...
- kubectl windows
https://storage.googleapis.com/kubernetes-release/release/v1.10.3/bin/windows/amd64/kubectl.exe
- [k8s]kubectl windows配置(kubernetic) && kubectl config set-context使用Kubernetic
参考: https://feisky.gitbooks.io/kubernetes/components/kubectl.html https://kubernetes.io/docs/tasks/t ...
- kubectl工具的windows安装方法
1.首先安装Chocolatey 参考:https://chocolatey.org/install#install-with-powershellexe windows7+以上操作系统的cmd sh ...
- Kubernetes 1.14发布:对Windows节点的生产级支持、Kubectl更新与持久本地卷通用版本已全面到来
今天,我们高兴地宣布Kubernetes 1.14版本的正式亮相,这亦是我们在2019年当中进行的首次发布!Kubernetes 1.14版本由31项增强功能组成,具体包括:10项稳定版功能,12项b ...
- 使用choco 在windows 环境安装kubectl 并配置
首先安装choco #以管理员身份运行cmd命令 @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -N ...
随机推荐
- pytorch实现yolov3(3) 实现forward
之前的文章里https://www.cnblogs.com/sdu20112013/p/11099244.html实现了网络的各个layer. 本篇来实现网络的forward的过程. 定义网络 cla ...
- 10分钟实现Typora(markdown)编辑器
本章主要内容: 介绍我们将在接下来的几章中构建的应用程序 配置我们的CSS样式表,使其看起来更像一个本机应用程序 回顾在Electron中主进程和渲染器进程之间的关系 为我们的主进程和渲染器进程实现基 ...
- Java类库的源码
Java类库中的类,包括System.String.Scanner.Math.Random等:这些类也是用Java编写的. Java类库中包含数千个文件,其中的很多文件都包含数千行代码:因为Java类 ...
- 深入理解Java类加载
本文目的: 深入理解Java类加载机制; 理解各个类加载器特别是线程上下文加载器; Java虚拟机类加载机制 虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验.转换解析和初始化,最 ...
- c++指针经典题目分析
首先看一下题目,下列程序会在那一行崩溃,程序如下: #include<iostream> using namespace std; struct S{ int i; int *p; }; ...
- mysql 免安装版本 与问题记录
将文件解压到D盘, 创建 my.ini 配置文件, ------------------复制进去--------------------- [client] port=3306 default-cha ...
- java高并发系列 - 第6天:线程的基本操作
新建线程 新建线程很简单.只需要使用new关键字创建一个线程对象,然后调用它的start()启动线程即可. Thread thread1 = new Thread1(); t1.start(); 那么 ...
- bzoj1052 9.20考试 第二题 覆盖问题
1052: [HAOI2007]覆盖问题 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2004 Solved: 937[Submit][Statu ...
- 判断小端大端(C实现)
C程序中的大端小端概念可以参见上一篇文章 如何区分小端和大端.本文重点讨论如何用C程序来判断当前系统是大端还是小端. 判断大端小端的程序如下: #include <stdio.h> int ...
- mplayer+ffmpeg 组合截图
mplayer截图的优点:对于一个时长很长的视频,可以任意指定一个时间点截图,mplayer会直接跳到这个时间点开始解码截图: 缺点:由于是直接跳到指定的时间点,也就是直接跳过了之前的帧,这样解码出来 ...