コード例 #1
0
ファイル: views.py プロジェクト: s3vdev/sxconsole-lite
 def nodes(self):
     nodes = []
     for zone in self.zones:
         for node in zone:
             try:
                 nodes.append(api.getNodeStatus(node['nodeAddress']))
             except SXClientException:
                 return []
     return nodes
コード例 #2
0
ファイル: views.py プロジェクト: skylable/sxconsole-lite
 def nodes(self):
     nodes = []
     for zone in self.zones:
         for node in zone:
             try:
                 nodes.append(api.getNodeStatus(node['nodeAddress']))
             except SXClientException:
                 return []
     return nodes
コード例 #3
0
ファイル: views.py プロジェクト: s3vdev/sxconsole-lite
 def get_nodes_context(self):
     nodes_count = 0
     zones_info = []
     for i, zone in enumerate(self.zones):
         zone_nodes = []
         zones_info.append(zone_nodes)
         for j, data in enumerate(zone):
             nodes_count += 1
             node = {
                 'uuid': data['nodeUUID'],
                 'public_ip': data['nodeAddress'],
                 'private_ip': data.get('nodeInternalAddress'),
                 'capacity': data['nodeCapacity'],
             }
             zone_nodes.append(node)
             try:
                 data = api.getNodeStatus(data['nodeAddress'])
             except SXClientException:
                 node['down'] = True
                 continue
             node.update({
                 'sx_version':
                 data['libsxclientVersion'],
                 'hashfs_version':
                 data['hashFSVersion'].split()[-1],
                 'storage_path':
                 data['nodeDir'],
                 'cores':
                 data['cores'],
                 'memory':
                 data['memTotal'],
                 'system':
                 data['osType'] + ' ' + data['osRelease'],
                 'local_time':
                 parse_date(data['localTime']),
                 'used_space':
                 data['storageUsed'],
                 'free_space':
                 data['fsAvailBlocks'] * data['fsBlockSize'],
             })
     return {
         'nodes_count': nodes_count,
         'zones': zones_info,
     }
コード例 #4
0
ファイル: views.py プロジェクト: skylable/sxconsole-lite
    def get_nodes_context(self):
        nodes_count = 0
        zones_info = []
        for i, zone in enumerate(self.zones):
            zone_nodes = []
            zones_info.append(zone_nodes)
            for j, data in enumerate(zone):
                nodes_count += 1
                node = {
                    'uuid': data['nodeUUID'],
                    'public_ip': data['nodeAddress'],
                    'private_ip': data.get('nodeInternalAddress'),
                    'capacity': data['nodeCapacity'],
                }
                zone_nodes.append(node)
                try:
                    data = api.getNodeStatus(data['nodeAddress'])
                except SXClientException:
                    node['down'] = True
                    continue
                node.update({
                    'sx_version': data['libsxclientVersion'],
                    'hashfs_version': data['hashFSVersion'].split()[-1],
                    'storage_path': data['nodeDir'],

                    'cores': data['cores'],
                    'memory': data['memTotal'],

                    'system': data['osType'] + ' ' + data['osRelease'],
                    'local_time': parse_date(data['localTime']),

                    'used_space': data['storageUsed'],
                    'free_space': data['fsAvailBlocks'] * data['fsBlockSize'],
                })
        return {
            'nodes_count': nodes_count,
            'zones': zones_info,
        }