如何在本地快速启动一个k8s集群?小技巧,学到了

最近在阅读《每天5分钟玩转Kubernetes》 这本书,个人感觉是一本不错的 K8S 的入门书籍。

我们在刚开始学习一项技术的时候,不论是通过官方文档、书籍,亦或是视频的形式,如果仅仅是去看,而不去练习实践的话,那么是很难将其真正应用起来的。

然而当我开始准备实践的时候,发现要想在本地将 K8S 跑起来,并不像我们想象的那么容易。存在以下几点「问题」:

那么有没有什么方案可以更优雅更轻量更快速搭建一个 K8S 集群呢?答案就是 k3d。

其实有很多种方式可以在本地运行 k8s,比如:

当然了,如果只是学习 k8s 的使用,那么以上方案均可以使用。

k3s 包括以下一些组件:

k3s 是一种模块化的发行版,可以很方便的替换上面的组件。

在 Mac 下,使用 Homebrew 可以很方便的安装 k3d: brew install k3d。

顺手安装一下 kubectl 和 kubecm:

我们通过 k3d 的命令可以轻易的在本地启动一个或 N 个 k8s 集群。

首先我们尝试创建一个 1主2从 的集群:

初次创建可能会比较慢,因为会从 Docker 仓库拉取最新的 rancher/k3s 镜像。

当出现下面的日志时,k8s 集群就创建成功了

此时,我们按照日志提示,运行 kubectl cluster-info 查看下当前集群的信息:

运行 kubectl get nodes 查看下当前集群的节点情况:

注意,这里的“节点”其实是本机 Docker 运行的容器,通过 docker ps 查看下当前本机运行的容器吧

解释一下我们创建集群时配置的端口映射:

现在我们集群和主机的网络通信是这样子的:

创建一个 nginx 的 Deployment

创建一个 Service 通过 ClusterIP 的方式暴露服务

创建一个 Ingress,k3s 默认安装的是 traefik 1.x 作为 Ingress Controller

此时,打开浏览器,访问 http://localhost:8080/ 就可以看到熟悉的 nginx 默认页。

这是不是太酷了~

当使用 Helm Chart 安装 Rancher 时,可能会出现如下错误日志:

要创建一个 k8s 版本号为 v1.19.8-k3s1 的 k8s 集群,可以在创建集群的命令后面加 --image 参数,指定版本号:k3d cluster create first-cluster xxxxx --image rancher/k3s:v1.19.8-k3s1

还记得在第二步顺手安装的 kubecm 吗?

当我们在本地使用 k3d 创建了多个集群之后,我们可以通过 kubecm 快速切换 context。

  • 濡備綍鍦ㄦ湰鍦板揩閫熷惎鍔ㄤ竴涓猭8s闆嗙兢?灏忔妧宸,瀛﹀埌浜
    绛旓細鎴戜滑閫氳繃 k3d 鐨勫懡浠ゅ彲浠ヨ交鏄撶殑鍦ㄦ湰鍦板惎鍔ㄤ竴涓垨 N 涓 k8s 闆嗙兢銆傞鍏堟垜浠皾璇曞垱寤轰竴涓 1涓2浠 鐨勯泦缇わ細鍒濇鍒涘缓鍙兘浼氭瘮杈冩參锛屽洜涓轰細浠 Docker 浠撳簱鎷夊彇鏈鏂扮殑 rancher/k3s 闀滃儚銆傚綋鍑虹幇涓嬮潰鐨勬棩蹇楁椂锛宬8s 闆嗙兢灏卞垱寤烘垚鍔熶簡 姝ゆ椂锛屾垜浠寜鐓ф棩蹇楁彁绀猴紝杩愯 kubectl cluster-info 鏌ョ湅涓嬪綋鍓嶉泦缇ょ殑淇...
  • 浣跨敤k3d 鍦ㄦ湰鍦拌繍琛 k8s
    绛旓細浣跨敤 k3d cluster create 鍛戒护鍗冲彲鏂板缓闆嗙兢锛屽悓鏍 k3d 涔熸敮鎸侀氳繃鍛戒护琛岄夐」浼犲叆鏇村鐨勫彲閫夊弬鏁帮紝姝ゅ锛屼篃鍙互缁忕敱涓涓 YAML 閰嶇疆鏂囦欢鏉ョ粺涓杩涜閰嶇疆銆備笅闈㈡垜浠噸鐐逛粙缁嶄互涓嬪悗鑰呯殑鍚姩鏂瑰紡銆傛柊寤轰竴涓 YAML 鏍煎紡鐨勯厤缃枃浠 mycluster.yaml 濡備笅锛氫笂闈㈢殑閰嶇疆鏂囦欢鎸囧畾浜嗛泦缇ょ殑鍚嶇О銆侀泦缇ょ殑鑺傜偣涓暟锛坰erve...
  • K3s鍜K8s鐨勪娇鐢ㄥ満鏅疜3s涓嶬8s閫傜敤鍦烘櫙涓瑙
    绛旓細K3s 鍏锋湁鏈浣庣殑纭欢瑕佹眰锛岄傜敤浜庤祫婧愬彈闄愮殑鐜锛岃繖浜涚幆澧冩棤娉曞绾虫爣鍑嗙殑 K8s 闆嗙兢銆侹3s 鏀惧純浜嗚濡 etcd 涔嬬被鐨勭粍浠讹紝鑰岄夋嫨浜嗘洿灏忕殑鏇夸唬鏂规锛岃繖鎰忓懗鐫 K3s 鍙互閫傚簲 IoT 鍜岃竟缂樿澶囥傚悓鏃讹紝K3s 涔熸槸鍦ㄥ紑鍙戞祴璇曠幆澧冧腑杩愯鏈湴 Kubernetes 闆嗙兢鐨勭悊鎯宠В鍐虫柟妗堛傚伐绋嬪笀鍙互鍦ㄥ嚑绉掗挓鍐蹇熷惎鍔鑷繁鐨勭幆澧...
  • Kubernetes Operator 蹇鍏ラ棬鏁欑▼(Operator 101)
    绛旓細濡傛灉鎴戜滑鏈湴鏈変竴涓鍙互璁块棶鐨 Kubernetes 闆嗙兢,鎴戜滑涔熷彲浠ョ洿鎺ヨ繘琛岃皟璇,鍦ㄦ湰鍦鐢ㄦ埛~/.kube/config鏂囦欢涓厤缃泦缇よ闂俊鎭,涓嬮潰鐨勪俊鎭〃鏄庡彲浠ヨ闂 Kubernetes 闆嗙兢: 棣栧厛,鍦ㄩ泦缇や腑瀹夎 CRD 瀵硅薄: 涓婇潰鐨勫懡浠や細鍦ㄦ湰鍦拌繍琛 Operator 搴旂敤,閫氳繃~/.kube/config鍘诲叧鑱旈泦缇や俊鎭,鐜板湪鎴戜滑鍘绘坊鍔犱竴涓 AppService 绫诲瀷鐨勮祫婧...
  • 鐜板湪澶у閮藉湪璇寸殑浜戝師鐢熷埌搴曟槸浠涔?
    绛旓細瀹瑰櫒鐨勫熀鏈濇兂灏辨槸灏嗛渶瑕佹墽琛岀殑鎵鏈夎蒋浠舵墦鍖呭埌涓涓鍙墽琛岀▼搴忓寘銆備緥濡傦紝灏嗕竴涓狫ava铏氭嫙鏈恒乀omcat鏈嶅姟鍣ㄤ互鍙婂簲鐢ㄧ▼搴忔湰韬墦鍖呰繘涓涓鍣ㄩ暅鍍忋傜敤鎴峰彲浠ュ湪鍩虹璁炬柦鐜涓娇鐢ㄨ繖涓鍣ㄩ暅鍍鍚姩瀹瑰櫒骞惰繍琛屽簲鐢ㄧ▼搴忋傝孌ocker鏄洰鍓嶅簲鐢ㄦ渶涓哄箍娉涚殑瀹瑰櫒寮曟搸锛屽鍣ㄥ寲涓哄井鏈嶅姟鎻愪緵瀹炴柦淇濋殰锛岃捣鍒板簲鐢ㄩ殧绂讳綔鐢紝K8S鏄...
  • 鍏充簬澶氫簯绠$悊,浼佷笟闇瑕佺煡閬撲粈涔堝唴瀹?
    绛旓細棣栧厛,澶氫簯鎴樼暐鏋佸ぇ鍦板鍔犱簡绠$悊浼佷笟璐拱鐨勬湇鍔″寘鐨勫鏉傛с傞鍏,鍦ㄦ垚鏈帶鍒舵柟闈,鎴愭湰鍙樺緱瓒婃潵瓒婁笉閫忔槑,瓒婃潵瓒婇毦浠ラ娴嬨傜壒鍒槸,鍦ㄨ蒋浠惰鍙殑閫昏緫涓,鎴戜滑杞悜浜嗚冭檻澶氫釜鎻愪緵鍟嗘寜闇浠樿垂鐨勬ā鍨嬨 鍏舵,杩樻湁涓涓綉缁滃畨鍏ㄩ棶棰,濡傛灉娌鏈変竴涓灏嗘彁渚涚殑鍚勭鏈嶅姟绱у瘑闆嗘垚鍦ㄤ竴璧风殑鍛ㄥ瘑璁″垝,浠庡浜戠殑瑙掑害鏉ョ湅,鍑犱箮鏃犳硶瑙e喅缃戠粶瀹夊叏...
  • 姹傞棶缁熶俊鐨勩愭湁鐕昒Swift銆戞湁鍟ュ姛鑳?
    绛旓細5.1. 蹇閮ㄧ讲,寮绠卞嵆鐢ㄧ粺淇′簯鍘熺敓鎿嶄綔绯荤粺鍩轰簬缁熶俊鏈嶅姟鍣ㄦ搷浣滅郴缁 V20,杩涜浜屾寮鍙,鍙揩閫熼儴缃插鍣ㄤ腑鐨勯泦缇ょ幆澧冦備緥濡,缁熶俊浜戝師鐢熸搷浣滅郴缁熷彲鎸夌収鐢ㄦ埛闇姹傚湪涓鍒嗛挓鍐呭揩閫熸媺鍙涓涓 K8S 搴旂敤闆嗙兢,鏃犻渶鍗曠嫭閰嶇疆搴旂敤銆佷腑闂翠欢銆佹暟鎹簱绛変俊鎭傜粺淇′簯鍘熺敓鎿嶄綔绯荤粺杩樻彁渚涜嚜鍔ㄦ瀯寤洪暅鍍忚兘鍔,鍐呯疆鐏板害鍙戝竷,娴侀噺鎺у埗,鐜闅旂,搴旂敤...
  • 扩展阅读:k8手机经典网 ... wifi提速只需一个设置 ... k82手机经典版入口 ... 苹果手机快速启动在哪 ... k82经典电网 ... k8线经典网 ... 经典k8线理论 ... k8s编程入门教程 ... k82手机经典版最新款2023 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网