controller 属性:
        admin_address => $controller_node_address,
        public_address => $controller_node_public,
        public_interface => $::public_int,
        private_interface => $::use_quantum ? { true=>false, default=>$::fuel_settings['fixed_interface']},
        internal_address => $controller_node_address,
        service_endpoint => $controller_node_address,
        floating_range => false, #todo: remove as not needed ???
        fixed_range => $::use_quantum ? { true=>false, default=>$::fuel_settings['fixed_network_range'] },
        multi_host => $multi_host,
        network_manager => $network_manager,
        num_networks => $::use_quantum ? { true=>false, default=>$novanetwork_params['num_networks'] },
        network_size => $::use_quantum ? { true=>false, default=>$novanetwork_params['network_size'] },
        network_config => $::use_quantum ? { true=>false, default=>$network_config },
        debug => $debug,
        verbose => $verbose,
        auto_assign_floating_ip => $::fuel_settings['auto_assign_floating_ip'],
        mysql_root_password => $mysql_hash[root_password],
        admin_email => $access_hash[email],
        admin_user => $access_hash[user],
        admin_password => $access_hash[password],
        keystone_db_password => $keystone_hash[db_password],
        keystone_admin_token => $keystone_hash[admin_token],
        keystone_admin_tenant => $access_hash[tenant],
        glance_db_password => $glance_hash[db_password],
        glance_user_password => $glance_hash[user_password],
        glance_backend => $glance_backend,
        glance_image_cache_max_size => $glance_hash[image_cache_max_size],
        nova_db_password => $nova_hash[db_password],
        nova_user_password => $nova_hash[user_password],
        nova_rate_limits => $::nova_rate_limits,
        ceilometer => $ceilometer_hash[enabled],
        ceilometer_db_password => $ceilometer_hash[db_password],
        ceilometer_user_password => $ceilometer_hash[user_password],
        ceilometer_metering_secret => $ceilometer_hash[metering_secret],
        ceilometer_db_type => 'mongodb',
        ceilometer_db_host => mongo_hosts($nodes_hash),
        queue_provider => $::queue_provider,
        amqp_hosts => $amqp_hosts,
        amqp_user => $rabbit_hash['user'],
        amqp_password => $rabbit_hash['password'],
        rabbitmq_bind_ip_address => $rabbitmq_bind_ip_address,
        rabbitmq_bind_port => $rabbitmq_bind_port,
        rabbitmq_cluster_nodes => $rabbitmq_cluster_nodes,
        export_resources => false,
        quantum => $::use_quantum,
        quantum_config => $quantum_config,
        quantum_network_node => $::use_quantum,
        quantum_netnode_on_cnt => $::use_quantum,
        cinder => true,
        cinder_user_password => $cinder_hash[user_password],
        cinder_db_password => $cinder_hash[db_password],
        cinder_iscsi_bind_addr => $cinder_iscsi_bind_addr,
        cinder_volume_group => "cinder",
        manage_volumes => $manage_volumes,
        use_syslog => $use_syslog,
        novnc_address => $controller_node_public,
        syslog_log_level => $::syslog_log_level,
        syslog_log_facility_glance => $::syslog_log_facility_glance,
        syslog_log_facility_cinder => $::syslog_log_facility_cinder,
        syslog_log_facility_neutron => $::syslog_log_facility_neutron,
        syslog_log_facility_nova => $::syslog_log_facility_nova,
        syslog_log_facility_keystone=> $::syslog_log_facility_keystone,
        cinder_rate_limits => $::cinder_rate_limits,
        horizon_use_ssl => $::horizon_use_ssl,
        nameservers => $::dns_nameservers,
        primary_controller => true,
        max_retries => $max_retries,
        max_pool_size => $max_pool_size,
        max_overflow => $max_overflow,
        idle_timeout => $idle_timeout,
        nova_report_interval => $::nova_report_interval,
        nova_service_down_time => $::nova_service_down_time,
 
一、database::mysql执行  先创建MySQL-server,接着为各个组建创建数据库的任务是在各个组建下的db文件夹下执行的。例如:glance db的创建是由openstack模块下的manifests/db/mysql.pp调用class { 'glance::db::mysql':执行的。需要分别为keystone、Glance、Nova、Ceilometer、cinder、neutron创建db。
二、keystone  先在openstack/manifests/keystone.pp执行keystone安装。然后,安装、注册keystone。
安装调用class { '::keystone': ,
调用class { 'keystone::roles::admin':设置管理员用户,
调用class { 'keystone::endpoint':为keystone设置认证endpoint。
为Glance、Nova、cinder、neutron、ceilometer注册endpoint,调用各自模块的nova::keystone::auth执行。
三、Glance  调用openstack::glance.pp执行安装注册Glance。
先注册安装glance-api,调用'glance::api'
注册安装glance-regristry,调用glance::registry
注册rabbitmq通知,调用'glance::notify::rabbitmq'
注册Glance的后端  默认采用的是file  执行glance::backend::file
四、Nova  调用openstack::nova::controller安装Nova
nova::rabbitmq--》rabbitmq::service、server 安装rabbitmq
安装'nova': --》 'nova::quota' --》nova::network'--》::nova::network::neutron'--》::nova::api-->nova::conductor-->'nova::scheduler',    'nova::objectstore',    'nova::cert',-->:nova::consoleauth-->nova::vncproxy
五、Cinder Controller Services  调用openstack/manifests/cinder.pp 安装
'cinder::base'  安装cinder所需的基本包'qemu-utils'、'python-cinder'、cinder-common
'cinder::api' 安装cinder-api  python-keystone 启动cinder-api服务
'cinder::scheduler' 安装cinder-scheduler
根据$manage_volumes确定是否安装'cinder::volume' 由于cluster_simple默认为FALSE  所以不安装cinder::volume  cinder::volume::iscsi' cinder::volume::ceph'
六、Ceilometer  先在openstack/manifests/cellometer.pp执行cellometer安装 由cellometer/init.pp开始,主要对一些文件,目录进行修改和基础包的安装。
然后进入ceilometer::client 安装 python-ceilometerclient
ceilometer::db 对ceilometer-common还有ceilometer-backend-package 进行安装 
ceilometer::api 安装注册cellometer的API服务
ceilometer::collector 安装ceilometer的collector服务
ceilometer::agent::central 安装注册ceilometer central agent
ceilometer::alarm::evaluator 安装注册 ceilometer alarm evaluator服务
ceilometer::alarm::notifier  安装注册 ceilometer alarm notifier服务
ceilometer::agent_notification安装注册 ceilometer agent notification服务
ceilometer::agent::compute 安装ceilometer compute agent
七 、 Horizon  openstack::horizon.pp   安装注册 horizon. Will eventually include apache and ssl.
 

 这一周就这样过去啦  天天看puppet代码,有些看不懂,终于对整个openstack搭建的顺序搞清楚了 ,但是site.pp还没看懂,感觉好有压力啊 
是不是我不适合做这个,心中好困惑啊!!!
希望下周能够好起来。
加油!!!

controller.pp 各组件的安装顺序的更多相关文章

  1. SharePoint 2016 必备组件离线安装介绍

    前言 SharePoint 必备组件安装,一直以来都是SharePoint安装过程中的最大的坑,尤其是不能联网的服务器.博主在这里简单介绍一下离线安装过程,并附组件包下载以及安装命令,并且在windo ...

  2. MySQL 5.6.17 rpm 文件安装顺序

     Linux系统安装MySQL时,将MySQL-5.6.17-1.el6.x86_64.rpm-bundle.tar包打开,有7个rpm文件,如下: MySQL-client-5.6.17-1.el6 ...

  3. Visual Studio 2012出现“无法访问T-SQL组件和安装了不兼容伯 DacFx版本”的解决办法

    参考:Visual Studio 2012出现“无法访问T-SQL组件和安装了不兼容伯 DacFx版本”的解决办法 Vs2012的下载地址: https://msdn.microsoft.com/en ...

  4. IIS、SQL SERVER和VS的安装顺序

    正确安装顺序:先安装IIS,再安装SQL SERVER,最后安装VS. 如果先安装VS后安装的IIS,则需要找到对应的.net framework目录下,执行aspnet_regiis.exe,重新注 ...

  5. twisted 安装时,安装顺序为 zope.interface ->twisted

    最近想学 twisted ,就去下载 twisted 的windows版本,并且 安装.运行 twisted 例子后,发现出现了问题: ImportError: Twisted requires zo ...

  6. Wix打包系列(七) 添加系统必备组件的安装程序

    原文:Wix打包系列(七) 添加系统必备组件的安装程序 我们知道在vs的打包工程中添加系统必备组件是一件很容易的事情,那么在wix中如何检测系统必备组件并在安装过程中安装这些组件.这里以.Net Fr ...

  7. AspUpload组件的安装及使用方法介绍

    http://soft.huweishen.com/soft/47.html AspUpload对ASP编程人员来说要实现ASP网站文件上传功能它是首选.本文就为大家介绍一下AspUpload组件的安 ...

  8. web.xml组件加载顺序

    在配置项目组件的过程中, 了解Tomcat加载组件顺序很有必要. 例如某些框架如Quartz的集群功能需要数据库的支持, 数据库的加载肯定要在框架组件加载之前. 经过查阅和Debug发现, web.x ...

  9. Visual Studio 2008 安装失败(“Web 创作组件”无法安装)(转)

    今天安装VS2008时出现了问题,怎么都无法安装成功.装了好几次都在“Visual Studio Web 创作组件(Visual Studio Authoring Component)”的安装的时候失 ...

随机推荐

  1. Git链接到自己的Github(2)进阶使用

    接着上一篇的,从github clone下代码. 1.先查看当前开发分支 $ cat .git/HEAD ref: refs/heads/master 这里的master是默认分支. 2.查看当前状态 ...

  2. 第一个js程序

    <html><head> <title>Untitled</title> <script >function demo(){ alert ( ...

  3. 获取mp4文件信息

    计算电影长度 方法1 从mvhd - movie header atom中找到time scale和duration,duration除以time scale即是整部电影的长度. time scale ...

  4. iOS越狱程序开发

    iOS越狱程序开发http://www.docin.com/p-760246852.html

  5. oracle中的 exists 和 in 的效率问题

    1) select * from T1 where exists(select * from T2 where T1.a=T2.a) ; T1数据量小而T2数据量非常大时,T1<<T2 时 ...

  6. Thinkphp 使用gmail发送邮件

    1.Thinkphp 发送邮件内容来自:http://www.thinkphp.cn/code/32.html /** * 系统邮件发送函数 * @param string $to 接收邮件者邮箱 * ...

  7. css实现带箭头选项卡

    这阵子在做一个web端项目中遇到一个问题,需要实现带箭头的选项卡点击可切换.起初没想太多,直接切一个向上的小箭头图片,外层div设置相同颜色的边框,再用相对定位和绝对定位.这种方法是可行的,但是因为手 ...

  8. PHP基础2

    一.函数赋值问题   function add($num1,$num2=5){ echo $num1+$num2; } add(5,19);   二.global 全局变量 把变量加入到全局变量数组中 ...

  9. 使用blktrace排查iowait cpu高的问题

    本文转自这里,blktrace在这种情况下的使用方法值得借鉴学习. ------------------------------------------------------------------ ...

  10. UrlOfFIle

    如上,报错位置为folder.Files[],表示这里需要的是文件的Url地址,即folder.Files[文件的Url地址].