Skip To Content

Contrôle de l’intégrité de GeoAnalytics

L’opération de contrôle de l’intégrité indique l’état des ressources et des tâches de calcul sur la plateforme de calcul GeoAnalytics Server, la structure sous-jacente qui permet à GeoAnalytics Server de répartir l’analyse sur plusieurs cœurs et machines GeoAnalytics Server.

L’opération utilisée à des fins de résolution des problèmes et de surveillance est disponible pour l’administrateur du portail ou du serveur et est accessible via une connexion à votre répertoire administrateur ArcGIS Server à l’aide du format d’URL https://gis_geoanalytics_server.domain.com:6443/arcgis/admin. Pour ouvrir le contrôle de l’intégrité, depuis votre site GeoAnalytics Server, cliquez sur System (Système) > Platform Services (Services de la plateforme) > Compute Platform (Plateforme de calcul) > Health (Intégrité).

Utilisez le contrôle de l’intégrité pour faire ce qui suit :

  • Vérifiez et identifiez les machines GeoAnalytics Server utilisées à des fins d’analyse.
  • Vérifiez que la mémoire et les cœurs alloués sont bien utilisés lors de l’exécution de l’analyse (ou d’un outil).
  • Vérifiez le nombre de cœurs ou la mémoire disponibles sur les machines GeoAnalytics Server. Cela peut s’avérer utile si vous utilisez les paramètres GeoAnalytics Server.

    En savoir plus sur les paramètres GeoAnalytics Server

  • Recherchez le jobID d’une tâche GeoAnalytics Server pour afficher l’extrémité REST.
  • Résolvez les problèmes et les messages d’erreur.
    Remarque :

    Si vous recevez l’erreur Unable to initialize distributed compute platform service (Impossible d’initialiser le service de la plateforme de calcul distribué), exécutez le contrôle d’intégrité et vérifiez le statut des nœuds des travailleurs. Une fois que vous avez vérifié le statut des nœuds, effectuez les étapes mentionnées dans la rubrique Problèmes GeoAnalytics Server courants et solutions.

Remarque :

Le contrôle de l’intégrité de GeoAnalytics Server est également disponible via ArcGIS Monitor.

Pour en savoir plus sur ArcGIS Monitor

Le contrôle de l’intégrité de la plateforme de calcul utilise la terminologie de la structure sous-jacente qui distribue l’analyse. Les conditions et les concepts utilisés dans cette documentation sont soulignés dans le tableau ci-après :

PériodeDescription

Nœud

Machine serveur.

Travailleur

Machine utilisée pour le calcul. La machine travailleur reçoit les instructions de la machine principale et les exécute. Il peut y avoir une ou plusieurs machines travailleur par machine principale.

Principal

Serveur qui supervise les nœuds travailleur. Un serveur peut être à la fois un nœud principal et un nœud travailleur. Dans Spark, le serveur principal est appelé maître.

Tâche

Une tâche fait référence à l’exécution d’un outil GeoAnalytics Server.

Le contrôle de l’intégrité est composé de clés qui sont soit une valeur unique, soit un éventail de valeurs. Lorsqu’une tâche GeoAnalytics Server a été exécutée ou est terminée, le contrôle de l’intégrité dispose des clés suivantes pour chaque machine GeoAnalytics Server du site :

{
  "<geoanalytics server machine name>":{
  {.. url ..},
  {.. workers ..},
  {.. aliveworkers ..},
  {.. cores ..},
  {.. coresused ..},
  {.. memory ..},
  {.. memoryused ..},
  {.. resources ..},
  {.. resourcesused ..},
  {.. activeapps ..},
  {.. completedapps ..},
  {.. activedrivers ..},
  {.. completeddrivers ..},
  {.. status ..}
}

S’il existe plusieurs machines sur un site, il existe plusieurs geoanalytics service machine name keys. Seule la machine du nœud principal contient des informations sur les ressources et les tâches. Les machines des nœuds travailleurs ne contiennent que des valeurs null et 0. Au sein de chaque objet serveur de niveau supérieur, les clés suivantes contiennent tout un éventail de valeurs : workers, activeapps, completedapps et activedrivers. Les clés de niveau supérieur url, cores, coresused, memory, memoryused et status possèdent une valeur unique.

Chaque clé est explorée plus en détails à l’aide des exemples suivants :

  • Exemple 1 : site GeoAnalytics Server à une machine.
    • Chaque machine dispose de 32 Go (32768 Mo) de mémoire RAM et de 8 cœurs.
    • Les propriétés du système sont définies pour utiliser le maximum de 90 pour cent de la mémoire RAM et des cœurs disponibles.
      • L’instance GeoAnalytics Server utilise 29491 Mo de RAM par machine. Ce calcul est effectué à l’aide de l’équation suivante :
        floor(32768 x .90) = 29491
      • GeoAnalytics Server utilise sept cœurs. Ce calcul est effectué à l’aide de l’équation suivante :
        floor(8 cœurs x 1 machine x .90) = 7
  • Exemple 2 : site GeoAnalytics Server à trois machines.
    • Chaque machine dispose de 16 Go (16384 Mo) de mémoire RAM et de 4 cœurs.
    • Les propriétés du système utilisent le paramètre par défaut indiquant un maximum de 80 pour cent de la mémoire RAM et des cœurs disponibles.
      • GeoAnalytics Server utilise 13107 Mo de RAM par machine. Ce calcul est effectué à l’aide de l’équation suivante :
        floor(16384 x .80)= 13107
      • GeoAnalytics Server utilise neuf cœurs sur toutes les machines. Ce calcul est effectué à l’aide de l’équation suivante :
        floor(4 cœurs x 3 machines x .80) = 9

Informations et ressources du site

Les clés url, cores, coresused, memory, memoryused et status sont décrites dans cette section. Si vous avez plusieurs machines sur votre site GeoAnalytics Server, il existe plusieurs clés url. L’une des clés url sera complétée par des valeurs, comme illustré dans les exemples ci-après. Toutes les autres clés url auront des valeurs nulles et aucun travailleur ne sera répertorié. L’URL dont les valeurs sont renseignées représente le nœud principal ; les autres URL sont des machines représentées comme des travailleurs, qui ne correspondent pas au nœud principal. La clé activedrivers reste toujours une matrice vide.

Exemple 1 : site à une seule machineExemple 2 : site à trois machines

{
   "machine1.example-esri.com": {
       "url": "spark://machine1.example-esri.com:7077",
       "workers": [
           {
               ...worker1...
           }
       ],
       "aliveworkers": 1,
       "cores": 7,
       "coresused": 7,
       "memory": 29491,
       "memoryused": 29491,
       "resources":[{}],
       "resourcesused":[{}],
       "activeapps": [ ... ],
       "completedapps": [ ... ],
       "activedrivers": [],
       "completeddrivers": [],
       "status": "ALIVE"
   }
}

{
 "machine1.example-esri.com": {
       "url": "spark://machine1.example-esri.com:7077",
       "workers": [
           {
               ...worker1...
           },
           {
               ...worker2...
           },
           {
               ...worker3...
           }
       ],
       "aliveworkers": 3,
       "cores": 9,
       "coresused": 9,
       "memory": 13107,
       "memoryused": 13107,
       "resources":[{}],
       "resourcesused":[{}],
       "activeapps": [ ... ],
       "completedapps": [ ... ],
       "activedrivers": [],
       "completeddrivers": [],
       "status": "ALIVE"
   },
   "machine2.example-esri.com": {
       "url": "spark://machine2.example-esri.com:7077",
       "workers": [],
       "aliveworkers": 0,
       "cores": 0,
       "coresused": 0,
       "memory": 0,
       "memoryused": 0,
       "resources":[{}],
       "resourcesused":[{}],
       "activeapps": [],
       "completedapps": [],
       "activedrivers": [],
       "completeddrivers": [],
       "status": "STANDBY"
   },
   "machine3.example-esri.com": {
       "url": "spark://machine3.example-esri.com:7077",
       "workers": [],
       "aliveworkers": 0,
       "cores": 0,
       "coresused": 0,
       "memory": 0,
       "memoryused": 0,
       "resources":[{}],
       "resourcesused":[{}],
       "activeapps": [],
       "completedapps": [],
       "activedrivers": [],
       "completeddrivers": [],
       "status": "STANDBY"
   }
}

Description

  • url : URL de la machine GeoAnalytics Server avec le préfixe Spark et le port Spark. Seule une URL peut être répertoriée par machine.
  • cores : nombre total de cœurs disponibles sur GeoAnalytics Server pour toutes les machines GeoAnalytics Server du site. Cela représente le nombre total de nœuds disponibles multiplié par le paramètre percentageMaxAllowedComputeCores, dont la valeur est de 80 % par défaut.

    En savoir plus sur la définition de percentageMaxAllowedComputeCores.

  • coresused : nombre total de cœurs actuellement utilisés dans l’analyse GeoAnalytics Server sur toutes les machines du site GeoAnalytics Server.
  • memory : quantité totale de mémoire (Mo) disponible sur GeoAnalytics Server pour toutes les machines GeoAnalytics Server du site. Cela représente la quantité de mémoire sur chaque machine multipliée par la valeur percentageMaxAllowedComputeMemory et le nombre de machines.
  • memoryused : quantité totale de mémoire actuellement utilisée dans l’analyse GeoAnalytics Server sur toutes les machines du site GeoAnalytics Server.
  • resources : correspond toujours à une matrice vide.
  • resourcesused : correspond toujours à une matrice vide.
  • activeapps : tâches dont l’exécution est en cours.
  • completedapps : tâches dont l’exécution est terminée.
  • activedrivers : correspond toujours à une matrice vide.
  • completeddrivers : correspond toujours à une matrice vide.
  • status : statut de la machine.

Opérateurs

La clé workers identifie les machines et les informations du site GeoAnalytics Server.

Exemple 1 : site à une seule machineExemple 2 : site à trois machines
{
   "machine1.example-esri.com": {
       "url": "spark://machine1.example-esri.com:7077",
       "workers": [
           {
               "id": "worker-20180302114515-10.33.9.162-56544",
               "host": "10.33.9.162",
               "port": 56544,
               "cores": 3,
               "coresused": 3,
               "coresfree": 0,
               "memory": 29491,
               "memoryused": 29491,
               "memoryfree": 0,
               "resources": {},
               "resourcesused": {},
               "resourcesfree": {},
               "state": "ALIVE",
               "lastheartbeat": 1520469707880,
               "lastheartbeatString": "2018-03-07T04:41:47,880",
               "hostname": "machine1.example-esri.com"
           }
       ],
    ...
    }
   }
}
{
   "machine1.example-esri.com": {
       "url": "machine1.example-esri.com:7077",
       "workers": [
           {
               "id": "worker-20180302114515-10.33.9.162-56544",
               "host": "10.33.9.162",
               "port": 56544,
               "cores": 3,
               "coresused": 3,
               "coresfree": 0,
               "memory": 13107,
               "memoryused": 13107,
               "memoryfree": 0,
               "resources": {},
               "resourcesused": {},
               "resourcesfree": {},
               "state": "ALIVE",
               "lastheartbeat": 1520469707880,
               "lastheartbeatString": "2018-03-07T04:41:47,880",
               "hostname": "machine1.example-esri.com"
           },
           {
               "id": "worker-20180302114111-10.33.10.149-56543",
               "host": "10.33.10.149",
               "port": 56543,
               "cores": 3,
               "coresused": 3,
               "coresfree": 0,
               "memory": 13107,
               "memoryused": 13107,
               "memoryfree": 0,
               "resources": {},
               "resourcesused": {},
               "resourcesfree": {},
               "state": "ALIVE",
               "lastheartbeat": 1520469712961,
               "lastheartbeatString": "2018-03-07T04:41:52,961",
               "hostname": "machine2.example-esri.com"
           },
           {
               "id": "worker-20180302113155-10.33.9.165-56540",
               "host": "10.33.9.165",
               "port": 56540,
               "cores": 3,
               "coresused": 3,
               "coresfree": 0,
               "memory": 13107,
               "memoryused": 13107,
               "memoryfree": 0,
               "resources": {},
               "resourcesused": {},
               "resourcesfree": {},
               "state": "ALIVE",
               "lastheartbeat": 1520469712874,
               "lastheartbeatString": "2018-03-07T04:41:52,874",
               "hostname": "machine3.example-esri.com"
           }
       ],
    ...
    },    
   "machine2.example-esri.com": {...},
   "machine3.example-esri.com": {...}
   }
}

Description

  • id : identifiant unique du travailleur.
  • host : adresse hôte de la machine.
  • port : port sur la machine utilisé pour l’analyse GeoAnalytics Server. Chaque travailleur a son propre port qui lui est assigné. Il est nécessaire que ces ports soient ouverts pour la communication.
  • cores : nombre de cœurs attribués à l’analyse GeoAnalytics Server sur la machine. Ce nombre est défini à l’aide des paramètres GeoAnalytics Server et représente le paramètre percentageMaxAllowedComputeCores.
  • coresused : nombre de cœurs actuellement utilisés pour l’analyse GeoAnalytics Server. Si des GeoAnalytics Tools sont en cours d’exécution, cette valeur devrait être supérieure à 0.
  • coresfree : nombre de cœurs actuellement disponibles et pouvant être utilisés immédiatement pour l’analyse GeoAnalytics Server sur cette machine. Si ce nombre est égal à cores sur toutes les machines, aucun GeoAnalytics Tools n’est actuellement en cours d’exécution.
  • memory : quantité de mémoire (Mo) allouée à l’analyse GeoAnalytics Server sur la machine. Ce nombre est défini à l’aide des paramètres GeoAnalytics Server et représente le paramètre percentageMaxAllowedComputeMemory.
  • memoryused : quantité de mémoire (Mo) actuellement allouée à l’analyse GeoAnalytics Server par la machine spécifiée.
  • memoryfree : quantité de mémoire (Mo) actuellement disponible et pouvant être utilisée immédiatement pour l’analyse GeoAnalytics Server sur cette machine. La quantité de mémoire memoryfree doit être supérieure ou égale à la quantité définie dans le paramètre de serveur sur chaque machine pour que les GeoAnalytics Tools puissent être exécutés.
  • resources : ressources totales du travailleur. Cette valeur reste toujours vide.
  • resourcesused : ressources allouées au travailleur. Cette valeur reste toujours vide.
  • resourcesfree : ressources disponibles pour le travailleur. Cette valeur reste toujours vide.
  • state : état de la machine actuelle. ALIVE : actif, prêt à exécuter une tâche ou exécute actuellement une tâche. STANDBY bascule sur ALIVE au démarrage d’une tâche. DEAD : erreur possible ; GeoAnalytics Server doit être redémarré. UNKNOWN : erreur possible ; GeoAnalytics Server doit être redémarré. Si une machine ne peut pas basculer sur ALIVE ou STANDBY depuis DEAD ou UNKNOWN, contactez le support Esri.
  • lastheartbeat : dernière fois que la machine actuelle a contacté le nœud principal, en millisecondes depuis epoch. Ce calcul est effectué en heure locale de la machine.
  • lastheartbeatString : dernière fois que la machine actuelle a contacté le nœud principal, au format chaîne. Ce calcul est effectué en heure locale de la machine.
  • hostname : nom d’hôte de la machine travailleur.

Applications terminées

La clé completedapps identifie les outils et informations GeoAnalytics Server terminés. Cela inclut les outils qui ont été exécutés avec succès, et ceux qui ont abouti à un échec. Les informations des applications terminées sont effacées au redémarrage de GeoAnalytics Server.

Exemple 1 : site à une seule machineExemple 2 : site à trois machines
{
   "machine1.example-esri.com": {
       "url": "spark://machine1.example-esri.com:7077",
       "workers": [...],
       ...,
       "activeapps": [...],
       "completedapps": [
           {
               "starttime": 1520469691617,
               "id": "app-20180307164131-0008",
               "name": "ArcGIS GeoAnalytics (jcb8bda25a3f14dc7835dca0b3267b42c)",
               "cores": 7,
               "user": "agstest",
               "memoryperslave": 29491,
               "resourcesperslave": [],
               "submitdate": "Wed Mar 07 16:41:31 PST 2018",
               "state": "FINISHED",
               "duration": 21947
           }
       ],
       "activedrivers": [],
       "completeddrivers": [],
       "status": "ALIVE"
   }
}
{
   "machine1.example-esri.com": {
       "url": "spark://machine1.example-esri.com:7077",
       "workers": [...],
       ...,
       "activeapps": [...],
       "completedapps": [
           {
               "starttime": 1520469691617,
               "id": "app-20180307164131-0008",
               "name": "ArcGIS GeoAnalytics (jcb8bda25a3f14dc7835dca0b3267b42c)",
               "cores": 9,
               "user": "agstest",
               "memoryperslave": 13107,
               "resourcesperslave": [],
               "submitdate": "Wed Mar 07 16:41:31 PST 2018",
               "state": "FINISHED",
               "duration": 21947
           }
       ],
       "activedrivers": [],
       "completeddrivers": [],
       "status": "ALIVE"
   },
   "machine2.example-esri.com": {...},
   "machine3.example-esri.com": {...}
}

Description

  • starttime : heure du début d’exécution de la tâche GeoAnalytics Tools, en millisecondes depuis epoch.
  • id : identifiant unique de la tâche.
  • name : nom de la tâche. Ce nom est toujours au format ArcGIS GeoAnalytics (<jobID>). Le jobID est identique au jobID utilisé à l’extrémité REST lors de l’exécution d’une tâche.
  • cores :nombre total de cœurs utilisés pour l’analyse sur toutes les machines.
  • user : utilisateur qui a exécuté la tâche. Il s’agit de l’utilisateur qui a configuré ArcGIS Server et qui sera toujours le même sur votre site. Il ne s’agit pas du membre du portail qui a exécuté la tâche.
  • memoryperslave : quantité de mémoire utilisée sur chaque machine.
  • resourcesperslave : quantité de ressources utilisées sur chaque machine.
  • submitdate : heure du début de la tâche GeoAnalytics Tools dans un format texte lisible.
  • state : état de la tâche actuelle. FINISHED signifie que la tâche est terminée. La tâche a peut être été exécutée avec succès ou a généré une erreur.
  • duration : durée totale de cette tâche en millisecondes.

Applications actives

La clé activeapps identifie les GeoAnalytics Tools actuellement en cours d’exécution et leurs informations. Une fois qu’une tâche est terminée, les informations sont déplacées vers l’objet completedapps.

Exemple 1 : site à une seule machineExemple : site à trois machines
{
   "machine1.example-esri.com": {
       "url": "spark://machine1.example-esri.com:7077",
       "workers": [...],
       ...,
       "activeapps": [
           {
               "starttime": 1520464610794,
               "id": "app-20180307151650-0007",
               "name": "ArcGIS GeoAnalytics (j4b986eb5c603426fae7abe8e9d5d7afa)",
               "cores": 7,
               "user": "agstest",
               "memoryperslave": 29491,
               "resourcesperslave": [],
               "submitdate": "Wed Mar 07 15:16:50 PST 2018",
               "state": "RUNNING",
               "duration": 5105025
           }
       ],
       "completedapps": [...]
   }
}
{
   "machine1.example-esri.com": {
       "url": "spark://machine1.example-esri.com:7077",
       "workers": [...],
       ...,
       "activeapps": [
           {
               "starttime": 1520464610794,
               "id": "app-20180307151650-0007",
               "name": "ArcGIS GeoAnalytics (j4b986eb5c603426fae7abe8e9d5d7afa)",
               "cores": 9,
               "user": "agstest",
               "memoryperslave": 13107,
               "resourcesperslave": [],
               "submitdate": "Wed Mar 07 15:16:50 PST 2018",
               "state": "RUNNING",
               "duration": 5105025
           }
       ],
       "completedapps": [...]
   },
   "machine2.example-esri.com": {...},
   "machine3.example-esri.com": {...}
}

Description

  • starttime : heure du début d’exécution des GeoAnalytics Tools en millisecondes depuis epoch.
  • id : identifiant unique de la tâche.
  • name : nom de la tâche. Ce nom est toujours au format ArcGIS GeoAnalytics (<jobID>). La valeur jobID est identique à l’ID de tâche utilisé à l’extrémité REST lors de l’exécution d’une tâche.
  • cores :nombre total de cœurs utilisés pour l’analyse sur toutes les machines.
  • user : utilisateur qui a exécuté la tâche. Il s’agit de l’utilisateur qui a configuré ArcGIS Server et qui sera toujours le même sur votre site. Il ne s’agit pas du membre du portail qui a exécuté la tâche.
  • memoryperslave : quantité de mémoire utilisée sur chaque machine.
  • resourcesperslave : quantité de ressources utilisées sur chaque machine.
  • submitdate : heure du début d’exécution de l’GeoAnalytics Tools dans un format texte lisible.
  • state : état de la tâche actuelle. RUNNING signifie que la tâche a commencé. WAITING signifie que la tâche est en attente pendant une minute, le temps de déterminer s’il y a suffisamment de ressources. S’il n’y a pas suffisamment de ressources estimées sous une minute, la tâche est annulée. Si le nombre de ressources est suffisant, la tâche passe à l’état RUNNING.
  • duration : durée actuelle de la tâche en millisecondes.