版本:2013.2
Heat
Heat是一套业务流程平台,旨在帮助用户更轻松地配置以OpenStack为基础的云体系。利用Heat应用程序,开发人员能够在程序中使用模板以实现资源的自动化部署。Heat能够启动应用、创建虚拟机并自动处理整个流程。它还拥有出色的跨平台兼容性,能够与Amazon Web Services业务流程平台CloudFormation相对接——这意味着用户完全可以将AWS模板引入OpenStack环境当中。
继续阅读 »
之前的一篇博客讲了AWS和Heat中AutoScaling的机制和大概的实现,本篇是上一篇的姊妹篇,主要讲autoscaling在heat中的简单使用。
环境准备
我们还是以一个模板为例,模板内容如下:
{
"HeatTemplateFormatVersion": "2012-12-12",
"Description": "Template which create a base autoscaling for launch base.",
"Parameters": {
"InstanceType": {
"Type": "String"
},
"ImageId": {
继续阅读 »
stack domain解决以下几个问题:
从虚拟机内部访问Heat服务时的身份认证。
用domain的方式实现,创建的用户对非管理员不可见
创建的用户的操作权限是被隔离的
配置的步骤如下:
1、安装python-openstackclient,因为keystoneclient不支持V3 API,将来也不会支持,参考这里的讨论。
2、创建domain
UVP:/home/kong # openstack --os-token 2012 --os-url=http://172.25.150.8:5000/v3 --os-identity-api-version=3 domain create heat --descri
继续阅读 »
Heat中的更新stack行为,基本就是参照CloudFormation设计和实现的。所以,这里的主要参考来源就是CloudFormation的官方文档,另外就是Heat Icehouse版本的实现代码。
一个示例
首先我们需要一个初始模板,https://s3.amazonaws.com/cloudformation-templates-us-east-1/UpdateTutorial+Part1.template,该模板展示的是一个php应用,Apache Web Server、PHP 和简单的 PHP 应用程序全部都由默认安装在 Amazon Linux AMI 上的 AWS CloudFormation 帮助程序脚本进行
继续阅读 »
从F版本就开始熟悉OpenStack的代码,到现在几大核心模块的代码基本都精读过,但不得不说,目前Heat的代码编写,应该是用到Python高级语法最多的模块,各种对象建模也比其他几个模块复杂一些,初学时比较吃力。这里记录下来,给自己和感兴趣的人参考。
版本:Icehouse
Dependencies
__iadd__:接受一个 (requirer, required) 元组,进行加法操作
required_by(self, last):返回依赖该资源的所有资源
__getitem__(self, last):返回一个Dependencies对象。以last作为叶子节点。
graph(self, revers
继续阅读 »
Heat中对外提供服务的进程有:heat-api, heat-api-cfn, heat-api-cloudwatch,内部进程只有一个heat-engine。这些进程都支持灵活部署。
访问heat-api时,在keystone鉴权时可以提供用户token,或者用户名和密码(此时不需要在系统中提供管理员token),需要配置:
[paste_deploy]
flavor = standalone
或者,使用第三方的云服务鉴权(不使用keystone),配置:
flavor = custombackend
此时,通过调用heat-engine中的authenticated_to_backend方法进行鉴权。
而heat-a
继续阅读 »
Heat OpenStack API
path_prefix="/{tenant_id}"
validate_template /validate
list_resource_types /resource_types
resource_schema /resource_types/{type_name}
generate_template /resource_types/{type_name}/template
index /stacks
create /stacks
preview /stacks/preview
detail /stacks/detail
lookup /stacks/{stack_name}
lookup
继续阅读 »
本文主要讲AutoScaling,关于CloudFormation和Heat,之前的博客已经有讲过,本文不做赘述。
AutoScaling in AWS
AutoScaling的概念最早出现在AWS,Auto Scaling 是一项 Web 服务,旨在根据用户定义的策略、时间表和运行状况检查启动或终止 EC2 实例。在典型的商业场景中,在 Web 应用程序开始获得更多流量时,您将添加更多的服务器或增加现有服务器的大小来应对额外负载。同样,当 Web 应用程序的流量开始减少时,您将终止未充分利用的服务器,或者减少现有服务器的大小。根据您的基础设施,每次进行垂直扩展时可能都会涉及更改服务器配置。如果使用水平扩展,您仅需根据应用程序的
继续阅读 »
写在前面
对一个东西不懂的时候,在网上到处搜教程,搜资料,如果资料少了,还会谩骂,会沮丧;等到好不容易弄懂,到自己总结的时候,却又嫌麻烦,不愿意从基本概念开始提起,觉得太简单,不值一写。
人总是这样,想获取帮助,却又不想提供帮助。当然了,写博客也不全是为了帮助别人,更是为了帮助自己。记得曾经读过一段话,具体怎么说忘记了,但大致意思是,自认为掌握的知识,不一定能准确无误的给别人讲出来,更不用说有体系、有章法的讲出来。我在工作中也发现很多员工,看了几天代码,处理了几个问题,就觉得自己已经炉火纯青了,但当我让他从头给我讲的时候,又没有任何头绪。所以,适时的总结和回顾,也是升华自我、构筑知识体系的过程。
好了,废话不说了,今天总结
继续阅读 »
业界动态
Mirantis于12.12号正式向社区发布Fuel,后续考虑Fuel, TripleO and Tuskar and Heat的结合。
Stackalytics团队于12.12号发布了version 0.4。增加了:
1. 查询项目的top reviewer,比如http://stackalytics.com/report/reviews/neutron-group/30
2. 帮助core reviewer查询等待较长时间的patch,比如http://stackalytics.com/report/reviews/nova/open等
关于基于OpenStack的灾备,RedHat一直很积极
htt
继续阅读 »