构建微服务实验环境(一):容器与应用

本文介绍了如何在CentOS集群上构建微服务实验环境,包括安装CentOS与Docker,理解核心概念,如镜像、容器和服务,并通过Docker官方教程进行实践。文章详细阐述了Docker的安装过程、容器与服务的创建,并提到了Docker Swarm、Rancher等集群管理方案。此外,还推荐了使用阿里云或AWS进行云部署以获取更多技术支持。
摘要由CSDN通过智能技术生成

构建微服务实验环境(一):容器与应用

【摘要】微服务架构目前最流行的方案(最佳实践)是容器集群。AWS 的 ECS、docker 的 Swarm、google 的 Kubernetes(K8s),apache 的 mesos,包括 Rancher Labs 的 Rancher 。 建议使用 AWS 或 阿里云 等共有云部署,会有更多技术支持,让你体验不同方案的优势。这里仅为了让你更好理解容器集群工作原理,介绍在 Centos 集群上部署 Swarm、K8s、 Rancher 的方案。

特别提示 无论 swarm,k8s 甚至 AWS 的 ECS 都是快速进化的软件,每个月都会发生一些变化。

(1)容器与应用: 讲述 centos docker的安装,仓库、镜像、容器、服务的概念, dockerfile,compose 文件,容器管理图形界面,以单机操作为主线。
(2)Docker Swarm 集群:讲述集群(cluster)manager,worker,node 的概念与应用在集群部署。重点讲述容器网络、存储管理、集群管理、服务发现等知识。
(3)Rancher 管理平台:讲述多租户多主机容器运行管理平台 Rancher 的租户、环境、主机、环境模板概念与应用。包括 Rancher 自带集群管理 Cattle 的栈、服务的管理,需要读者对比与Docker Swarm 集群在容器基础服务、管理方式方面的差异

1、环境与网络

准备三台 Centos 的 物理机或虚拟机,虚拟机可使用 VMware 或 Vbox,本文案例主机采用 Window10,虚拟化软件 Vbox。

虚拟机应采用双网卡配置:

  • 第一块网卡配 NAT,
  • 第二块网卡按(Host-Only)配内部私有网络。

配置参考: docker 集群网络规划与 VM 网络配置

2、安装 CentOS 与 Docker 引擎

2.1 安装 CentOS 基础环境

1.安装CentOS服务器的模板

双网卡网络配置: NAT,192.168.56.250/24

具体过程:安装基础-centos-7-服务器

2.安装docker-master虚拟机

使用 VBox 复制上述服务器。使用 nmtui 配置:

  • 第二网卡,例如:192.168.56.110/24
  • 主机名:docker-master

2.2 安装 Docker 引擎

1. 在阿里云注册账号

进入阿里云,dev.aliyun.com

登陆后,进入【管理中心】

2. 安装 docker 引擎

如果是安装最新版本 docker:

  • 【管理中心】 –> Docker镜像仓库 –> 加速器 –> centos
  • 按提示操作

如果需要安装 docker 历史版本:

3. 启动 docker 引擎

systemctl start docker
systemctl enable docker
systemctl status docker

docker version
docker run --rm hello-world

4. 配置容器加速服务

  • 【管理中心】 –> Docker镜像仓库 –> 加速器 –> centos

5. 建立你的镜像仓库

  • 【管理中心】 –> Docker镜像仓库 –> 镜像列表 –> 华南1 –> 【创建镜像创库】

创建公有仓库,(一个仓库一般就存一个镜像的不同版本)。完成后,看到【管理】按钮,进入

仓库使用操作: 如上传 hello-world 镜像

  • 列表 docker images
  • 登陆 docker login --username=<your account> registry.cn-shenzhen.aliyuncs.com
  • tag docker tag hello-world registry.cn-shenzhen.aliyuncs.com/pmlpml/repo:hello-world
  • 上传 docker push registry.cn-shenzhen.aliyuncs.com/pmlpml/repo:hello-world
  • 下载 docker push registry.cn-shenzhen.aliyuncs.com/pmlpml/repo:hello-world
  • tag docker tag registry.cn-shenzhen.aliyuncs.com/pmlpml/repo:hello-world hello-world
  • 删除 docker rmi registry.cn-shenzhen.aliyuncs.com/pmlpml/repo:hello-world
  • 运行 docker run --rm hello-world
  • 退出 docker logout registry.cn-shenzhen.aliyuncs.com

3、Docker 入门

docker 官网文档 Get Stated 给出了 6 个基础教程,Part1-6。 Part I 安装,请参考前面

入门要求 docker 1.13 版本以上,当前版本 17.04.00 ce

3.1 核心概念

Docker引擎 (Docker Engine)

Docker Engine is a client-server application with these major components(一个客户-服务应用,含三个部件)

1)驻守(daemon)进程 docker

2) REST API 接口提供外部系统与 docker 进程交互

3) Cli 命令行接口的应用 docker 命令

基础架构
图:Docker引擎基础架构

镜像(im

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值