CentOS 7 部署 MiniKube


前言

学习 Kubernetes 但是搭建集群太麻烦。怎么办? MiniKube 是个简单的好办法!


1、相关文档

GitHub

官网

官方部署文档


2、环境说明

操作系统:Centos 7.6.1810
Docker 版本:25.0.1
kubelet 版本:v1.28.2
minikube 版本:v1.32.0


3、部署

注意:minikube 需要 docker、kvm2、podman、qemu2、virtualbox ,否则会提示如下信息

minikube start
* minikube v1.32.0 on Centos 7.6.1810 (amd64)
* Unable to pick a default driver. Here is what was considered, in preference order:
* Alternatively you could install one of these drivers:
  - docker: Not installed: exec: "docker": executable file not found in $PATH
  - kvm2: Not installed: exec: "virsh": executable file not found in $PATH
  - podman: Not installed: exec: "podman": executable file not found in $PATH
  - qemu2: Not installed: exec: "qemu-system-x86_64": executable file not found in $PATH
  - virtualbox: Not installed: unable to find VBoxManage in $PATH

X Exiting due to DRV_NOT_DETECTED: No possible driver was detected. Try specifying --driver, or see https://minikube.sigs.k8s.io/docs/start/

3.1、安装 yum 工具包

yum install -y yum-utils

3.2、安装 docker

# 配置源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 验证配置是否成功
cd /etc/yum.repos.d && more docker-ce.repo
# 通过 yum 安装 docker
yum install docker-ce -y
# 启动 docker
systemctl start docker
# 开机启动
systemctl enable docker
# 验证 docker 是否启动
systemctl status docker
docker images

3.3、安装 kubeadm,kubelet 和 kubectl

# 配置源
cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
# 验证配置是否成功
cd /etc/yum.repos.d && more kubernetes.repo
# 安装
# 指定版本号
# yum install -y kubelet-1.23.0 kubeadm-1.23.0 kubectl-1.23.0
# 最新版
yum install -y kubelet kubeadm kubectl
# 启动
systemctl start kubelet
# 开机启动
systemctl enable kubelet
# 重启服务器

3.4、安装 minikube

# 下载安装包
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm
# 安装
rpm -Uvh minikube-latest.x86_64.rpm
# 普通账户启动
# minikube start
# root 账号使用 Docker
minikube start --force
# 第一次启动时间稍微有点长,需要 Downloading Kubernetes v1.28.3
# 验证
minikube status
# 说明:没有开机自启动,所以每次开机需要手动启动

4、使用

4.1、部署 Nginx 服务

编排文件 nginx.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-test
  labels:
    app: nginx-test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx-test
  template:
    metadata:
      labels:
        app: nginx-test
    spec:
      containers:
        - name: nginx-test
          image: "nginx:1.24.0"
          imagePullPolicy: "Always"
          ports:
            - name: http
              protocol: TCP
              containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  annotations:
  name: nginx-test-service
spec:
  ports:
    - port: 80
      targetPort: 80
      nodePort: 32001
      protocol: TCP
  selector:
    app: nginx-test
  sessionAffinity: None
  type: NodePort

启动 Nginx 服务

# 启动服务
kubectl apply -f nginx.yaml
# 查看 pod
kubectl get pod
# 查看 service
kubectl get service
# 查看 minikube 的 ip,地址为 192.168.49.2
minikube ip
# 测试服务是否部署成功
curl 192.168.49.2:32001
# 显示如下信息,表示 Nginx 已正常启动
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

# 查看服务器 ip
ip r
# minikube 与服务器 ip 在不同网段
# 无法访问服务
curl localhost:32001

4.2、通过 Nginx 代理对外提供服务

这里通过官方推荐的通过 yum 的安装方式部署 Nginx,然后通过 Nginx 代理,实现可以通过外部访问到 MiniKube 部署的 Nginx 服务。

Nginx 的其他安装方式:CentOS 7.5 离线安装 Nginx 1.18

配置源 /etc/yum.repos.d/nginx.repo

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

安装部署

# 安装
yum install nginx -y

# 测试
nginx -t
# 启动服务
nginx
# 查看 nginx 服务
ps -ef|grep nginx
# 有两个 master process
# 其中 master process nginx -g daemon off; 这个是 minikube 启动的
# 浏览器访问 ip 地址,可以看到 Nginx 的欢迎页
# 注意:防火墙端口是否开放

配置代理,配置文件 /etc/nginx/conf.d/10080.conf

server {
    listen       10080;
    server_name  localhost;

    location / {
        proxy_pass http://192.168.49.2:32001/;
    }
}

重新加载配置

# 测试
nginx -t
# 重新加载配置
nginx -s reload
# 查看 nginx 服务
ps -ef|grep nginx

浏览器访问 http://server_ip:10080/ 可以看到容器启动的 Nginx 服务欢迎页

注意:浏览器可能存在缓存,服务停止会有变化不会立即生效。可强制刷新或者清空缓存

4.3、停止容器服务

# 查看 deployment
kubectl get deployment
# 停止服务
kubectl delete deployment nginx-test
# 验证
kubectl get pod
No resources found in default namespace.
# 查看 service
kubectl get service
# 停止 service
kubectl delete service nginx-test-service
# 验证
kubectl get service
  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在CentOS 7上安装minikube,可以按照以下步骤进行操作: 1. 首先,清理yum缓存并更新yum源。执行以下命令: ``` yum clean all yum makecache ``` 2. 安装VirtualBox-5.2。执行以下命令: ``` yum install VirtualBox-5.2 ``` 3. 下载minikube并将其移动到/usr/local/bin目录下。执行以下命令: ``` curl -Lo minikube http://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube && mv minikube /usr/local/bin/ ``` 4. 下载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" ``` 5. 将kubectl移动到/usr/local/bin目录下。执行以下命令: ``` chmod +x kubectl mv kubectl /usr/local/bin/ ``` 6. 设置KUBECONFIG环境变量。执行以下命令: ``` export KUBECONFIG=$HOME/.kube/config ``` 7. 最后,启动minikube。执行以下命令: ``` minikube start ``` 通过按照以上步骤进行操作,你就可以在CentOS 7上成功安装并启动minikube了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [centos7安装minikube](https://blog.csdn.net/tony_vip/article/details/123856588)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值