安装 minikube
Install and Set Up kubectl on Linux
1. 下载
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
2. 验证
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
echo "$(<kubectl.sha256) kubectl" | sha256sum --check
验证ok显示:kubectl: OK
3. 安装kubectl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
4. 如果没有root权限,我们还可以安装在本地目录
chmod +x kubectl
mkdir -p ~/.local/bin/kubectl
mv ./kubectl ~/.local/bin/kubectl
then add ~/.local/bin/kubectl to $PATH
vim ~/.bashrc
export PATH=$PATH:$HELM_PATH:/home/xxx/apps/.local/bin/kubectl
下载
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/bin/minikube
minikube start
问题总结:
这个报错我还没有找到解决方法(后面找到原因和解决方法了)
$ kubectl cluster-info To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'. The connection to the server localhost:8080 was refused - did you specify the right host or port?
关于8080 refused的问题,我运行“minikube kubectl get po”命令后,就一切正常了。目前只能普通用户权限可以使用。之所以这个问题解决了的原因,是因为在普通用户的~/.kube/config 生成了config文件。至于这个文件是什么时候生成的我就不知道了。
我们也可以用这个方法生成config文件,用minikube kubectl config view命令会显示config文件的内容,拷贝粘贴到对应目录下即可。
因为安装的是minikube,所以我无法使用网上最流行的方法:sudo cp -i /etc/kubernetes/admin.conf ~/.kube/config。因为我压根就没有admin.conf可以拷贝。
因为安装的是minikube,所以我也无法使用kubeadm init命令生成配置文件。
要使用上面两种方式,可能要安装kubernetes cluster才行,我没有安装cluster的k8s.
root权限使用依然有问题,因为root全下面没有启动minikube的server,通过minikube status和sudo minikube status命令,可以查看到普通用户和root用户下的运行状态。
8080 was refused在root用户下无法使用的问题又是什么呢?依然是在/root/.kube目录下缺少config文件,我把config文件拷贝到/root/.kube目录下了,root权限也能正常工作了。怎么生成config文件的方法,上面有写到,这里就不再重复了。
[minikube]$ sudo kubectl get po
The connection to the server localhost:8080 was refused - did you specify the right host or port?
[minikube]$ sudo minikube kubectl get all