技术干货

minikube安装

2020-03-07  本文已影响0人  王强儿

阅读官网的minikube安装手册,最简单方法是下载.exe进行安装,安装virtual-box,同时指定vm-driver为virtual-box。安装过程会下载ISO镜像,建立一个虚拟机,在虚拟机内搭建一个kubernetes单机环境,可以进行实验。

此过程本来是平滑的,但是由于GFW的存在,下载会异常艰难,代理是必须的(代理的配置方法略去)。

安装的指令

install kubectl
VirtualBox
minikube-installer.exe
minikube start --vm-driver=virtualbox
minikube dashboard

还有一种方法是手动安装好虚拟机,然后安装docker,dirver指定为none,也可以搭建一个简单的单机环境,这个过程也需要代理进行下载 。拉去docker镜像也会遇到问题,因为镜像在Google的网站托管的,配置docker的代理也是需要的(Linux和docker代理的方法也略去,也有手动下载镜像的例子,但是镜像太多,留给不能用代理但是有耐心的同志)。这种方法是我推荐的,会遇到dashboard不能启动的问题,但是其他的功能可以正常使用。

安装最大的问题是网络,当然搜索到的文章也需要仔细阅读和判断。

docker dirver

在虚拟机内容安装minikube。

https_proxy=<my proxy> 
minikube start --driver=none --docker-env http_proxy=<my proxy> --docker-env https_proxy=<my proxy> --docker-env no_proxy=192.168.99.0/24

创建deployment和svc

kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.10
kubectl expose deployment hello-minikube --type=NodePort --port=8080

查看pod和svc

kubectl get pod
minikube service hello-minikube

Hello app

创建一个简单的应用测试一下。

minikube/server.js

var http = require('http');

var handleRequest = function(request, response) {
  console.log('Received request for URL: ' + request.url);
  response.writeHead(200);
  response.end('Hello World!');
};
var web = http.createServer(handleRequest);
web.listen(8080);

minikube/Dockerfile

FROM node:6.14.2
EXPOSE 8080
COPY server.js .
CMD [ "node", "server.js" ]

biild image

构建docker镜像,已备后面使用。

docker build -t xx .
docker images

controllers/xx-deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: xx-deployment
  labels:
    app: node
spec:
  replicas: 3
  selector:
    matchLabels:
      app: node
  template:
    metadata:
      labels:
        app: node
    spec:
      containers:
      - name: xx
        image: xx
        imagePullPolicy:IfNotPresent
        ports:
        - containerPort: 8080

YAML file deployment

将上面的配置写入文件,部署run起来。

kubectl apply -f xx.deploy.yaml

然后创建service(svc),查看service访问URL看到Hello world。

删除svc和deployment

kubectl delete services hello-minikube
kubectl delete deployment hello-minikube

集群查看状态,停止

查看执行的步骤,状态。如果发生错误,也可以干掉集群。

kubectl get events
minikube status
minikube stop
minikube delete

结语

至此一个简单的环境就搭建完毕,可以进行测试了。

上一篇下一篇

猜你喜欢

热点阅读