Exemple #1
0
def modify_knox_sso_ttl(ttl):
    '''
    :param ttl: TTL value to be set in knoxsso-topology file.
    :return: None
    '''
    content = apicorelib.get_service_config(serviceName="KNOX",
                                            config_type="knoxsso-topology",
                                            config="content")
    import xml.etree.ElementTree as ET
    doc = ET.fromstring(content)
    service_node = doc.find('service')

    for node in service_node:
        if node.tag == "param":
            for params in node:
                if params.tag == "name":
                    param_text = params.text
                if params.tag == "value" and param_text == "knoxsso.token.ttl":
                    params.text = str(ttl)

    propsToSet = {
        'content': ET.tostring(doc),
    }

    apicorelib.modify_service_configs(serviceName="KNOX",
                                      config_type="knoxsso-topology",
                                      configs_dict=propsToSet)
    Ambari.start_stop_service(service="KNOX",
                              state="INSTALLED",
                              waitForCompletion=True)
    Ambari.start_stop_service(service="KNOX",
                              state="STARTED",
                              waitForCompletion=True)
Exemple #2
0
 def removeYarnQueue(cls,
                     queueName="newQueue",
                     defaultConfig=None,
                     webURL=source_weburl,
                     cluster=None):
     if cluster == None:
         cluster = Ambari.getClusterName()
     if webURL == None:
         webURL = Ambari.getWebUrl()
     else:
         cluster = Ambari.getClusterName(weburl=webURL)
     # Delete new config
     deleteConfig = {}
     deleteConfig["yarn.scheduler.capacity.root." + queueName +
                  ".acl_administer_jobs"] = "*"
     deleteConfig["yarn.scheduler.capacity.root." + queueName +
                  ".acl_submit_applications"] = "*"
     deleteConfig["yarn.scheduler.capacity.root." + queueName +
                  ".capacity"] = "0"
     deleteConfig["yarn.scheduler.capacity.root." + queueName +
                  ".maximum-capacity"] = "0"
     deleteConfig["yarn.scheduler.capacity.root." + queueName +
                  ".state"] = "RUNNING"
     deleteConfig["yarn.scheduler.capacity.root." + queueName +
                  ".user-limit-factor"] = "1"
     Ambari.deleteConfig(type='capacity-scheduler',
                         config=deleteConfig,
                         webURL=webURL)
     # Reset to default config
     Ambari.setConfig(type='capacity-scheduler',
                      config=defaultConfig,
                      webURL=webURL)
     Ambari.start_stop_service('YARN',
                               'INSTALLED',
                               waitForCompletion=True,
                               weburl=webURL)
     logger.info("---- Done stopping YARN cluster")
     Ambari.start_stop_service('YARN',
                               'STARTED',
                               waitForCompletion=True,
                               weburl=webURL)
     time.sleep(30)
     logger.info("---- Done starting YARN cluster")
 def disableEnableDenyPolicyCreation(cls, enableDenyPolicyCreation, webURL):
     isDenyPolicyTrue = Ambari.getConfig(
         'beacon-security-site',
         webURL=webURL)['beacon.ranger.plugin.create.denypolicy']
     if (isDenyPolicyTrue == 'true') == enableDenyPolicyCreation:
         logger.info("skiping changing config , as it is already present")
     else:
         propsToSet = {
             'beacon.ranger.plugin.create.denypolicy':
             enableDenyPolicyCreation
         }
         Ambari.setConfig("beacon-security-site", propsToSet, webURL=webURL)
         Ambari.start_stop_service("BEACON",
                                   'INSTALLED',
                                   waitForCompletion=True,
                                   weburl=webURL)
         logger.info("---- Done stopping Beacon cluster")
         Ambari.start_stop_service('BEACON',
                                   'STARTED',
                                   waitForCompletion=True,
                                   weburl=webURL)
         logger.info("---- Done starting Beacon cluster")