minikube 啟動一個 nginx 服務(wù) deployment

源地址:https://minikube.sigs.k8s.io/docs/start/

一裳涛。啟動minikube

minikube start    //默認啟動,可以加后面幾種參數(shù)端三,自己看環(huán)境選擇

2.驅(qū)動參數(shù)---指定驅(qū)動名稱

說明: 若要為 minikube start 設(shè)置 --vm-driver郊闯,在下面提到 <驅(qū)動名稱> 的地方, 用小寫字母輸入你安裝的 hypervisor 的名稱育拨。 指定 VM 驅(qū)動程序 列舉了 --vm-driver 值的完整列表熬丧。

minikube start --vm-driver=<驅(qū)動名稱>
sudo su - shitingbao
minikube start --vm-driver=<驅(qū)動名稱> --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
# 舉個例子
minikube start --vm-driver=none --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
//使用docker驅(qū)動要加這個參數(shù)
minikube start --driver=docker

注意:這里要注意的是析蝴,使用none參數(shù)需要你的root權(quán)限闷畸,如果你的vm-driver使用的docker腾啥,那就不能在root下運行冯吓,他會報要給錯誤组贺,這里不同的參數(shù)使用權(quán)限還不同失尖,這里使用none作為例子掀潮。

運行成功后會出現(xiàn)類似下面這個


image.png

如果不使用鏡像仪吧,就可能會出現(xiàn)下面這個無法拉取鏡像的問題


image.png

一旦 minikube start 完成薯鼠,你可以運行下面的命令來檢查集群的狀態(tài):

minikube status

如果你的集群正在運行,minikube status 的輸出結(jié)果應(yīng)該類似于這樣:

host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured

這里他會在docker中運行一些基本的容器羞芍,你可以在docker ps中看到一些正在運行的容器郊艘,大致是這樣


image.png

成功

做到這一步纱注,說明你的kubernetes已經(jīng)運行成功了奈附。接下來可以做一些其他操作。

1.下載對應(yīng)的 kubectl 工具(已經(jīng)是最新的 kubectl 可省略)

minikube kubectl -- get po -A

1.1 使用 kubectl create 命令創(chuàng)建管理 Pod 的 Deployment将鸵。該 Pod 根據(jù)提供的 Docker 鏡像運行 Container(下面用nginx鏡像做例子顶掉,不使用官方例子痒筒,因為親和一些),需要提前 docker pull nginx

kubectl create deployment hello-nginx --image=nginx:latest

這句話代表運行一個名稱為 hello-nginx 的 pod 內(nèi)為 nginx 鏡像的 Deployment

1.2 查看 Deployment:

kubectl get deployments

輸出結(jié)果類似于這樣:

NAME         READY   UP-TO-DATE   AVAILABLE   AGE
hello-node   1/1     1            1           1m

1.3 查看 Pod:

kubectl get pods

輸出結(jié)果類似于這樣:

NAME                          READY     STATUS    RESTARTS   AGE
hello-node-5f76cf6ccf-br9b5   1/1       Running   0          1m

1.5查看集群事件:

kubectl get events

1.6 查看 kubectl 配置:

kubectl config view

注意:默認情況下,Pod 只能通過 Kubernetes 集群中的內(nèi)部 IP 地址訪問解藻。 要使得hello-node容器可以從 Kubernetes 虛擬網(wǎng)絡(luò)的外部訪問螟左,你必須將 Pod 暴露為 Kubernetes Service

2. 使用 kubectl expose 命令將 Pod 暴露給公網(wǎng)

官方教程:https://kubernetes.io/zh/docs/tutorials/kubernetes-basics/expose/expose-interactive/

命令詳情地址:http://docs.kubernetes.org.cn/475.html
這個不同的 type 都可以 巷嚣,詳細區(qū)別去官方解釋看

kubectl expose deployment hello-nginx --type=NodePort --port=80 --target-port=80

注意:創(chuàng)建新服務(wù)并將其公開給外部通信廷粒,我們將使用帶有 NodePort 的expose命令作為參數(shù)(minikube還不支持LoadBalancer選項)评雌。

查看你創(chuàng)建的 Service:

kubectl get services

輸出結(jié)果類似于這樣:

NAME         TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
hello-node   LoadBalancer   10.108.144.78   <pending>     80:30369/TCP   21s
kubernetes   ClusterIP      10.96.0.1       <none>        443/TCP          23m

注意:

1.NodePort : 會隨機在服務(wù)器上選一個端口作為對應(yīng),這里默認的 nginx 的 80 端口指的是容器內(nèi)的砂轻,30369 是實際的服務(wù)器端口(外部訪問的端口)

對于支持負載均衡器的云服務(wù)平臺而言搔涝,平臺將提供一個外部 IP 來訪問該服務(wù)和措。 在 Minikube 上,LoadBalancer 使得服務(wù)可以通過命令 minikube service 訪問诬留。

查看 nginx 訪問地址

運行下面的命令:

minikube service hello-nginx(使用這個要注意外部的調(diào)用)
image.png

這里的這個地址就是你本地的地址,可以直接訪問試試


image.png

對應(yīng)宿主機的端口轉(zhuǎn)發(fā)

或者绿贞,使用kubectl轉(zhuǎn)發(fā)端口,將目標80 端口籍铁,就是上面那個容器實際的 nginx 端口關(guān)聯(lián)到 宿主機的 8080 上,外部直接訪問 8080 即可訪問該容器的nginx(curl
127.0.0.1:8080)拒名。注意: --address 0.0.0.0 是說都可以訪問靡狞,不加這個只能本地 127.0.0.1 訪問

kubectl port-forward --address 0.0.0.0 service/hello-nginx 8080:80

停止運行

在確認 Minikube 與 hypervisor 均正常工作后隔嫡,你可以繼續(xù)使用 Minikube 或停止集群腮恩。要停止集群秸滴,請運行:

minikube stop

清理本地狀態(tài)

如果你之前安裝過 Minikube募判,即使已經(jīng)停止了咒唆,再次運行 minikube start 會返回一個錯誤:

machine does not exist

那么全释,你需要清理 minikube 的本地狀態(tài)(因為已經(jīng)運行過會有上一次的信息浸船,下一次啟動需要先清理上一次的信息):

minikube delete
or
minikube delete --all

這時候再去運行start命令就可以正常啟動李命,也就是說箫老,執(zhí)行stop后需要執(zhí)行delete刪除,下次才能start阔籽。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市各薇,隨后出現(xiàn)的幾起案子峭判,更是在濱河造成了極大的恐慌林螃,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件完残,死亡現(xiàn)場離奇詭異谨设,居然都是意外死亡扎拣,警方通過查閱死者的電腦和手機二蓝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進店門踊跟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來百拓,“玉大人衙传,你說我怎么就攤上這事”痛罚” “怎么了地回?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長俊鱼。 經(jīng)常有香客問我刻像,道長,這世上最難降的妖魔是什么并闲? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任细睡,我火速辦了婚禮,結(jié)果婚禮上帝火,老公的妹妹穿的比我還像新娘溜徙。我一直安慰自己,他們只是感情好犀填,可當(dāng)我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布蠢壹。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪疏日。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天鹃唯,我揣著相機與錄音,去河邊找鬼。 笑死熄求,一個胖子當(dāng)著我的面吹牛逾苫,可吹牛的內(nèi)容都是我干的瑟押。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼枢纠,長吁一口氣:“原來是場噩夢啊……” “哼脓斩!你這毒婦竟也來了吗讶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤愤钾,失蹤者是張志新(化名)和其女友劉穎杂瘸,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡六剥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片庞瘸。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡葛家,死狀恐怖刃榨,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏建炫。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧眶熬,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽片酝。三九已至审轮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間薄疚,已是汗流浹背街夭。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工埃碱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留砚殿,地道東北人似炎。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓岸晦,卻偏偏與公主長得像邢隧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,577評論 2 353