cloudformation入门实践

AWS cloudformation通过模板对AWS云资源进行编排和调用。并且可以通过模板代码层面的修改就可以对现有环境进行升级改造,云端业务的灵活便捷特点展现无疑。下面我们通过一个入门级的简单动手案例给大家展示cloudformation是如何使用的。希望大家也动手亲自实践体验。

创建cloudformation模板

上图:进入webconsole控制台的cloudformation界面,点选create new stack。(新用户有1年的AWS free tier可以用来体验各种服务)

上图:本实验先选择一个简单的单实例单区域LAMP Stack。

上图:点击View/Edit template in Designer进入可视化编辑模板界面。

上图:可视化编辑界面可以看到模板现有资源之间的依赖关系,当点击securitygroup的图标时,下方模板的JSON语言会自动跳到securitygroup相关的代码方便审查和修改。

上图:点击ec2图标时,下方JSON语言会自动跳到ec2的部分。左边Resource types里面的资源都是可以点击生成相应代码,使用者可以直接使用或者根据实际情况对代码参数进行修改,非常的方便。

上图:点击左上角的create stack标致对准备好的模板进行创建。

上图:选择LAMP Stack模板然后点击Next。

上图:Stack name这里填写个a-nice-template,正式工作中建议规范化命名。InstanceType这里选择t2.micro因为做实验练习而已。KeyName是用于登陆这台ec2的密钥,选择好即可。DB相关的可以随便填写,不懂的可以去百度mysql的基本知识。然后连续点击右下角的next两次直到进入create页面。

上图:review界面。可以看到这个Lamp Stack的相关信息,确认无误后点击右下角create执行创建资源。

上图:模板资源正在创建过程中create in progress,速度会非常快。

上图:很快创建完成资源。

上图:最终回到ec2的控制台,可以看到刚才用cloudformation创建好的LAMP单机已经可以使用了,并且这台机器的securitygroup也是刚通过a-nice-template创建的。

上图:点击cloudformation这里模板的URL链接也可以访问刚创建的ec2。

上图:实验完成后记得删除资源,以免扣费。

总结:用cloudformation不仅可以迅速的通过模板对基础设施层的资源进行调用并快速部署,还可以对资源内部的应用/系统配置文件进行修改操作,非常强大。模板可以反复使用,只需根据实际情况对模板内的参数进行少量的修改即可,一劳永逸的理念极大的减少了DevOps的工作量。

by:白刃霜飞

多年海内外系统,网络,信息安全从业经验。参与并主导多个世界500强企业大型IT项目,现任职于Simba Innvation的云计算专家。

DevOps on AWS之Cloudformation实践篇的更多相关文章

  1. DevOps on AWS之Cloudformation概念介绍篇

    Cloudformation的相关概念 AWS cloudformation是一项典型的(IAC)基础架构即代码服务..通过编写模板对亚马逊云服务的资源进行调用和编排.借助cloudformation ...

  2. DevOps on AWS之OpsWorks初体验

    AWS OpsWorks 是一款配置管理服务,提供 Chef 和 Puppet 的托管EC2虚拟机实例.Chef 和 Puppet 是自动化平台,允许用户使用代码来自动配置服务器.用户借助OpsWor ...

  3. DevOps on AWS之Elastic BeanStalk

    Elastic BeanStalk相关概念 童话世界中存在着一种魔力beanstalk(豆荚),种在花盆里可以无限的向上生长,越长越高直达云端.AWS Elastic Beanstalk也采用类似概念 ...

  4. 七款做好DevOps的强大工具

    原文链接: 7 cool tools for doing devops right 传统把开发和运营割裂开的做法,实则不适合现代产品和服务开发的需求,如今把开发和运营作为整体来看待的DevOps工程思 ...

  5. AWS 安全信息泄露-----21天烧了27万

    安全问题一直都是个老生常谈的话题,对于我们做IT的来说,是更为重视的.从使用开发工具的是否授权合规,到从事的工作内容是否合法.我们都应该认真的思考一下这些问题,毕竟我们要靠IT这门手艺吃饭. 2021 ...

  6. On cloud, be cloud native

    本来不想起一个英文名,但是想来想去都没能想出一个简洁地表述该意思的中文释义,所以就用了一个英文名称,望见谅. Cloud Native是一个刚刚由VMware所提出一年左右的名词.其表示在设计并实现一 ...

  7. 关于Puppet不得不说的故事

    Puppet对于做DevOps的同学来说,是个熟悉的名字,但仍有许多人并不了解它.那么我先来简单介绍一下:Puppet是由Puppetlabs公司开发的系统管理框架和工具集,被用于IT服务的自动化管理 ...

  8. OpenStack调研:OpenStack是什么、版本演变、组件关系(Havana)、同类产品及个人感想

    一点调研资料,比较浅,只是觉得部分内容比较有用,记在这里: 首先,关于云计算,要理解什么是SAAS.PAAS.IAAS,这里不述:关于虚拟化,需要知道什么是Hypervisor,这里也不述: Open ...

  9. OpenStack调研

    OpenStack调研:OpenStack是什么.版本演变.组件关系(Havana).同类产品及个人感想 一点调研资料,比较浅,只是觉得部分内容比较有用,记在这里: 首先,关于云计算,要理解什么是SA ...

随机推荐

  1. P3565 [POI2014]HOT-Hotels

    题目描述 There are nn towns in Byteotia, connected with only n-1n−1 roads. Each road directly links two ...

  2. kubernetes 认证授权

    每个Kubernetes集群都有一个集群根证书颁发机构(CA). 集群中的组件通常使用CA来验证API server的证书,由API服务器验证kubelet客户端证书等.为了支持这一点,CA证书包被分 ...

  3. Js 中的事件委托/事件代理

    什么叫事件委托/事件代理呢 ? JavaScript高级程序设计上讲:事件委托就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件.   事件冒泡: 当事件发生后,这个事件就要开始传 ...

  4. ethers.js-4-Contracts

    Contracts A Contract is an abstraction of an executable program on the Ethereum Blockchain. A Contra ...

  5. 集合之HashSet

    在前篇博文中(java提高篇(二三)-----HashMap)详细讲解了HashMap的实现过程,对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素.所以如果对H ...

  6. C# 实现动态加载DLL插件 及HRESULT:0x80131047处理

    本代码实现DLL的动态加载, 类似PS里的滤镜插件! 1. 建立一个接口项目类库,此处名称为:Test.IPlugin using System; namespace Test.IPlugin { p ...

  7. 二进制包 vs. 源代码包

    在ROS中, 我们可能经常会遇到缺少相关的ROS依赖的问题. 有些时候你编译或者运行一些ROS程序, 系统会提示找不到XXX功能包. 如果是缺少ROS的依赖, 通常可以用以下命令来安装: $ sudo ...

  8. HDU1753 (大正小数相加)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1753 大明A+B Time Limit: 3000/1000 MS (Java/Others)    ...

  9. 中国气象网 气象数据开放平台 API用法 (Android)

    因为要做个天气应用.须要找个天气的API.上网上搜了下都是那几个,并且基本都过时了.百度有个天气API,只是貌似仅仅能提供当天的.网上提到的中国气象接口的文章,大都用的时旧API,有的被封了,有的永远 ...

  10. c++赋值运算符为什么要返回引用?

    为什么赋值运算符要返回引用?? 因为赋值操作会改变左值,而 + 之类的运算符不会改变操作数,所以说赋值运算符重载要返回引用以用于类似 (a=b)=c 这样的再次对a=b进行写操作的表达式.+ 返回一个 ...