AWS 使用经验

掐指一算,自己第一次使用 AWS 已经是两年前的事情了,这也是云计算和大数据等技术迅猛发展的两年。这期间,大抵间间断断地使用着,FreeTier Instance 也运行快一年了,马上进入收费周期。虽然中间用过一段 Aliyun 的产品(被坑了不少钱),同时现在每月给DigitalOcean 贡献 $5,但是只有AWS的培训有参加过,几个活也是用AWS完成的,算是了解得比较深入。这里且记录一下使用经验,算是总结,也是一种知识梳理。

由于比较常用计算密集型的任务,选择EC2 Spot Instances + SQS + S3的组合较为符合需求。在不需要Auto Scaling的情况下,主要的思路如下:

  • Sending EC2 Spot Instances Requests
  • Sending Messages into SQS
  • Start python scripts on EC2 instances
  • Upload python scripts to S3 and download it on EC2 instances
  • Get Messages from SQS and saving results to S3

SQS 是一个消息队列系统,以服务的方式提供后,对于整个架构中各模块的解耦是非常有用的。S3用于存储初始数据和处理结果,以及启动脚本。EC2 就是处理数据的节点。

1. S3

s3 = boto.connect_s3(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
bucket = s3.get_bucket(DATA_BUCKET)
key = bucket.new_key(KEY_BOOT)
#key.set_contents_from_string(startup)
key.set_contents_from_filename(SCRIPT_BOOT)

  

2. SQS

def send_message_sqs(q, id):
    message = q.new_message(body=simplejson.dumps({"key":id}))
    print q.write(message)

sqs = boto.connect_sqs(KEY, SECRET)
q = sqs.create_queue(REQUEST_QUEUE)
for id in ids:
    send_message_sqs(q, str(id))

  

3. EC2 Spot Instances

request = conn.request_spot_instances(price=AWS_MAX_PRICE,
    image_id=AWS_IMAGE_ID,
    count=AWS_INSTANCE_COUNT,
    type=AWS_REQUEST_TYPE,
    key_name=AWS_KEY_NAME,
    security_groups=AWS_SECURITY_GROUPS,
    instance_type=AWS_INSTANCE_TYPE,
    placement=AWS_PLACEMENT,
    user_data=BOOTSCRIPT % {
        ‘KEY‘    : AWS_ACCESS_KEY_ID,
        "SECRET" : AWS_SECRET_ACCESS_KEY,
        "DATA_BUCKET" : DATA_BUCKET,
        "KEY_BOOT" : KEY_BOOT,
        ‘BOOT_SCRIPT_PATH‘: SCRIPT_BOOT_PATH_SPOT
    })

  

http://aws.amazon.com/ec2/purchasing-options/spot-instances/spot-and-science/

http://www.slideshare.net/AmazonWebServices/massive-message-processing-with-amazon-sqs-and-amazon-dynamodb-arc301-aws-reinvent-2013-28431182

AWS 使用经验

时间: 2025-01-07 07:20:29

AWS 使用经验的相关文章

AWS助理架构师认证考经

上周考了亚马逊的解决方案架构师-助理级别的认证考试并顺利通过.这也算是对自己AWS服务熟悉程度的一种检验.在准备考试的过程中,把自己学习到的AWS知识都梳理了一遍,也算是收获颇丰.这次特意分享了该认证考经. 什么是AWS认证? AWS 认证是对其在 AWS 平台上设计.部署和管理应用程序所需的技能和技术知识的一种认可.获得证书有助于证明您使用 AWS 的丰富经验和可信度,同时还能提升您所在的组织熟练使用基于 AWS 云服务应用的整体水平. 目前亚马逊推出了Solutions Architect,

[转帖]Oracle 12cR2使用经验

大规模升级来临,谈谈Oracle 12cR2使用经验 随着2019年2月13日,Oracle 19c (Oracle 12.2.0.3) for Exadata 版本发布,Oracle 12cR2体系的数据库版本终于迎来了长期支持版本(Oracle 12c的最后一个大版本),也就是说数据库版本还在Oracle 10g/11g的系统是时候考虑升级了. http://database.51cto.com/art/201904/595040.htm Oracle12c 的最终版本发布了 以后升级的用户

关于AWS上磁盘扩容

今天发现我们有台AWS的机器磁盘use%=87%,我们需要对磁盘进行扩容,当然在不宕机的情况下是最好,但是我们还是需要选择最安全的方式.下面是2种方案: 一.方案: 方案1.直接添加500G磁盘,把160G数据拷贝到新磁盘,按照20m/s计算,同时向需要花费时间:2.5h 如果是主的数据拷贝到主新磁盘,从数据拷贝到从的新磁盘:这个速度有待计算,另外还需要修改info文件对应的路径. 方案2.动态(不宕机的情况添加磁盘) 由于我们AAM数据库服务器磁盘做了LVM所以我们只需要把新的pv往以前的vg

谷歌抢赢AWS,在线公有云培训平台Qwiklabs收入囊中

作者:茱莉叶 [IT战略家] 美国时间11月21日,谷歌宣布收购在线培训平台Qwiklabs.Qwiklabs是一个在线商业培训平台,为想要熟悉公有云环境操作,以及在公有云环境编程开发的人群提供教学.谷歌将使用 Qwiklabs 平台,提供最全面.高效和有趣的方式来训练和加载其所有在Google Cloud的所有产品(包括Google Cloud Platform和G Suite).双方均尚未透露此次收购价格. 谷歌将通过Qwiklabs平台提供云服务培训 Qwiklabs 于2012年推出,总

aws部署从无到有

第一次进入aws控制台的时候傻眼了,密密麻麻的菜单都不知道该选哪一个.无从下手 查了好久才找到,就从EC2入手吧,点击后EC2后进入下面页面 点击启动实例,这个页面就亲切多了.不在像看天书了. 本人最喜欢ubuntu了,操作简单省心,当然选择Ubuntu. 配置实例,默认配置就行 添加存储,同样按照默认配置 创建密钥 配置安全组 评审设置

AWS CloudFront CDN直接全站加速折腾记The request could not be satisfied. Bad request

ERROR The request could not be satisfied. Bad request. Generated by cloudfront (CloudFront) Request ID: JC3i8piJpjRbuP81MNhSKPxt5KWirIInynZgwFJ9EYKuysjS5A_AnQ== 上面这个问题害我着急的很啊.在这里谢谢远在东京的小伙伴在百忙之中帮我分析解决这个问题. 使用AWS也有段时间了,基本常用的服务都用了,还有很多服务没用上,正在慢慢摸索中..说实话

使用AWS服务时注意时区的问题

最近来到了新的公司,搞起了AWS,会陆续记录一些AWS的东西.今天要讲的就是时区问题,说起来挺简单的,没有服务器跨国的估计注意的人没几个. 我们的EMR机器在US,而实际应用的服务器在CH,同事针对log进行的parser的时候发现实际用户的时间跟我们机器的时间总是有差异,而且排除客户端网络问题差异还挺大. 刚开始没注意,就以为是网络问题,我后来看了看还是. 以下是查找思路: --服务器时间 大部分为04-26 select collector_tstamp :: date,count(*) f

aws 阿里云 比较

使用了 阿里云 和 aws服务. 阿里云很方便,交了钱,按步骤部署就好. 交了钱给公用IP,没交钱给私用IP测试用,非常简单. 用了几个小时就完成部署,登陆开始必要的服务器软件安装等等. aws还要搞个elastic ip新概念出来,还有key pair.折腾了1天还没搞出来. key pair的管理可以增加多个,但是不能绑定一个instance. 一个instance创建时候的key pair才可以使用. 真的被aws搞的是死去活来的,把应该放在服务器本身建设的精力非要耗费在如何部署aws.

AWS 技术峰会

我应该怎么说呢?AWS被AWS的市场部害惨了. 这次活动是AWS的市场人员组织的吧.说出来是谁组织的吧.说出来,我们大家保证不打死他/她. 开场气氛不错.但是为什么这么口渴.渴的我到处找水喝.我没有亲见AWS兑换礼品处的争吵.只是听说那块快打起来了.像码农这样温和的物种竟然也要打人,这组织的真不错.另外为什么需要网上报名,网上报名也就罢了,还给个编号.给我打电话的人员说没有编号进不去,没编号也不让去.那,为什么还开设现场报名!另外下午那动手课排了好长好长的队伍.竟然一节课听完要全部清场,还要出去