在VMware ubuntu 18.04虚拟机上安装 minikube
虚拟机:VmWare Ubuntu 18.04 server版本,配置要求:
- 2 CPUs or more
- 2GB of free memory
- 20GB of free disk space
- Internet connection
- Container or virtual machine manager, such as: Docker, Hyperkit, Hyper-V, KVM, Parallels, Podman, VirtualBox, or VMWare
- 打开 VT-X/AMD-v 虚拟化功能
先安装虚拟机,virtualbox
sudo apt install virtualbox virtualbox-ext-pack
下载minikube的执行文件
wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
增加可执行权限
sudo chmod +x minikube-linux-amd64
将usr/local/bin在path下面,所以将minikube直接放在这下面
sudo mv minikube-linux-amd64 /usr/local/bin/minikube
安装好之后,可以执行下命令看下是否成功
[email protected]:/etc/apt/sources.list.d$ minikube version
minikube version: v1.14.2
commit: 2c82918e2347188e21c4e44c8056fc80408bce10
安装kubectl
下载需要安装key,两种方式,一种是直接下载,不过国内基本不会成功,所以使用第二种,
第一种:直接安装
安装kubelet 这儿是安装key
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg| sudo apt-key add -
第二种:使用文件安装
将文件解压开,上传到虚拟机然后执行下面命令进行安装
apt-key add apt-key.gpg
接下来安装kubectl,
这儿需要创建文件,添加国内镜像源,国外的不要想,除非你有*
添加国内镜像源
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb http://mirrors.ustc.edu.cn/kubernetes/aptkubernetes-xenial main
EOF
更新&安装kubectl
sudo apt update
sudo apt -y install kubectl
安装完成之后,查看版本号
[email protected]:/etc/apt/sources.list.d$ kubectl version -o json
{
"clientVersion": {
"major": "1",
"minor": "18",
"gitVersion": "v1.18.5",
"gitCommit": "e6503f8d8f769ace2f338794c914a96fc335df0f",
"gitTreeState": "clean",
"buildDate": "2020-06-26T03:47:41Z",
"goVersion": "go1.13.9",
"compiler": "gc",
"platform": "linux/amd64"
}
}
The connection to the server localhost:8080 was refused - did you specify the right host or port? 这个先不用管。
设置kubelet不要跟随系统更新而更新
sudo apt-mark hold kubelet
启动minikube,此处出现一个问题,虚拟化功能未打开
[email protected]:~$ minikube start
* minikube v1.14.2 on Ubuntu 18.04
* Automatically selected the virtualbox driver
X The requested memory allocation of 1946MiB does not leave room for system overhead (total system memory: 1946MiB). You may face stability issues.
* Suggestion: Start minikube with less memory allocated: 'minikube start --memory=1946mb'
* Starting control plane node minikube in cluster minikube
* Creating virtualbox VM (CPUs=2, Memory=1946MB, Disk=20000MB) ...
! StartHost failed, but will try again: creating host: create: precreate: This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory
* Creating virtualbox VM (CPUs=2, Memory=1946MB, Disk=20000MB) ...
* Failed to start virtualbox VM. Running "minikube delete" may fix it: creating host: create: precreate: This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory
X Exiting due to HOST_VIRT_UNAVAILABLE: Failed to start host: creating host: create: precreate: This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory
* Suggestion: Virtualization support is disabled on your computer. If you are running minikube within a VM, try '--driver=docker'. Otherwise, consult your systems BIOS manual for how to enable virtualization.
* Related issues:
- https://github.com/kubernetes/minikube/issues/3900
- https://github.com/kubernetes/minikube/issues/4730
虚拟机在硬件设置中修改一下就可以,如果是在台式机上需要进BIOS中的Virtualzation进行设置
如果再启动时,报CPU不支持,可以将【虚拟化CPU性能计数器】关闭
修改好之后,保存,再启动
[email protected]:~$ minikube start * minikube v1.14.2 on Ubuntu 18.04 * Using the virtualbox driver based on existing profile * Starting control plane node minikube in cluster minikube * Creating virtualbox VM (CPUs=2, Memory=1946MB, Disk=20000MB) ... ! This VM is having trouble accessing https://k8s.gcr.io * To pull new external images, you may need to configure a proxy: https://minikube.sigs.k8s.io/docs/reference/networking/proxy/ * Preparing Kubernetes v1.19.2 on Docker 19.03.12 ... * Verifying Kubernetes components... * Enabled addons: storage-provisioner, default-storageclass * Done! kubectl is now configured to use "minikube" by default
启动失败,这儿使用阿里的仓库代替一下
先使用minikube stop停止刚才已经启动的minikube然后再次执行start
minikube start --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
成功
!
可以进行的操作:
Pause Kubernetes without impacting deployed applications:
minikube pause
Halt the cluster:
minikube stop
Increase the default memory limit (requires a restart):
minikube config set memory 16384
Browse the catalog of easily installed Kubernetes services:
minikube addons list
Create a second cluster running an older Kubernetes release:
minikube start -p aged --kubernetes-version=v1.16.1
Delete all of the minikube clusters:
minikube delete --all