# 目前公司用的是阿里云的容器服务 所以本地搭建个单机版 方便测试使用
# 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 到面板服务
sudo 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:\Users\xxxName\.kube\ 文件目录添加证书文件 编辑cnfig添加cluster 配置和证书及用户密码
/root/.minikube/ca.crt C:\Users\xxxName\.kube\minica.crt
/root/.minikube/profiles/minikube/client.crt C:\Users\xxxName\.kube\miniclient.crt
/root/.minikube/profiles/minikube/client.key C:\Users\xxxName\.kube\miniclient.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

虚拟机部署单机版kubernetes,minikube,docker的更多相关文章

  1. 使用Minikube部署本地Kubernetes集群(二十八)

    前言 使用Minikube部署本地k8s集群相对比较简单,非常推荐将其用于本地k8s开发环境,唯一麻烦点的仅仅是网络问题. 在本篇教程中,我们使用了国内的镜像来完成本地k8s集群的搭建.如果搭建过程中 ...

  2. Docker 也是本地开发的一神器:部署单机版 Pulsar 和集群架构 Redis

    原文链接:Docker 也是本地开发的一神器:部署单机版 Pulsar 和集群架构 Redis 一.前言: 现在互联网的技术架构中,不断出现各种各样的中间件,例如 MQ.Redis.Zookeeper ...

  3. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...

  4. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之集群部署环境规划(一)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.环境规划 软件 版本 ...

  5. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...

  6. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之flanneld网络介绍及部署(三)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.flanneld介绍 ...

  7. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 ...

  8. Kubernetes 学习笔记(二):本地部署一个 kubernetes 集群

    前言 前面用到过的 minikube 只是一个单节点的 k8s 集群,这对于学习而言是不够的.我们需要有一个多节点集群,才能用到各种调度/监控功能.而且单节点只能是一个加引号的"集群&quo ...

  9. Kubernetes 实战 —— 02. 开始使用 Kubernetes 和 Docker

    创建.运行及共享容器镜像 P23 运行容器 P24 运行 P24 可以运行 Docker 客户端可执行文件来执行各种 Docker 命令.例如:可以试着从 Docker Hub 的公共镜像仓库拉取.运 ...

随机推荐

  1. .net 后台调用前台JS函数

    ScriptManager.RegisterStartupScript(this, this.GetType(), "", "<script>alert('上 ...

  2. scala_spark实践3

    Spark 读写HBase优化 读数据 可以采用RDD的方式读取HBase数据: val conf = HBaseConfiguration.create() conf.set(TableInputF ...

  3. Linux c++ vim环境搭建系列(5)——vim使用

    5. 使用 5.1 快捷键及设置 5.1.1 光标移动 w : 正向移动到相邻单词的首字符 b : 逆向移动到相邻单词的首字符 e : 正向移动到相邻单词的尾字符 ge : 逆向移动到相邻单词的尾字符 ...

  4. [译]使用开发工具来调试 Beta 版 WebView

    自2014年以来,Android WebView 已经作为一个可更新的系统组件铺平了道路,为 Android 应用程序和用户提供了稳定性和性能改进.现代网络平台功能和安全补丁. 然而,更新可能是一把双 ...

  5. Python-selenium-自动化测试模型

    1.线性测试 优势:每一个脚本都是完整独立的,每一个脚本对应一个测试用例 缺点:开发成本高,会有重复操作重复脚本:维护成本也高,修改重复操作的脚本时,要逐一进行修改. 2.模块化驱动测试 把重复的操作 ...

  6. Product Owner交流记录1

    Abstract 最终我们选择了UWP版必应词典功能开发. 项目:“单词挑战”功能 然后我们今天中午我们和Product owner聊了聊. Content Product owner是Travis ...

  7. JACTF Web部分

    掘安团队的题目 平台已不运营 Web签到 发现请求URL为flag.php,但是会跳转到404.php页面,抓包发现有302重定向,查看响应包,flag经过base64编码,解码即可 Tips: 重定 ...

  8. ATmega328P定时器详解

    写这篇文章,纯粹是想为博客拉点点击量.在博客园,游客访问好像是不计入阅读量的,而作为一个十八线博主,注册用户的访问应该以搜索引擎为主,博客园首页为次,个位数的粉丝就别谈了. 所以,希望各位从搜索引擎点 ...

  9. 从头学pytorch(十三):使用GPU做计算

    GPU计算 默认情况下,pytorch将数据保存在内存,而不是显存. 查看显卡信息 nvidia-smi 我的机器输出如下: Fri Jan 3 16:20:51 2020 +------------ ...

  10. thinkphp5.1+ 使用 Redis 缓存

    修改 config/cache.php 将其配置成多个缓存类型,示例 <?php // +---------------------------------------------------- ...