Пример #1
0
 def configHaproxy():
     haproxyTemplatePath = os.path.join(OPENSTACK_CONF_FILE_TEMPLATE_DIR, 'ha', 'haproxy.cfg')
     ShellCmdExecutor.execCmd('cp -r %s /etc/haproxy/' % haproxyTemplatePath)
     
     if YAMLUtil.hasRoleInNodes('mysql') :
         HA.setMysqlHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('keystone') :
         HA.setKeystoneHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('glance') :
         HA.setGlanceHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('nova-api') :
         HA.setNovaHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('neutron-server') :
         HA.setNeutronHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('horizon') :
         HA.setHorizonHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('cinder-api') :
         HA.setCinderHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('ceilometer') :
         HA.setCeilometerHaproxyString()
         pass
     
     if YAMLUtil.hasRoleInNodes('heat') :
         HA.setHeatHaproxyString()
         pass
     pass
Пример #2
0
 def produceIPList():
     YAMLUtil.writeIPList(RabbitMQ.ROLE)
     pass
Пример #3
0
 def produce():
     print 'produe role ip list in /opt/{role}_ip_list======='
     for role in ParamsProducer.OPENSTACK_ROLES :
         if YAMLUtil.hasRoleInNodes(role) :
             YAMLUtil.writeIPList(role)
             pass
         pass
     
     print 'produce local ip in /opt/localip'
     localIPPath = '/opt/localip'
     FileUtil.writeContent(localIPPath, YAMLUtil.getLocalIP())    
     
     print 'produce all params in /opt/openstack_conf/openstack_params.json'
     paramsMap = {}
     #global variables
     print 'global==========================='
     admin_token = YAMLUtil.getValue('global', 'admin_token')
     paramsMap['admin_token'] = admin_token
     
     cinder_dbpass = YAMLUtil.getValue('global', 'cinder_dbpass')
     paramsMap['cinder_dbpass'] = cinder_dbpass
     
     keystone_heat_password = YAMLUtil.getValue('global', 'keystone_heat_password')
     paramsMap['keystone_heat_password'] = keystone_heat_password
     
     keystone_neutron_password = YAMLUtil.getValue('global', 'keystone_neutron_password')
     paramsMap['keystone_neutron_password'] = keystone_neutron_password
     
     keystone_admin_password = YAMLUtil.getValue('global', 'keystone_admin_password')
     paramsMap['keystone_admin_password'] = keystone_admin_password
     
     keystone_glance_password = YAMLUtil.getValue('global', 'keystone_glance_password')
     paramsMap['keystone_glance_password'] = keystone_glance_password
     
     neutron_dbpass = YAMLUtil.getValue('global', 'neutron_dbpass')
     paramsMap['neutron_dbpass'] = neutron_dbpass
     
     keystone_cinder_password = YAMLUtil.getValue('global', 'keystone_cinder_password')
     paramsMap['keystone_cinder_password'] = keystone_cinder_password
     
     nova_dbpass = YAMLUtil.getValue('global', 'nova_dbpass')
     paramsMap['nova_dbpass'] = nova_dbpass
     
     keystone_nova_password = YAMLUtil.getValue('global', 'keystone_nova_password')
     paramsMap['keystone_nova_password'] = keystone_nova_password
     
     ceilometer_dbpass = YAMLUtil.getValue('global', 'ceilometer_dbpass')
     paramsMap['ceilometer_dbpass'] = ceilometer_dbpass
     
     heat_dbpass = YAMLUtil.getValue('global', 'heat_dbpass')
     paramsMap['heat_dbpass'] = heat_dbpass
     
     bclinux_repo_url = YAMLUtil.getValue('global', 'bclinux_repo_url')
     paramsMap['bclinux_repo_url'] = bclinux_repo_url
     
     glance_dbpass = YAMLUtil.getValue('global', 'glance_dbpass')
     paramsMap['glance_dbpass'] = glance_dbpass
     
     keystone_dbpass = YAMLUtil.getValue('global', 'keystone_dbpass')
     paramsMap['keystone_dbpass'] = keystone_dbpass
     
     keystone_ceilometer_password = YAMLUtil.getValue('global', 'keystone_ceilometer_password')
     paramsMap['keystone_ceilometer_password'] = keystone_ceilometer_password
     
     cluster_id = YAMLUtil.getValue('global', 'cluster_id')
     paramsMap['cluster_id'] = cluster_id
     
     fuel_master_ip = YAMLUtil.getValue('global', 'fuel_master_ip')
     paramsMap['fuel_master_ip'] = fuel_master_ip
     
     print 'mysql============================'
     #Judge whether current host is mysql role
     role = 'mysql'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'mysql_vip'
         mysql_vip = YAMLUtil.getValue(role, key)
         
         key = 'mysql_vip_interface'
         mysql_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'root_password'
         mysql_root_password = YAMLUtil.getValue(role, key)
         print 'mysql_vip=%s--' % mysql_vip
         print 'mysql_vip_interface=%s--' % mysql_vip_interface
         print 'mysql_password=%s--' % mysql_root_password
         
         mysql_ips_list = YAMLUtil.getRoleIPList(role)
         #Judge mysql master ip
         mysql_master_ip = mysql_ips_list[0]
         FileUtil.writeContent('/opt/mysql_master_ip', mysql_master_ip)
         
         mysql_ips = ','.join(mysql_ips_list)
         print 'mysql_ips=%s' % mysql_ips
         paramsMap['mysql_vip'] = mysql_vip
         paramsMap['mysql_vip_interface'] = mysql_vip_interface
         paramsMap['mysql_password'] = mysql_root_password
         paramsMap['mysql_ips'] = mysql_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), mysql_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
 #         else:
 #             FileUtil.writeContent(is_mysql_role_file_path, 'false')
 #             pass
 #         pass
 #     else :
 #         FileUtil.writeContent(is_mysql_role_file_path, 'false')
 #         pass
         
     print 'rabbitmq========================'
     role = 'rabbitmq'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'rabbit_userid'
         rabbit_userid = YAMLUtil.getValue(role, key)
         
         key = 'rabbit_password'
         rabbit_password = YAMLUtil.getValue(role, key)
         
         key = 'rabbit_vip'
         rabbit_vip = YAMLUtil.getValue(role, key)
         
         key = 'rabbit_vip_interface'
         rabbit_vip_interface = YAMLUtil.getValue(role, key)
         
         rabbit_ips_list = YAMLUtil.getRabbitRoleIPList(role)
         rabbit_ips = ','.join(rabbit_ips_list)
         
         #Judge rabbitmq master ip
         rabbit_master_ip = rabbit_ips_list[0]
         FileUtil.writeContent('/opt/rabbitmq_master_ip', rabbit_master_ip)
         
         print 'rabbit_userid=%s--' % rabbit_userid
         print 'rabbit_vip=%s--' % rabbit_vip
         print 'rabbit_vip_interface=%s--' % rabbit_vip_interface
         print 'rabbit_password=%s--' % rabbit_password
         print 'rabbit_ips=%s--' % rabbit_ips
         
         rabbit_hosts_list = [] #rabbit_ip1:5672,rabbit_ip2:5672
         
         for ip in rabbit_ips_list :
             rabbit_with_port = '%s:5672' % ip
             rabbit_hosts_list.append(rabbit_with_port)
             pass
         paramsMap['rabbit_hosts'] = ','.join(rabbit_hosts_list)
         paramsMap['rabbit_host'] = rabbit_ips_list[0]
         paramsMap['rabbit_vip'] = rabbit_vip
         paramsMap['rabbit_vip_interface'] = rabbit_vip_interface
         paramsMap['rabbit_userid'] = rabbit_userid
         paramsMap['rabbit_password'] = rabbit_password
         paramsMap['rabbitmq_ips'] = rabbit_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), rabbit_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'keystone========================='
     role = 'keystone'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'keystone_vip'
         keystone_vip = YAMLUtil.getValue(role, key)
         
         key = 'keystone_vip_interface'
         keystone_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'keystone_mysql_user'
         keystone_mysql_user = YAMLUtil.getValue(role, key)
         
         key = 'keystone_mysql_password'
         keystone_mysql_password = YAMLUtil.getValue(role, key)
         
         keystone_ips_list = YAMLUtil.getRoleIPList(role)
         keystone_ips = ','.join(keystone_ips_list)
         
         print 'keystone_vip=%s--' % keystone_vip
         print 'keystone_vip_interface=%s--' % keystone_vip_interface
         print 'keystone_mysql_user=%s--' % keystone_mysql_user 
         print 'keystone_ips=%s--' % keystone_ips
         
         paramsMap['keystone_vip'] = keystone_vip
         paramsMap['keystone_vip_interface'] = keystone_vip_interface
         paramsMap['keystone_mysql_user'] = keystone_mysql_user
         paramsMap['keystone_mysql_password'] = keystone_mysql_password
         paramsMap['keystone_ips'] = keystone_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), keystone_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
 #         else:
 #             FileUtil.writeContent(is_keystone_role_file_path, 'false')
 #             pass
 #         pass
 #     else :
 #         FileUtil.writeContent(is_keystone_role_file_path, 'false')
 #         pass
     
     print 'glance====================================='
     role = 'glance'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'glance_vip'
         glance_vip = YAMLUtil.getValue(role, key)
         
         key = 'glance_vip_interface'
         glance_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'glance_mysql_user'
         glance_mysql_user = YAMLUtil.getValue(role, key)
         
         key = 'glance_mysql_password'
         glance_mysql_password = YAMLUtil.getValue(role, key)
         
         glance_ips_list = YAMLUtil.getRoleIPList(role)
         glance_ips = ','.join(glance_ips_list)
         
         print 'glance_vip=%s--' % glance_vip
         print 'glance_vip_interface=%s--' % glance_vip_interface
         print 'glance_mysql_user=%s--' % glance_mysql_user
         print 'glance_mysql_password=%s--' % glance_mysql_password 
         print 'glance_ips=%s--' % glance_ips
         paramsMap['glance_vip'] = glance_vip
         paramsMap['glance_vip_interface'] = glance_vip_interface
         paramsMap['glance_mysql_user'] = glance_mysql_user
         paramsMap['glance_mysql_password'] = glance_mysql_password
         paramsMap['glance_ips'] = glance_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), glance_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
 
     print 'neutron-server========================================='
     role = 'neutron-server'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'neutron_vip'
         neutron_vip = YAMLUtil.getValue(role, key)
         
         key = 'neutron_vip_interface'
         neutron_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'neutron_network_mode'
         neutron_network_mode = YAMLUtil.getValue(role, key)
         
         key = 'neutron_mysql_user'
         neutron_mysql_user = YAMLUtil.getValue(role, key)
         key = 'neutron_mysql_password'
         neutron_mysql_password = YAMLUtil.getValue(role, key)
         
         neutron_ip_list = YAMLUtil.getRoleIPList(role)
         neutron_ips = ','.join(neutron_ip_list)
         
         print 'neutron_vip=%s--' % neutron_vip
         print 'neutron_vip_interface=%s--' % neutron_vip_interface
         print 'neutron_network_mode=%s--' % neutron_network_mode
         
         print 'neutron_mysql_user=%s--' % neutron_mysql_user
         print 'neutron_mysql_user_password=%s--' % neutron_mysql_password
         
         print 'neutron_ips=%s--' % neutron_ips
         paramsMap['neutron_vip'] = neutron_vip
         paramsMap['neutron_vip_interface'] = neutron_vip_interface
         paramsMap['neutron_mysql_user'] = neutron_mysql_user
         paramsMap['neutron_mysql_password'] = neutron_mysql_password
         paramsMap['neutron_network_mode'] = neutron_network_mode
         paramsMap['neutron_ips'] = neutron_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), neutron_ip_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'nova-api========================================='
     role = 'nova-api'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'nova_vip'
         nova_vip = YAMLUtil.getValue(role, key)
         
         key = 'nova_vip_interface'
         nova_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'nova_mysql_user'
         nova_mysql_user = YAMLUtil.getValue(role, key)
         
         key = 'nova_mysql_password'
         nova_mysql_password = YAMLUtil.getValue(role, key)
         
         nova_ip_list = YAMLUtil.getRoleIPList(role)
         nova_ips = ','.join(nova_ip_list)
         
         print 'nova_vip=%s--' % nova_vip
         print 'nova_vip_interface=%s--' % nova_vip_interface
         print 'nova_mysql_user=%s--' % nova_mysql_user
         print 'nova_mysql_password=%s--' % nova_mysql_password
         
         print 'nova_ips=%s--' % nova_ips
         print YAMLUtil.hasRoleInNodes('nova-api')
         paramsMap['nova_vip'] = nova_vip
         paramsMap['nova_vip_interface'] = nova_vip_interface
         paramsMap['nova_mysql_user'] = nova_mysql_user
         paramsMap['nova_mysql_password'] = nova_mysql_password
         paramsMap['nova_ips'] = nova_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), nova_ip_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'nova-compute============================================='
     role = 'nova-compute'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'virt_type'
         virt_type= YAMLUtil.getValue(role, key)
         print 'virt_type=%s' % virt_type
         
         nova_compute_ip_list = YAMLUtil.getRoleIPList(role)
         nova_compute_ips = ','.join(nova_compute_ip_list)
         print 'nova_compute_ips=%s--' % nova_compute_ips
         paramsMap['virt_type'] = virt_type
         paramsMap['nova_compute_ips'] = nova_compute_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), nova_compute_ip_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     role = 'horizon'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'dashboard_vip'
         dashboard_vip= YAMLUtil.getValue(role, key)
         key = 'dashboard_vip_interface'
         dashboard_vip_interface = YAMLUtil.getValue(role, key)
         
         dashboard_ips_list = YAMLUtil.getRoleIPList(role)
         dashboard_ips = ','.join(dashboard_ips_list)
         print 'dashboard_vip=%s--' % dashboard_vip
         print 'dashboard_vip_interface=%s--' % dashboard_vip_interface
         print 'dashboard_ips=%s--' % dashboard_ips
         paramsMap['dashboard_vip'] = dashboard_vip
         paramsMap['dashboard_vip_interface'] = dashboard_vip_interface
         paramsMap['dashboard_ips'] = dashboard_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), dashboard_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
         
     print 'cinder============================================'
     role = 'cinder-api'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'cinder_vip'
         cinder_vip = YAMLUtil.getValue(role, key)
         
         key = 'cinder_vip_interface'
         cinder_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'cinder_mysql_user'
         cinder_mysql_user = YAMLUtil.getValue(role, key)
         
         key = 'cinder_mysql_password'
         cinder_mysql_password = YAMLUtil.getValue(role, key)
         
         cinder_ips_list = YAMLUtil.getRoleIPList(role)
         cinder_ips = ','.join(cinder_ips_list)
         print 'cinder_vip=%s-' % cinder_vip
         print 'cinder_vip_interface=%s--' % cinder_vip_interface
         print 'cinder_mysql_user=%s--' % cinder_mysql_user
         print 'cinder_mysql_password=%s--' % cinder_mysql_password
         print 'cinder_ips=%s--' % cinder_ips
         paramsMap['cinder_vip'] = cinder_vip
         paramsMap['cinder_vip_interface'] = cinder_vip_interface
         paramsMap['cinder_mysql_user'] = cinder_mysql_user
         paramsMap['cinder_mysql_password'] = cinder_mysql_password
         paramsMap['cinder_ips'] = cinder_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), cinder_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'cinder-storage============================================'
     role = 'cinder-storage'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         cinder_storage_ips_list = YAMLUtil.getRoleIPList(role)
         cinder_storage_ips = ','.join(cinder_storage_ips_list)
         paramsMap['cinder_storage_ips'] = cinder_storage_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), cinder_storage_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'heat============================================'
     role = 'heat'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         heat_ips_list = YAMLUtil.getRoleIPList(role)
         heat_ips = ','.join(heat_ips_list)
         print 'heat_ips=%s--' % heat_ips
         
         key = 'heat_vip'
         heat_vip = YAMLUtil.getValue(role, key)
         
         key = 'heat_vip_interface'
         heat_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'heat_mysql_user'
         heat_mysql_user = YAMLUtil.getValue(role, key)
         
         key = 'heat_mysql_password'
         heat_mysql_password = YAMLUtil.getValue(role, key)
         
         paramsMap['heat_ips'] = heat_ips
         paramsMap['heat_vip'] = heat_vip
         paramsMap['heat_vip_interface'] = heat_vip_interface
         paramsMap['heat_mysql_user'] = heat_mysql_user
         paramsMap['heat_mysql_password'] = heat_mysql_password
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), heat_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'neutron-agent============================================'
     role = 'neutron-agent'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         neutron_service_ips_list = YAMLUtil.getRoleIPList(role)
         neutron_service_ips = ','.join(neutron_service_ips_list)
         print 'neutron_service_ips=%s--' % neutron_service_ips
         paramsMap['neutron_service_ips'] = neutron_service_ips
         
         #REFACTOR LATER
         paramsMap['metadata_secret'] = '123456'
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), neutron_service_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'mongodb==========================================='
     role = 'mongodb'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         #refactor later
 #         key = 'mongodb_vip'
 #         mongodb_vip = YAMLUtil.getValue(role, key)
 #         
 #         key = 'mongodb_vip_interface'
 #         mongodb_vip_interface = YAMLUtil.getValue(role, key)
         
         mongodb_ips_list = YAMLUtil.getRoleIPList(role)
         mongodb_ips = ','.join(mongodb_ips_list)
         
         #refactor later
         mongodb_vip = mongodb_ips_list[0]
         mongodb_vip_interface = 'eth0'
         print 'mongodb_vip=%s-' % mongodb_vip
         print 'mongodb_vip_interface=%s--' % mongodb_vip_interface
         paramsMap['mongodb_vip'] = mongodb_vip
         paramsMap['mongodb_vip_interface'] = mongodb_vip_interface
         paramsMap['mongodb_ips'] = mongodb_ips
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), mongodb_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
             pass
         pass
     
     print 'ceilometer==========================================='
     role = 'ceilometer'
     is_role_file_path = '/opt/is_{rolename}_role'.format(rolename=role).replace('-', '_')
     if YAMLUtil.hasRoleInNodes(role):
         key = 'ceilometer_vip'
         ceilometer_vip = YAMLUtil.getValue(role, key)
         
         key = 'ceilometer_vip_interface'
         ceilometer_vip_interface = YAMLUtil.getValue(role, key)
         
         key = 'ceilometer_mongo_user'
         ceilometer_mongo_user = YAMLUtil.getValue(role, key)
         
         key = 'ceilometer_mongo_password'
         ceilometer_mongo_password = YAMLUtil.getValue(role, key)
         
         ceilometer_ips_list = YAMLUtil.getRoleIPList(role)
         ceilometer_ips = ','.join(ceilometer_ips_list)
         print 'ceilometer_vip=%s-' % ceilometer_vip
         print 'ceilometer_vip_interface=%s--' % ceilometer_vip_interface
         print 'ceilometer_mongo_user=%s--' % ceilometer_mongo_user
         print 'ceilometer_mongo_password=%s--' % ceilometer_mongo_password
         print 'ceilometer_ips=%s--' % ceilometer_ips
         paramsMap['ceilometer_vip'] = ceilometer_vip
         paramsMap['ceilometer_vip_interface'] = ceilometer_vip_interface
         paramsMap['ceilometer_mongo_user'] = ceilometer_mongo_user
         paramsMap['ceilometer_mongo_password'] = ceilometer_mongo_password
         paramsMap['ceilometer_ips'] = ceilometer_ips
         
         #REFACTOR LATER
         ceilometer_metering_secret = '7c1edcdfc1b2841c21ff'
         paramsMap['ceilometer_metering_secret'] = ceilometer_metering_secret
         
         if ParamsProducer.isExistElementInArray(YAMLUtil.getLocalIP(), ceilometer_ips_list) :
             FileUtil.writeContent(is_role_file_path, 'true')
         pass
     
     print 'get global var==========================================='
     role = 'global'
     neutron_dbpass = YAMLUtil.getValue(role, 'neutron_dbpass')
     nova_dbpass = YAMLUtil.getValue(role, 'nova_dbpass')
     
     paramsMap['neutron_dbpass'] = YAMLUtil.getValue(role, 'neutron_dbpass')
     paramsMap['nova_dbpass'] =  YAMLUtil.getValue(role, 'nova_dbpass')
         
     #HA: only 2,master-backup mutually
     print 'haproxy-keepalived=================='
     role = 'haproxy-keepalived'
     if YAMLUtil.hasRoleInNodes(role):
         ha_vip1 = YAMLUtil.getValue(role, 'haproxy_vip1')
         ha_vip2 = YAMLUtil.getValue(role, 'haproxy_vip2')
         ha_vip1_interface = YAMLUtil.getValue(role, 'haproxy_vipinterface1')
         ha_vip2_interface = YAMLUtil.getValue(role, 'haproxy_vipinterface2')
         
         paramsMap['ha_vip1'] = ha_vip1
         paramsMap['ha_vip2'] = ha_vip2
         paramsMap['ha_vip1_interface'] = ha_vip1_interface
         paramsMap['ha_vip2_interface'] = ha_vip2_interface
         
         #dispatch vip
         paramsMap['mysql_vip'] = ha_vip1
         paramsMap['rabbit_vip'] = ha_vip1
         paramsMap['keystone_vip'] = ha_vip1
         paramsMap['glance_vip'] = ha_vip1
         paramsMap['neutron_vip'] = ha_vip1
         paramsMap['nova_vip'] = ha_vip1
         paramsMap['dashboard_vip'] = ha_vip1
         paramsMap['cinder_vip'] = ha_vip1
         paramsMap['heat_vip'] = ha_vip1
         paramsMap['mongodb_vip'] = ha_vip2
         paramsMap['ceilometer_vip'] = ha_vip2
         pass
     
     openstackConfPopertiesFilePath = PropertiesUtility.getOpenstackConfPropertiesFilePath()
     admin_email = PropertiesUtility.getValue(openstackConfPopertiesFilePath, 'ADMIN_EMAIL')
     
     paramsMap['admin_email'] = admin_email
     
     import json
     jsonParams = json.dumps(paramsMap,indent=4)
     print jsonParams
     print type(jsonParams)
     
     openstackConfPopertiesFilePath = PropertiesUtility.getOpenstackConfPropertiesFilePath()
     openstackConfBaseDir = PropertiesUtility.getValue(openstackConfPopertiesFilePath, 'OPENSTACK_CONF_BASE_DIR')
     if not os.path.exists(openstackConfBaseDir) :
         ShellCmdExecutor.execCmd("mkdir %s" % openstackConfBaseDir)
         pass
     openstackParamsFilePath = os.path.join(openstackConfBaseDir, 'openstack_params.json')
     FileUtil.writeContent(openstackParamsFilePath, jsonParams)
     
     print 'produce role list done#######'
     
     ###zgf add
     YAMLUtil.setHosts()
Пример #4
0
 def produceIPList(role):
     YAMLUtil.writeIPList(role)
     pass
Пример #5
0
     pass
 
 Keystone.httpConf()
 
 Keystone.installWSGI()
 
 Keystone.startHttp()
 
 if Keystone.getServerIndex() == 0 :
     from openstack.kilo.keystone.initKeystone import InitKeystone
     InitKeystone.init()
     
     tag_file_name = 'keystone0_launched'
     from common.yaml.YAMLUtil import YAMLUtil
     #send to first glance
     if YAMLUtil.hasRoleInNodes('glance'):
         glance_ips = JSONUtility.getValue('glance_ips')
         glance_ip_list = glance_ips.split(',')
         SSH.sendTagTo(glance_ip_list[0], tag_file_name)
     
     #send to first neutron-server
     if YAMLUtil.hasRoleInNodes('neutron-server'):
         neutron_ips = JSONUtility.getValue('neutron_ips')
         neutron_ip_list = neutron_ips.split(',')
         SSH.sendTagTo(neutron_ip_list[0], tag_file_name)
     
     #send to first nova-api
     if YAMLUtil.hasRoleInNodes('nova-api'):
         nova_ips = JSONUtility.getValue('nova_ips')
         nova_ip_list = nova_ips.split(',')
         SSH.sendTagTo(nova_ip_list[0], tag_file_name)
Пример #6
0
 def produceIPList():
     YAMLUtil.writeIPList(MySQL.ROLE)
     pass