• 虚拟机部署单机版kubernetes,minikube,docker


    # 目前公司用的是阿里云的容器服务 所以本地搭建个单机版 方便测试使用
    # VMware® Workstation 12 Pro 版本
    # 虚拟机环境配置:配置 2核 4G 网络桥接
    # 系统镜像: CentOS-7-x86_64-Minimal-1810.iso 最好从阿里云镜像系统下载可以省去yum仓库的配置
    # 网站地址: https://developer.aliyun.com/mirror/
    # 下载 CentOS-7-x86_64-Everything-1908.iso 这个更省事 链接如下
    https://mirrors.aliyun.com/centos/7.7.1908/isos/x86_64/CentOS-7-x86_64-Everything-1908.iso
    # docker 文档
    https://docs.docker.com/engine/install/centos/
    # 执行 su 切换到 root 用户
    # 关掉防火墙
    # systemctl stop firewalld
    # systemctl disable firewalld
    # 清理老版本
    # sudo yum remove docker
    docker-client
    docker-client-latest
    docker-common
    docker-latest
    docker-latest-logrotate
    docker-logrotate
    docker-engine

    # cd /etc/yum.repos.d
    # xftp 上传附件 *.repo 文件到 /etc/yum.repos.d
    # yum update
    # 阿里云镜像加速地址,自行阿里云申请
    # vi /etc/docker/daemon.json

    {
    "registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"]
    }

    # 安装 docker
    # sudo yum install docker-ce docker-ce-cli containerd.io
    #会从阿里云下载镜像

    # 启动docker 服务
    # systemctl start docker
    # systemctl enable docker
    # 查看版本
    # docker version
    Client: Docker Engine - Community
    Version: 19.03.8
    Server: Docker Engine - Community
    Engine:
    Version: 19.03.8

    # 安装 minikube , kubectl 自行下载 或 直接使用附件
    # 文档 https://kubernetes.io/zh/docs/tasks/tools/install-minikube/
    # cd /home/admin/
    # 自己下载
    # curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube
    # https://kubernetes.io/zh/docs/tasks/tools/install-kubectl/
    # curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl && chmod +x kubectl

    # 使用附件 minikube和kubectl软件 上传到 /home/admin
    # 执行
    # sudo mkdir -p /usr/local/bin/
    # sudo install minikube /usr/local/bin/
    # sudo install kubectl /usr/local/bin/
    # 查看版本
    minikube version
    minikube version: v1.9.0


    # 确保 root用户
    # su root
    # 执行单机版 driver=none 配置 image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers 否则镜像下载极慢
    # minikube start --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers --driver=none
    # 问题 缺少conntrack : X Sorry, Kubernetes v1.18.0 requires conntrack to be installed in root's path
    # yum install conntrack
    # 再次运行
    # minikube start --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers --driver=none
    # 首次较慢等待下载完成 缺保配置有 4g内存
    # 启动成功 显示如下
    # Done! kubectl is now configured to use "minikube"

    # 查看
    # kubectl get pod --all-namespaces


    # 输入如下来解决网络问题的报错
    # echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables

    #服务器上执行,启动管理界面,服务器本地可以浏览器查看面板 Minimal版本os没有桌面
    minikube dashboard

    #服务器上执行代理8001 到面板服务
    kubectl proxy --address='0.0.0.0' --accept-hosts='^*$'
    # 并开放端口8001或关闭防火墙 ping ipxxxxx 8001 通不通
    # 客户端 浏览器访问
    # http://ipxxxxx:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/#/overview?namespace=default
    # 查看版本
    # kubectl version

    #处理 ingress
    #先下载镜像 下载有点慢
    docker pull quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.26.1
    minikube addons enable ingress

    # 上传附件中 mq的Dockerfile /root
    # docker build -t rabbitmq:2020 .
    # 查看镜像 rabbitmq:2020
    # docker images
    # 上传附件中 mq的rabbitmq-deployment.yaml /root
    # 部署 rabbitmq
    # kubectl apply -f rabbitmq-deployment.yaml
    # 查看
    kubectl get pod
    #port-forward 端口转发的前置依赖软件安装
    # sudo yum install -y socat

    #查看服务器端配置
    # kubectl config view
    apiVersion: v1
    clusters:
    - cluster:
    certificate-authority: /root/.minikube/ca.crt
    server: https://192.168.1.166:8443
    name: minikube
    contexts:
    - context:
    cluster: minikube
    user: minikube
    name: minikube
    current-context: minikube
    kind: Config
    preferences: {}
    users:
    - name: minikube
    user:
    client-certificate: /root/.minikube/profiles/minikube/client.crt
    client-key: /root/.minikube/profiles/minikube/client.key

    #把服务器上 .minikube 目录下的文件拷贝下来
    在本机的 C:UsersxxxName.kube 文件目录添加证书文件 编辑cnfig添加cluster 配置和证书及用户密码
    /root/.minikube/ca.crt C:UsersxxxName.kubeminica.crt
    /root/.minikube/profiles/minikube/client.crt C:UsersxxxName.kubeminiclient.crt
    /root/.minikube/profiles/minikube/client.key C:UsersxxxName.kubeminiclient.key

    # 编辑宿主机本地config添加cluster 配置和证书及用户密码
    apiVersion: v1
    clusters:
    - cluster:
    certificate-authority: minica.crt
    server: https://192.168.1.166:8443
    name: minikube
    contexts:
    - context:
    cluster: minikube
    user: minikube
    name: minikube
    current-context: minikube
    kind: Config
    preferences: {}
    users:
    - name: minikube
    user:
    client-certificate: miniclient.crt
    client-key: miniclient.key

    # 本机执行
    # kubectl get pod
    # 客户端端口转发访问服务 管理mq
    kubectl port-forward rabbitmq-0 15672:15672
    本地浏览器访问
    http://localhost:15672/
    guest/guest 登录查看

    自己部署相关服务,本地调试还是很不错的,之前都是用虚拟机安装常用中间件现在方便多了
    自我学习记录,如有不足请大家指教.

    共享附件:

    链接:https://pan.baidu.com/s/1j7W22uFXgS_QNuDW3UlNnw
    提取码:10fr

  • 相关阅读:
    Python- 索引 B+数 比如书的目录
    Python-视图 触发器 事务 存储过程
    Python-mysql 权限 pymysql 注入共计
    Shell之Sed常用用法
    python 字符编码讲解
    python enumerate枚举用法总结
    Python第三周 数据类型:集合set、文件的读写、追加操作。
    第二周Python笔记 数据类型 列表 字典
    Python第二周 str的方法
    第二周Python笔记之 变量的三元运算
  • 原文地址:https://www.cnblogs.com/wangrq/p/Kubernetes_minikube_docker.html
Copyright © 2020-2023  润新知