openstack - meetupfiles.meetup.com/14970122/heat-software-config.pdfopenstack implementation of heat...
TRANSCRIPT
OpenStack
Heat及其软件配置和部署
OpenStack
OpenStack
目录 CONTENTS
A. Heat介绍
B. Software Configuration软件配置
C. Plans in Kilo
OpenStack
Heat 简介 [1] OpenStack
OpenStack
背景
OpenStack走向应用市场
Grizzly孵化项目
源于AWS CloudFormation
功能
业务编排
应用部署
自动伸缩
OpenStack
概念
Template
Resource
Stack
create,delete,update,describe,suspend,resume,adopt,
abandon,snapshot,snapshot_restore......
OpenStack 2015/1/31
Heat-api
Heat-api-cfn
Heat-api-cloudwatch
Engine
组件
OpenStack
Software Configuration [2] OpenStack
OpenStack
Cloud-Init
Cloud.cfg UserData
OpenStack
Cloud-Init配置流程
1 2 3
4
Workflow 读取配置文件
初始化文件系统
消费Userdata
5
根据配置完成各个阶段
的模块功能
从Metadata Server
获取虚拟机数据源
OpenStack
Implementation of Heat
user_data打包
方式:RAW, HEAT_CFNTOOLS, SOFTWARE_CONFIG
software config resources以资源形式管理配置数据
software deployment resources随时修改配置
push config metadata to server.rsrc_matadata
OpenStack 2015/1/31
user_data_format:RAW
OpenStack
Heat Source
config
boothook.sh
part-handler.py
text/cloud-config
text/cloud-boothook
text/part-handler
Template (CFN/HOT)
Metadata
UserData text/x-cfninitdata
loguserdata.py text/x-shellscript
text/x-cfninitdata
cfn-watch-server
text/x-cfninitdata
cfn-metadata-server text/x-cfninitdata
http://172.16.213.138:8003
http://172.16.213.138:8000
Source MIMEString
cfn-userdata
ipath/cloud_config.txt
ipath/handlers/part-handler.py
ipath/scrips/loguserdata.py
Metadata-Server
cloud-init
cfntools
parse/config
ipath/boothooks/boothook.sh write & execute!
write & execute
write & execute
cfn-init-data
/var/lib/heat-cfntools/
generates
executes & logs
user_data_format:HEAT_CFNTOOLS
Notes: ipath = /var/lib/cloud/instance
OpenStack
OpenStack
user_data_format:SOFTWARE_CONFIG
OpenStack
ipath/scrips/userdata
Heat Source
config
boothook.sh
part-handler.py
text/cloud-config
text/cloud-boothook
text/part-handler
Template (CFN/HOT)
Metadata
UserData
text/x-shellscript …….
text/x-cfninitdata
cfn-watch-server text/x-cfninitdata
cfn-metadata-server text/x-cfninitdata
http://172.16.213.138:8003
http://172.16.213.138:8000
Source MIMEString
ipath/cloud_config.txt
ipath/handlers/part-handler.py
Metadata-Server
cloud-init
cfntools
parse/config
ipath/boothooks/boothook.sh write & execute!
write & execute
cfn-init-data
/var/lib/heat-cfntools/
generates
executes & logs
user_data_format:SOFTWARE_CONFIG
write & execute
os-collect-config
os-refresht-config
Software config tools
heat-config
heat-config-*(hooks)
OpenStack
software_config_transport:
POLL_SERVER_CFN
software_config_transport:
POLL_SERVER_HEAT
OpenStack
example: Configuring with script
notes: include element "heat-config-script"
OpenStack
example: Configuring with puppet
notes:export DEPLOYMENT_TOOL="heat-config-puppet"
OpenStack
Plans in Kilo [3] OpenStack
OpenStack
1
https://wiki.openstack.org/wiki/Heat/ConvergenceDesign
1. Persist dependency graph
2. Concurrent stack update
3. Decouple resource deletion tasks and move it to garbage collector
2 Autoscaling
https://wiki.openstack.org/wiki/Heat/AutoScaling
3 Heat Template format usability improvements
https://etherpad.openstack.org/p/heat-useablity-improvements
1. Add "parameter_defaults" to the environment
2. Support better access to nested attributes
3. Support preview the changes of stack update
4. Stack update allow without -P(parameters)
Heat Convergence - resolving any and all questions
*
多一个机会,多一种人生
云操作系统产品部OpenStack团队(西安)
OpenStack
Thanks!