vmware虚拟机 centos7服务器
判断开启虚拟化
egrep '(vmx|svm)' /proc/cpuinfo
关闭防火墙
systemctl stop firewalld && sudo systemctl disable firewalld
安装virtualbox
wget -P /etc/yum.repos.d http://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo
yum search VirtualBox
yum install VirtualBox-5.2
yum install kernel-headers kernel-devel
sudo /sbin/vboxconfig 编译minikube使用的驱动
下载kubectl与minikube
终端代理下载
export http_proxy=http://192.168.199.190:1080
export https_proxy=http://192.168.199.190:1080
curl www.google.com 测试是否代理成功
//kubectl
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
ip_resolve=IPv4
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
yum install -y kubectl
//minikube
curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.25.2/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
也可以自己下载放入/usr/local/bin/
上面完成了准备工作
minikube start --docker-env HTTP_PROXY=http://192.168.199.190:1080 --docker-env HTTPS_PROXY=http://192.168.199.190:1080
启动minikube,过程慢,会下载镜像,上面的参数是使用docker代理下载镜像
minikube start --registry-mirror=https://registry.docker-cn.com 国内可以用,但是创建pod是要pull image,还是要下载的
minikube dashboard
minikube dashboard --url 加载web控制台并输出访问地址
一些其他操作
显示所有pods
kubectl get pods --all-namespaces
看log
kubectl logs -f pods/kubernetes-dashboard-7b7c7bd496-rgsxg -n kube-system
端口转发,把virtualbox虚拟机内的kube端口绑定到电脑端口,可以从其他地方访问kube【二选一】
for port in {30000..30100}; do VBoxManage controlvm minikube natpf1 "NodePort$port,tcp,,$port,,$port"; done 端口转发 https://github.com/kubernetes/minikube/issues/877
ssh -i ~/.minikube/machines/minikube/id_rsa docker@$(minikube ip) -L 192.168.204.130:30000:0.0.0.0:30000 端口转发 后面是kube虚拟机内的ip 会进入minibuke ip的终端,断开后,断开转发停止
minikube,没有外部LoadBalancer,需要修改启动文件使用NodePort访问istio-ingressgateway:
sed -i 's/LoadBalancer/NodePort/g' istio-1.0.0/install/kubernetes/istio-demo.yaml
kubectl delete pods --all