2017年6月15日木曜日

Ambariはどうやってコンポーネントのステータスを確認しているのか

/var/lib/ambari-agent/cache/common-services/HDFS/2.1.0.2.0/package/scripts/hdfs_namenode.py

from resource_management.libraries.functions.check_process_status import check_process_status

  elif action == "status":
    import status_params
    check_process_status(status_params.namenode_pid_file)


Ambari Server側:
[root@node16 resources]# find . -type d -name package
./common-services/AMBARI_METRICS/0.1.0/package
./common-services/ATLAS/0.1.0.2.3/package
./common-services/HDFS/2.1.0.2.0/package
./common-services/HIVE/0.12.0.2.0/package
./common-services/HAWQ/2.0.0/package
./common-services/RANGER/0.4.0/package
./common-services/YARN/2.1.0.2.0/package
./common-services/SLIDER/0.60.0.2.2/package
./common-services/KNOX/0.5.0.2.2/package
./common-services/AMBARI_INFRA/0.1.0/package
./common-services/PIG/0.12.0.2.0/package
./common-services/TEZ/0.4.0.2.1/package
./common-services/OOZIE/4.0.0.2.0/package
./common-services/ZOOKEEPER/3.4.5/package
./common-services/GANGLIA/3.5.0/package
./common-services/RANGER_KMS/0.5.0.2.3/package
./common-services/KERBEROS/1.10.3-10/package
./common-services/SQOOP/1.4.4.2.0/package
./common-services/FLUME/1.4.0.2.0/package
./common-services/ACCUMULO/1.6.1.2.2.0/package
./common-services/MAHOUT/1.0.0.2.3/package
./common-services/PXF/3.0.0/package
./common-services/ZEPPELIN/0.6.0.2.5/package
./common-services/SPARK2/2.0.0/package
./common-services/KAFKA/0.8.1/package
./common-services/LOGSEARCH/0.5.0/package
./common-services/FALCON/0.5.0.2.1/package
./common-services/DRUID/0.9.2/package
./common-services/SPARK/1.2.1/package
./common-services/HBASE/0.96.0.2.0/package
./common-services/STORM/0.9.1/package
./stacks/HDP/2.3.ECS/services/ECS/package
./stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/package
./stacks/HDP/2.1/services/SMARTSENSE/package
./stacks/HDP/2.0.6.GlusterFS/services/YARN/package
./stacks/HDP/2.0.6.GlusterFS/services/GLUSTERFS/package
./stacks/HDP/2.1.GlusterFS/services/YARN/package
./stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/package
./stacks/HDP/2.1.GlusterFS/services/TEZ/package
./stacks/HDP/2.1.GlusterFS/services/FALCON/package
./stacks/HDP/2.1.GlusterFS/services/STORM/package


check_process_statusはKillコマンドで確認している
sudo.kill(pid, 0)


Smart SenseはPIDを確認していない
/var/lib/ambari-server/resources/stacks/HDP/2.1/services/SMARTSENSE/package/scripts/activity.py
    def status(self, env):
        import params

        cmd = '/usr/sbin/hst activity status '
        if self.component is 'explorer':
            cmd = '/usr/sbin/hst activity-explorer status '
        elif self.component is 'analyzer':
            cmd = '/usr/sbin/hst activity-analyzer status '

0 件のコメント:

コメントを投稿