Ejemplo n.º 1
0
def get_postgre_hba_dir(OS_FAMILY):
    """Return postgre hba dir location depends on OS.
  Also depends on version of postgres creates symlink like postgresql-->postgresql-9.3
  1) /etc/rc.d/init.d/postgresql --> /etc/rc.d/init.d/postgresql-9.3
  2) /etc/init.d/postgresql --> /etc/init.d/postgresql-9.1
  """
    if OSCheck.is_ubuntu_family():
        # Like: /etc/postgresql/9.1/main/
        return os.path.join(get_pg_hba_init_files(), get_ubuntu_pg_version(),
                            "main")
    elif OSCheck.is_redhat7():
        return PG_HBA_ROOT_DEFAULT
    else:
        if not os.path.isfile(get_pg_hba_init_files()):
            # Link: /etc/init.d/postgresql --> /etc/init.d/postgresql-9.1
            os.symlink(
                glob.glob(get_pg_hba_init_files() + '*')[0],
                get_pg_hba_init_files())

        pg_hba_init_basename = os.path.basename(get_pg_hba_init_files())
        # Get postgres_data location (default: /var/lib/pgsql/data)
        cmd = "alias basename='echo {0}; true' ; alias exit=return; source {1} status &>/dev/null; echo $PGDATA".format(
            pg_hba_init_basename, get_pg_hba_init_files())
        p = subprocess.Popen(cmd,
                             stdout=subprocess.PIPE,
                             stdin=subprocess.PIPE,
                             stderr=subprocess.PIPE,
                             shell=True)
        (PG_HBA_ROOT, err) = p.communicate()

        if PG_HBA_ROOT and len(PG_HBA_ROOT.strip()) > 0:
            return PG_HBA_ROOT.strip()
        else:
            return PG_HBA_ROOT_DEFAULT
Ejemplo n.º 2
0
def get_postgre_hba_dir(OS_FAMILY):
  """Return postgre hba dir location depends on OS.
  Also depends on version of postgres creates symlink like postgresql-->postgresql-9.3
  1) /etc/rc.d/init.d/postgresql --> /etc/rc.d/init.d/postgresql-9.3
  2) /etc/init.d/postgresql --> /etc/init.d/postgresql-9.1
  """
  if OS_FAMILY == OSConst.UBUNTU_FAMILY:
    # Like: /etc/postgresql/9.1/main/
    return os.path.join(PG_HBA_INIT_FILES[OS_FAMILY], get_ubuntu_pg_version(),
                        "main")
  elif OSCheck.is_redhat7():
    return PG_HBA_ROOT_DEFAULT
  else:
    if not os.path.isfile(PG_HBA_INIT_FILES[OS_FAMILY]):
      # Link: /etc/init.d/postgresql --> /etc/init.d/postgresql-9.1
      os.symlink(glob.glob(PG_HBA_INIT_FILES[OS_FAMILY] + '*')[0],
                 PG_HBA_INIT_FILES[OS_FAMILY])

    # Get postgres_data location (default: /var/lib/pgsql/data)
    cmd = "alias exit=return; source " + PG_HBA_INIT_FILES[
      OS_FAMILY] + " status &>/dev/null; echo $PGDATA"
    p = subprocess.Popen(cmd,
                         stdout=subprocess.PIPE,
                         stdin=subprocess.PIPE,
                         stderr=subprocess.PIPE,
                         shell=True)
    (PG_HBA_ROOT, err) = p.communicate()

    if PG_HBA_ROOT and len(PG_HBA_ROOT.strip()) > 0:
      return PG_HBA_ROOT.strip()
    else:
      return PG_HBA_ROOT_DEFAULT
Ejemplo n.º 3
0
def get_postgre_hba_dir(OS_FAMILY):
  """Return postgre hba dir location depends on OS.
  Also depends on version of postgres creates symlink like postgresql-->postgresql-9.3
  1) /etc/rc.d/init.d/postgresql --> /etc/rc.d/init.d/postgresql-9.3
  2) /etc/init.d/postgresql --> /etc/init.d/postgresql-9.1
  """
  if OSCheck.is_ubuntu_family():
    # Like: /etc/postgresql/9.1/main/
    return os.path.join(get_pg_hba_init_files(), get_ubuntu_pg_version(),
                        "main")
  elif OSCheck.is_redhat7():
    return PG_HBA_ROOT_DEFAULT
  else:
    if not os.path.isfile(get_pg_hba_init_files()):
      # Link: /etc/init.d/postgresql --> /etc/init.d/postgresql-9.1
      os.symlink(glob.glob(get_pg_hba_init_files() + '*')[0],
                 get_pg_hba_init_files())

    # Get postgres_data location (default: /var/lib/pgsql/data)
    cmd = "alias exit=return; source " + get_pg_hba_init_files() + " status &>/dev/null; echo $PGDATA"
    p = subprocess.Popen(cmd,
                         stdout=subprocess.PIPE,
                         stdin=subprocess.PIPE,
                         stderr=subprocess.PIPE,
                         shell=True)
    (PG_HBA_ROOT, err) = p.communicate()

    if PG_HBA_ROOT and len(PG_HBA_ROOT.strip()) > 0:
      return PG_HBA_ROOT.strip()
    else:
      return PG_HBA_ROOT_DEFAULT
Ejemplo n.º 4
0
def get_postgre_running_status(OS_FAMILY):
    """Return postgre running status indicator"""
    if OS_FAMILY == OSConst.UBUNTU_FAMILY:
        return os.path.join(get_ubuntu_pg_version(), "main")
    elif OSCheck.is_redhat7():
        return "active"
    else:
        return PG_STATUS_RUNNING_DEFAULT
Ejemplo n.º 5
0
 def getInterfaces(self):
   interface_pattern="(\w+)(?:.*Link encap:)"
   if OSCheck.is_redhat7():
     interface_pattern="(\w+)(?:.*flags=)"
   result = self.data_return_list(interface_pattern, self.DATA_IFCONFIG_OUTPUT)
   if result == '':
     log.warn("Can't get a network interfaces list from {0}".format(self.DATA_IFCONFIG_OUTPUT))
     return 'OS NOT SUPPORTED'
   else:
     return result
Ejemplo n.º 6
0
 def getNetmask(self):
   import fcntl
   import struct
   primary_ip = self.getIpAddress().strip()
   interface_pattern="(\w+)(?:.*Link encap:)"
   if OSCheck.is_redhat7():
     interface_pattern="(\w+)(?:.*flags=)"
   for i in re.findall(interface_pattern, self.DATA_IFCONFIG_OUTPUT):
     if primary_ip == self.get_ip_address_by_ifname(i.strip()).strip():
       return socket.inet_ntoa(fcntl.ioctl(socket.socket(socket.AF_INET, socket.SOCK_DGRAM), 35099, struct.pack('256s', i))[20:24])
Ejemplo n.º 7
0
 def getInterfaces(self):
   interface_pattern="(\w+)(?:.*Link encap:)"
   if OSCheck.is_redhat7():
     interface_pattern="(\w+)(?:.*flags=)"
   result = self.data_return_list(interface_pattern, self.DATA_IFCONFIG_OUTPUT)
   if result == '':
     log.warn("Can't get a network interfaces list from {0}".format(self.DATA_IFCONFIG_OUTPUT))
     return 'OS NOT SUPPORTED'
   else:
     return result
Ejemplo n.º 8
0
 def getNetmask(self):
   mask_pattern="(?: Mask:)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
   if OSCheck.is_redhat7():
     mask_pattern="(?: netmask )(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
   result = self.data_return_first(mask_pattern,self.DATA_IFCONFIG_OUTPUT)
   if result == '':
     log.warn("Can't get a netmask from {0}".format(self.DATA_IFCONFIG_OUTPUT))
     return 'OS NOT SUPPORTED'
   else:
     return result
Ejemplo n.º 9
0
 def getIpAddress(self):
   ip_pattern="(?: inet addr:)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
   if OSCheck.is_redhat7():
     ip_pattern="(?: inet )(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
   result = self.data_return_first(ip_pattern,self.DATA_IFCONFIG_OUTPUT)
   if result == '':
     log.warn("Can't get an ip address from {0}".format(self.DATA_IFCONFIG_OUTPUT))
     return socket.gethostbyname(socket.gethostname().lower())
   else:
     return result
Ejemplo n.º 10
0
 def getIpAddress(self):
     ip_pattern = "(?: inet addr:)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
     if OSCheck.is_redhat7():
         ip_pattern = "(?: inet )(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
     result = self.data_return_first(ip_pattern, self.DATA_IFCONFIG_OUTPUT)
     if result == '':
         log.warn("Can't get an ip address from {0}".format(
             self.DATA_IFCONFIG_OUTPUT))
         return socket.gethostbyname(socket.gethostname().lower())
     else:
         return result
Ejemplo n.º 11
0
 def getNetmask(self):
     mask_pattern = "(?: Mask:)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
     if OSCheck.is_redhat7():
         mask_pattern = "(?: netmask )(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
     result = self.data_return_first(mask_pattern,
                                     self.DATA_IFCONFIG_OUTPUT)
     if result == '':
         log.warn("Can't get a netmask from {0}".format(
             self.DATA_IFCONFIG_OUTPUT))
         return 'OS NOT SUPPORTED'
     else:
         return result
Ejemplo n.º 12
0
 def getNetmask(self):
   import fcntl
   import struct
   primary_ip = self.getIpAddress().strip()
   interface_pattern="(\w+)(?:.*Link encap:)"
   if OSCheck.is_redhat7():
     interface_pattern="(\w+)(?:.*flags=)"
   for i in re.findall(interface_pattern, self.DATA_IFCONFIG_OUTPUT):
     ip_address_by_ifname = self.get_ip_address_by_ifname(i.strip())
     if ip_address_by_ifname is not None:
       if primary_ip == ip_address_by_ifname.strip():
         return socket.inet_ntoa(fcntl.ioctl(socket.socket(socket.AF_INET, socket.SOCK_DGRAM), 35099, struct.pack('256s', i))[20:24])
       
   return None
Ejemplo n.º 13
0
  hive_server_win_service_name = "hiveserver2"
  webhcat_server_win_service_name = "templeton"
else:
  hive_pid_dir = config['configurations']['hive-env']['hive_pid_dir']
  hive_pid = 'hive-server.pid'

  hive_metastore_pid = 'hive.pid'

  hcat_pid_dir = config['configurations']['hive-env']['hcat_pid_dir'] #hcat_pid_dir
  webhcat_pid_file = format('{hcat_pid_dir}/webhcat.pid')

  process_name = 'mysqld'
  if OSCheck.is_suse_family() or OSCheck.is_ubuntu_family():
    daemon_name = 'mysql'
  else:
    if OSCheck.is_redhat7():
      daemon_name = 'mariadb'
    else:
      daemon_name = 'mysqld'

  # Security related/required params
  hostname = config['hostname']
  security_enabled = config['configurations']['cluster-env']['security_enabled']
  kinit_path_local = get_kinit_path(default('/configurations/kerberos-env/executable_search_paths', None))
  tmp_dir = Script.get_tmp_dir()
  hdfs_user = config['configurations']['hadoop-env']['hdfs_user']
  hive_user = config['configurations']['hive-env']['hive_user']
  webhcat_user = config['configurations']['hive-env']['webhcat_user']

  # default configuration directories
  hadoop_conf_dir = conf_select.get_hadoop_conf_dir()