k8s之minikube搭建
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.
本文主要介紹在mac中安裝minikube,使用minikube啟動k8s
安裝 Minikube
- 首先保證你的電腦BIOS開啟了VT-x或者AMD-v虛擬化支援
- 安裝Virtual Box
> brew cask install virtualbox
- 安裝kubectl
> brew install kubectl
> kubectl version
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.1", GitCommit:"3a1c9449a956b6026f075fa3134ff92f7d55f812", GitTreeState:"clean", BuildDate:"2018-01-04T19:58:48Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.0", GitCommit:"0b9efaeb34a2fc51ff8e4d34ad9bc6375459c4a4", GitTreeState:"clean", BuildDate:"2017-11-29T22:43:34Z", GoVersion:"go1.9.1", Compiler:"gc", Platform:"linux/amd64"}
#啟用autocompletion,對於zsh或者使用了oh-my-zsh
> source <(kubectl completion zsh)
- 安裝minikube
下載minikube,在這裡使用的是最新發布版本0.24.1,下載好之後,加入到path下
> mv minikube-darwin-amd64 /usr/local/bin/minikube
> chmod +x /usr/local/bin/minikube
> minikube version
minikube version: v0.24.1
5.啟動
5.1minikube start
如果正常的話,到這裡已經安裝成功了,可惜。。
5.2 出現的第一個錯誤,是提示minikube-v0.23.6.iso和localkube-v1.8.0這個檔案無法下載,猜測是被牆的原因,這裡的解決方式是
> wget https://storage.googleapis.com/minikube/iso/minikube-v0.23.6.iso
> mv ~/Downloads/minikube-v0.23.6.iso ~/.minikube/cache/iso
> wget https://storage.googleapis.com/minikube/k8sReleases/v1.8.0/localkube-linux-amd64
> mv ~/Downloads/localkube-linux-amd64 .minikube/cache/localkube/localkube-v1.8.0
再重新執行啟動沒有報錯了,輸出如下
> minikube start
Starting local Kubernetes v1.8.0 cluster...
Starting VM...
Getting VM IP address...
Moving files into cluster...
Setting up certs...
Connecting to cluster...
Setting up kubeconfig...
Starting cluster components...
Kubectl is now configured to use the cluster.
Loading cached images from config file.
5.3 執行hello-minikube
> kubectl run hello-minikube --image=k8s.gcr.io/echoserver:1.4 --port=8080
deployment "hello-minikube" created
> kubectl get pod
NAME READY STATUS RESTARTS AGE
hello-minikube-7844bdb9c6-zwcnr 0/1 ContainerCreating 0 0s
貌似看起來一切正常,可惜等了10幾分鐘狀態依然是ContainerCreating,看了下日誌
> minikube logs
這裡截圖沒有了。。,大概的意思就是無法從https://gcr.io/v2/下載image,肯定也是牆的問題,我目前的mac環境使用的shadowsocks翻的但是終端沒法直接使用它,需要配置一下,另外由於ss採用的socks5協議,所以還需要轉換下,所以先安裝了privoxy,並配置了下,我本機開的代理埠在1080,ip地址不要用127.0.0.1或者localhost,否則minikube起來後還是無法使用,具體配置如下
> brew install privoxy
#修改的配置
forward-socks5t / 127.0.0.1:1080 .
listen-address 192.168.94.1:8118
#啟動
> privoxy /usr/local/etc/privoxy/config
啟動好之後先校驗下,使用curl加代理訪問之前的網址測試下
> curl -x http://192.168.94.1:8118 "https://gcr.io/v2/" -v
好了之後,更改啟動命令,配置minikube使用代理,NO_PROXY的作用是對於192.168.99.0/24該網段的地址不要走代理,原因是minikube內部啟動的容器使用該網段,都代理就不會通了
minikube start --docker-env HTTP_PROXY=http://192.168.94.1:8118 --docker-env HTTPS_PROXY=http://192.168.94.1:8118 --docker-env NO_PROXY=192.168.99.0/24
好,一切就緒之後,再來看看pod的狀態
> kubectl get pod
NAME READY STATUS RESTARTS AGE
hello-minikube-7844bdb9c6-zwcnr 1/1 Running 0 1h
狀態已經正常
5.4 暴露埠
可以發現hello-minikube服務已經暴露
> kubectl expose deployment hello-minikube --type=NodePort
> minikube service hello-minikube --url
http://192.168.99.100:31158
5.5 測試
> curl "http://192.168.99.100:31158"
CLIENT VALUES:
client_address=172.17.0.1
command=GET
real path=/
query=nil
request_version=1.1
request_uri=http://192.168.99.100:8080/
SERVER VALUES:
server_version=nginx: 1.10.0 - lua: 10001
HEADERS RECEIVED:
accept=*/*
host=192.168.99.100:31158
user-agent=curl/7.43.0
BODY:
-no body in request-%
到此ok了
相關文章
- 使用minikube快速搭建k8s環境K8S
- 虛擬機器使用minikube搭建k8s叢集虛擬機K8S
- minikube && k8s 命令K8S
- Kubernetes入門,使用minikube 搭建本地k8s 環境K8S
- 極速安裝和體驗k8s(Minikube)K8S
- k8s之DNS伺服器搭建K8SDNS伺服器
- 入門Kubernetes-minikube本地k8s環境K8S
- minikube
- 國內在Minikube上搭建Knative及示例演示
- 比Minikube更快,使用Kind快速建立K8S學習環境K8S
- 基於minikube快速搭建kubernetes單節點環境
- vmware搭建K8sK8S
- K8S學習教程(一):使用PetaExpress雲伺服器安裝Minikube 叢集K8SExpress伺服器
- minikube部署Traefik【2】
- kubeadm 搭建 K8sK8S
- k8s搭建和使用K8S
- k8s環境搭建K8S
- 搭建高可用k8sK8S
- K8S安全學習之叢集搭建&基本概念理解K8S
- 2019最新k8s叢集搭建教程 (centos k8s 搭建)K8SCentOS
- Mac + Docker + K8S 本地搭建K8S叢集MacDockerK8S
- 10分鐘搭建k8sK8S
- 【Kubernetes學習筆記】-使用Minikube快速部署K8S單機學習環境筆記K8S
- 教你如何搭建K8S叢集。K8S
- k8s——搭建叢集環境K8S
- minikube windows hyperx填坑記Windows
- Linux安裝minikube指南Linux
- k8s之SecretK8S
- 在K8S上搭建Redis叢集K8SRedis
- Kubeadm方式搭建K8S叢集K8S
- k8s叢集搭建--kubeadm方式K8S
- openEuler搭建k8s(1.28.2版本)K8S
- 簡單的方式搭建k8s叢集K8S
- 高階k8s HA 叢集搭建(一)K8S
- 單機版搭建kubernetes(K8s)K8S
- 使用kind快速搭建本地k8s叢集K8S
- 從零搭建K8S測試叢集K8S
- k8s之deployment詳解K8S