如何使用AWS和Rancher搭建弹性应用栈

我们曾经分享过在使用Docker、Rancher和各种开源工具时,如何确保高弹性工作负载。在这篇文章中,我将以先前内容为基础,用一些常用工具为Rancher搭好一个AWS基础环境。查看这里的仓库,你就能跟随我们的步骤、安装一个完全相同的基础设施。

我们AWS基础设施最终的输出看起来会像下面的图片:

这里写图片描述

现在一起动手来创建一个运行的应用栈吧!

Host VM的创建

在这一部分我们将搭建下图中底部的三个黄色部分的内容:

这里写图片描述

Golden 镜像

首先,我们需要一个创建Docker hosts的方案,该方案会将存储驱动和操作系统组合起来。当然,我们也希望将来能用不同的部分取代它们。

现在我们要建立自己的VM(它常被叫做“golden镜像”)。至于工具,我会用Packer与AWS(以及其他各类云提供商)的API通信来创建VM镜像,用Ansible以一种可读的方式描述配置步骤。如果你想跳过这些步骤的话,你可以在这里找到完整的源代码。

此次的示例我们将使用一个Ubuntu 14.04的VM,该VM使用AUFS3作为Docker存储驱动。

第一步,我们创建一个名为ubuntu_1404_aufs3.json的Packer配置文件。在这时,用source_ami_filter在AWS美国东部地区搜索最近的14.04 AMI ID,从搜索清单中返回了ami-af22d9b9。

它还创建了一个40GB的硬盘,该硬盘连接为/dev/sdb,我们将用它存储Docker数据;这里我们正在使用的是Docker 1.12.3,因为它支持最新的Rancher兼容性矩阵。

{
"variables": {
"aws_access_key": "",
"aws_secret_key": "",
"docker_version": "1.12.4"
},
"builders": [{
"type": "amazon-ebs",
"access_key": "{
     {user `aws_access_key`}}",
"secret_key": "{
     {user `aws_secret_key`}}",
"region": "us-east-1",
"source_ami_filter": {
"filters": {
"virtualization-type": "hvm",
"name": "*ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
"root-device-type": "ebs"
},
"most_recent": true
},
"ami_virtualization_type": "hvm",
"instance_type": "m3.medium",
"ssh_username": "ubuntu",
"ami_name": "Docker {
     {user `docker_version`}} Ubuntu 14.04 AUFS3 {
     {timestamp}}",
"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值