Minikube 安装

前期安装

注:安装minikube尽可能使用linux图形化

# 安装Minikube可执行程序
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

# 安装kubectl
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl

$ kubectl version
Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.3", GitCommit:"c92036820499fedefec0f847e2054d824aea6cd1", GitTreeState:"clean", BuildDate:"2021-10-27T18:41:28Z", GoVersion:"go1.16.9", Compiler:"gc", Platform:"linux/amd64"}
The connection to the server localhost:8080 was refused - did you specify the right host or port?

安装完以后可以查看版本(会看到它有一个报错,因为连不上k8s api server,这个很正常,因为k8s节点还没创建)

安装docker

mkdir /etc/docker
cat>> /etc/docker/daemon.json<<EOF
{
  "registry-mirrors" : [
      "https://registry.docker-cn.com",
      "https://docker.mirrors.ustc.edu.cn",
      "http://hub-mirror.c.163.com",
      "https://cr.console.aliyun.com/",
      "https://0trl8ny5.mirror.aliyuncs.com"
  ],

   "exec-opts": ["native.cgroupdriver=systemd"]
}
EOF

yum -y install yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
yum -y install docker-ce
systemctl daemon-reload
systemctl restart docker && systemctl enable docker

运行minikube程序创建k8s

安装conntrack
$ yum -y install conntrack-tools

创建用户
useradd zhangsan && echo "aaaaaa" | passwd --stdin zhangsan
usermod -aG docker zhangsan

通过 minikube starat 创建k8s环境,修改镜像源为国内的镜像源
[zhangsan@node1 ~]$ minikube start --driver='docker' --image-mirror-country='cn' --image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers'

注:如是vm就用--driver='none',其他可用--driver='docker'这些
回显
* minikube v1.23.2 on Centos 7.9.2009
* Using the docker driver based on user configuration
* Using image repository registry.cn-hangzhou.aliyuncs.com/google_containers
* Starting control plane node minikube in cluster minikube
* Pulling base image ...
    > registry.cn-hangzhou.aliyun...: 355.40 MiB / 355.40 MiB  100.00% 4.66 MiB
* Creating docker container (CPUs=2, Memory=2200MB) ...
    > kubelet: 146.25 MiB / 146.25 MiB [-------------] 100.00% 4.27 MiB p/s 34s                                  
  - Generating certificates and keys ...
  - Booting up control plane ...
  - Configuring RBAC rules ...
* Verifying Kubernetes components...
  - Using image registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner:v5 (global image repository)
* Enabled addons: default-storageclass, storage-provisioner
* Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default


[zhangsan@node1 ~]$ docker ps -a
CONTAINER ID   IMAGE                                                                 COMMAND                  CREATED          STATUS          PORTS                                                                                                                                  NAMES
96325f35fcec   registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.27   "/usr/local/bin/entr…"   52 seconds ago   Up 51 seconds   127.0.0.1:49162->22/tcp, 127.0.0.1:49161->2376/tcp, 127.0.0.1:49160->5000/tcp, 127.0.0.1:49159->8443/tcp, 127.0.0.1:49158->32443/tcp   minikube


$ 验证
[zhangsan@node1 ~]$ kubectl get pods -A
NAMESPACE     NAME                               READY   STATUS    RESTARTS   AGE
default                test3                                        1/1     Running   2 (16m ago)     50m
kube-system            coredns-7d89d9b6b8-tct9f                     1/1     Running   1 (16m ago)     59m
kube-system            etcd-minikube                                1/1     Running   1 (16m ago)     60m
kube-system            kube-apiserver-minikube                      1/1     Running   1 (3m17s ago)   60m
kube-system            kube-controller-manager-minikube             1/1     Running   1 (16m ago)     60m
kube-system            kube-proxy-hdm4c                             1/1     Running   1 (16m ago)     59m
kube-system            kube-scheduler-minikube                      1/1     Running   1 (3m17s ago)   60m
kube-system            storage-provisioner                          1/1     Running   2 (3m ago)      60m
kubernetes-dashboard   dashboard-metrics-scraper-758548f849-555mm   1/1     Running   1 (16m ago)     56m
kubernetes-dashboard   kubernetes-dashboard-586fb768c4-jrsvs        1/1     Running   2 (2m59s ago)   56m


删除pod
kubectl delete pod test1


此时并不代表,整个k8s集群搭建好了,因为k8s里的服务还需要起,比如API server,scheduler,kubelet等等,他们都是以容器的方式在后台启动。
可通过minikube ssh进到虚机里,然后看看是否有一些container运行起来了
[zhangsan@node1 ~]$ minikube ssh
docker@minikube:~$ 
docker@minikube:~$ docker ps 
CONTAINER ID   IMAGE                                                                     COMMAND                  CREATED         STATUS         PORTS     NAMES
454855f467e3   registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner   "/storage-provisioner"   2 minutes ago   Up 2 minutes             k8s_storage-provisioner_storage-provisioner_kube-system_bb344de5-d57c-4c62-9f4d-20852430bff3_0
a1add81594b8   8d147537fb7d                                                              "/coredns -conf /etc…"   2 minutes ago   Up 2 minutes             k8s_coredns_coredns-7d89d9b6b8-tct9f_kube-system_e66e4d56-7594-4522-858f-a256b010b068_0
2b7ac37f1c8d   registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.5             "/pause"                 2 minutes ago   Up 2 minutes             k8s_POD_coredns-7d89d9b6b8-tct9f_kube-system_e66e4d56-7594-4522-858f-a256b010b068_0
d856c0d4dc66   873127efbc8a                                                              "/usr/local/bin/kube…"   2 minutes ago   Up 2 minutes             k8s_kube-proxy_kube-proxy-hdm4c_kube-system_2d7449b4-bdbd-49f4-b625-d8f0d2ca5832_0
6f5358cdeaaa   registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.5             "/pause"                 2 minutes ago   Up 2 minutes             k8s_POD_kube-proxy-hdm4c_kube-system_2d7449b4-bdbd-49f4-b625-d8f0d2ca5832_0
a3b887afa237   registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.5             "/pause"                 2 minutes ago   Up 2 minutes             k8s_POD_storage-provisioner_kube-system_bb344de5-d57c-4c62-9f4d-20852430bff3_0
3118a5483e24   b51ddc1014b0                                                              "kube-scheduler --au…"   2 minutes ago   Up 2 minutes             k8s_kube-scheduler_kube-scheduler-minikube_kube-system_027a9ba89197173d486f495ac198392d_0
21246077d937   e64579b7d886                                                              "kube-apiserver --ad…"   2 minutes ago   Up 2 minutes             k8s_kube-apiserver_kube-apiserver-minikube_kube-system_d6f7b6f88dab041b7e60eace73e3951d_0
a5a3066a6941   5425bcbd23c5                                                              "kube-controller-man…"   2 minutes ago   Up 2 minutes             k8s_kube-controller-manager_kube-controller-manager-minikube_kube-system_894c482398c4b70dea6d07b839b98abf_0
d50593540ffd   004811815584                                                              "etcd --advertise-cl…"   2 minutes ago   Up 2 minutes             k8s_etcd_etcd-minikube_kube-system_07df6e35efd9638d13cc8502ccb1dcaf_0
3470b44c8c7e   registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.5             "/pause"                 2 minutes ago   Up 2 minutes             k8s_POD_kube-scheduler-minikube_kube-system_027a9ba89197173d486f495ac198392d_0
1faac454458e   registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.5             "/pause"                 2 minutes ago   Up 2 minutes             k8s_POD_kube-controller-manager-minikube_kube-system_894c482398c4b70dea6d07b839b98abf_0
9b138a5fe0f9   registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.5             "/pause"                 2 minutes ago   Up 2 minutes             k8s_POD_kube-apiserver-minikube_kube-system_d6f7b6f88dab041b7e60eace73e3951d_0
e503d3ead49b   registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.5             "/pause"                 2 minutes ago   Up 2 minutes             k8s_POD_etcd-minikube_kube-system_07df6e35efd9638d13cc8502ccb1dcaf_0


然后退出来,在本地运行minikube dashboard 会在本地弹出浏览器,就是Kubernetes的dashboard
docker@minikube:~$ exit
[zhangsan@node1 ~]$ minikube dashboard



通过kubectl cluster-info 去连一下k8s api server
[zhangsan@node1 ~]$ kubectl cluster-info
Kubernetes control plane is running at https://192.168.49.2:8443
CoreDNS is running at https://192.168.49.2:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.



# 测试
[zhangsan@node1 ~]$ kubectl run -it test1 --image=busybox --port=8888
If you don't see a command prompt, try pressing enter.
/ # 
posted @ 2021-11-12 16:12  Linux大魔王  阅读(735)  评论(0)    收藏  举报