kubernetes实践(一)MAC OS系统下minikube的安装及使用

By prince No comments

安装依赖

docker,virtualbox,请参考这2个软件的安装教程文章

MAC OS系统下Vagrant的安装及使用

Docker系列(一)-MAC OS/CENTOS7系统下docker的安装及使用

开始安装

1.安装kubectl 核心操作管理命令

brew install kubernetes-cli

2.安装minikube

brew cask install minikube

3.配置minikube环境变量

因为设置了代理,所以先要导入环境变量

export HTTP_PROXY=http://127.0.0.1:1087
export HTTPS_PROXY=https://127.0.0.1:1087
export NO_PROXY=localhost,127.0.0.1,10.96.0.0/12,192.168.99.0/24,192.168.39.0/24
  • 192.168.99.0/24: Used by the minikube VM. Configurable for some hypervisors via --host-only-cidr
  • 192.168.39.0/24: Used by the minikube kvm2 driver.
  • 10.96.0.0/12: Used by service cluster IP’s. Configurable via --service-cluster-ip-range
export HTTP_PROXY命令是添加命令行http代理,主要是为了让minikube可以在命令行通过proxy去下载相关文件 
export HTTPS_PROXY是添加命令行https代理,主要是为了让minikube可以在命令行通过proxy去下载相关文件 
export NO_PROXY,设置命令行中不使用代理的地址段

NO_PROXY的作用是对于192.168.99.0/24该网段的地址不要走代理,原因是minikube内部启动的容器使用该网段,都代理就不会通了

这里默认使用virtualbox构建,若使用其他虚拟机可用参数,如下

--vm-driver=virtualbox

若设置默认虚拟机,如下

minikube config set vm-driver virtualbox

4.启动minikube虚拟机

minikube start 
--docker-env http_proxy=http://127.0.0.1:1087 
--docker-env https_proxy=http://127.0.0.1:1087 
--docker-env no_proxy=localhost,127.0.0.1,10.96.0.0/12,192.168.99.0/24,192.168.39.0/24 
--log_dir=tmp 
--cpus 4 
--memory 8192

参数命令解释

-docker-env http_proxy...,设置虚拟机中docker daemon的环境变量,这里的环境变量http_proxy表示虚拟机中docker daemon使用的http代理

-docker-env http_proxy...,设置虚拟机中docker daemon的环境变量,这里的环境变量https_proxy表示虚拟机中docker daemon使用的https代理

--docker-env no_proxy,设置虚拟机中docker daemon不使用代理的地址段

--log_dir=tmp,设置minikube的日志存储位置,这里是当前目录下的tmp文件夹。该目录下会出现INFO和ERROR的日志,INFO是一定会有,ERROR是出错的时候才有。比如

--cpus 4,设置虚拟机的cpu核数

--memory 8192,设置虚拟机的内存大小,单位为M

--v= ,设置log级别的

--v=0 INFO level logs
--v=1 WARNING level logs
--v=2 ERROR level logs
--v=3 libmachine logging
--v=7 libmachine 
--debug level logging
比如:minikube --v=2就是ERROR level logs

下载过程

下载minikube iso,存储位置为~/.minikube/cache/iso/minikube-v1.3.0.iso

下载kubernetes依赖的docker镜像,存储位置为

~/.minikube/cache/images/k8s.gcr.io
coredns_1.3.1
etcd_3.3.10
k8s-dns-dnsmasq-nanny-amd64_1.14.13
k8s-dns-kube-dns-amd64_1.14.13
k8s-dns-sidecar-amd64_1.14.13
kube-addon-manager_v9.0
kube-apiserver_v1.15.2
kube-controller-manager_v1.15.2
kube-proxy_v1.15.2
kube-scheduler_v1.15.2
kubernetes-dashboard-amd64_v1.10.1
pause_3.1
~/.minikube/cache/images/gcr.io/k8s-minikube
storage-provisioner_v1.8.1

下载kubeadm,存储位置为~/.minikube/cache/v1.15.2/kubeadm

下载kubelet,存储位置为~/.minikube/cache/v1.15.2/kubelet

创建并启动虚拟机 将需要的文件拷入虚拟机

使用kubeadm安装kubernetes kubeadm启动镜像

5.运行使用minikube虚拟机

查看版本

kubectl version

进入minikube虚拟机

minikube ssh
显示minikube的日志
minikube logs
启动minikube监控
minikube dashboard

显示minikube虚拟机的ip

minikube ip

启动minikube虚拟机

minikube start

停止minikube虚拟机

minikube stop

删除minikube虚拟机

minikube delete

6.进入docker容器

查询docker镜像
docker images
查询docker容器
docker ps

7.kubernetes相关操作

获取所有命名空间中的所有Pod的信息

kubectl get pods --all-namespaces

获取k8s系统的组件

kubectl get pods -n kube-system
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system coredns-6955765f44-6fd8j 1/1 Running 3 13m
kube-system coredns-6955765f44-928l8 1/1 Running 1 6m10s
kube-system etcd-minikube 1/1 Running 3 13m
kube-system kube-apiserver-minikube 1/1 Running 3 13m
kube-system kube-controller-manager-minikube 1/1 Running 4 13m
kube-system kube-proxy-cgkwf 1/1 Running 3 13m
kube-system kube-scheduler-minikube 1/1 Running 3 13m
kube-system storage-provisioner 1/1 Running 4 13m

8.出现到问题

$ minikube dashboard
🤔  Verifying dashboard health ...
🚀  Launching proxy ...
🤔  Verifying proxy health ...
💣  http://127.0.0.1:49839/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/ is not accessible: Temporary Error: unexpected response code: 503
Temporary Error: unexpected response code: 503
Temporary Error: unexpected response code: 503
Temporary Error: unexpected response code: 503

解决方案

删除,重新启动

minikube delete -p minikube  
minikube start

发表评论

 

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据