Ce check recueille des métriques pour les masters Mesos. Pour en savoir plus sur les métriques de slave Mesos, consultez la section relative à l’intégration Mesos Slave.

Présentation
Ce check recueille des métriques des masters Mesos pour :
- les ressources du cluster ;
- les slaves enregistrés, actifs, inactifs, connectés, déconnectés, etc. ;
- le nombre de tâches échouées, terminées, en cours d’exécution, etc. ;
- le nombre de frameworks actifs, inactifs, connectés ou déconnectés ;
et bien plus encore.
Implémentation
Installation
L’installation se fait de la même façon que vous utilisiez Mesos avec ou sans DC/OS. Exécutez le conteneur datadog-agent sur chacun de vos nœuds Mesos Master :
docker run -d --name datadog-agent \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v /proc/:/host/proc/:ro \
-v /sys/fs/cgroup/:/host/sys/fs/cgroup:ro \
-e DD_API_KEY= \
-e MESOS_MASTER=true \
-e MARATHON_URL=http://leader.mesos:8080 \
datadog/agent:latest
Spécifiez votre clé d’API Datadog et votre URL d’API Mesos Master dans la commande ci-dessus.
Configuration
Si l’URL de master transmise au lancement de datadog-agent est valide, l’Agent utilise déjà un fichier mesos_master.d/conf.yaml
par défaut pour recueillir les métriques de vos masters. Consultez le fichier d’exemple mesos_master.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Toutefois, vos métriques ne seront pas recueillies si l’API de votre master utilise un certificat auto-signé. Dans ce cas, spécifiez disable_ssl_validation: true
dans mesos_master.d/conf.yaml
.
Collecte de logs
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
Ajoutez ce bloc de configuration à votre fichier mesos_master.d/conf.yaml
pour commencer à recueillir vos logs Mesos :
logs:
- type: file
path: /var/log/mesos/*
source: mesos
Modifiez la valeur du paramètre path
en fonction de votre environnement, ou utilisez le stdout Docker standard :
logs:
- type: docker
source: mesos
Consultez le fichier d’exemple mesos_master.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Redémarrez l’Agent.
Pour activer les logs pour les environnements Kubernetes, consultez la section Collecte de logs avec Kubernetes.
Validation
Dans Datadog, recherchez mesos.cluster
depuis la page Metrics Explorer.
Données collectées
Métriques
Événements
Le check Mesos-master n’inclut aucun événement.
Checks de service
mesos_master.can_connect
Renvoie CRITICAL si l’Agent n’est pas capable de se connecter à l’API Master Mesos pour recueillir des métriques. Si ce n’est pas le cas, renvoie OK.
Statuses: ok, critical
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.
Pour aller plus loin
Intégration Mesos Slave

Présentation
Ce check de l’Agent recueille des métriques des slaves Mesos pour :
- la charge système ;
- le nombre de tâches échouées, terminées, en cours d’exécution, etc. ;
- le nombre d’exécuteurs en cours d’exécution, terminés, etc. ;
Et bien plus encore.
Ce check crée également un check de service pour chaque tâche d’exécuteur.
Configuration
Installation
Consultez la documentation relative à l’installation de Datadog sur Mesos avec DC/OS pour installer l’Agent Datadog sur chaque nœud d’Agent Mesos avec l’interface Web DC/OS.
Procédure à suivre
DC/OS
- Depuis l’interface Web DC/OS, cliquez sur l’onglet Universe. Recherchez le paquet datadog et cliquez sur le bouton d’installation.
- Cliquez sur le bouton Advanced Installation.
- Saisissez votre clé d’API Datadog dans le premier champ.
- Dans le champ Instances, indiquez le nombre de nœuds slave dans votre cluster (pour déterminer ce nombre, cliquez sur l’onglet Nodes sur le côté gauche de l’interface Web DC/OS).
- Cliquez sur Review and Install, puis sur Install.
Marathon
Si vous n’utilisez pas DC/OS, définissez l’Agent Datadog via l’interface Web Marathon ou en transmettant le JSON ci-dessous à l’URL de l’API. Vous devrez remplacer <VOTRE_CLÉ_API_DATADOG>
par votre clé d’API, et le nombre d’instances par le nombre de nœuds slave sur votre cluster. De plus, vous devrez peut-être mettre à jour l’image Docker pour la faire correspondre à un tag plus récent. Pour obtenir la dernière version de l’image, accédez au Docker Hub.
{
"id": "/datadog-agent",
"cmd": null,
"cpus": 0.05,
"mem": 256,
"disk": 0,
"instances": 1,
"constraints": [
["hostname", "UNIQUE"],
["hostname", "GROUP_BY"]
],
"acceptedResourceRoles": ["slave_public", "*"],
"container": {
"type": "DOCKER",
"volumes": [
{
"containerPath": "/var/run/docker.sock",
"hostPath": "/var/run/docker.sock",
"mode": "RO"
},
{ "containerPath": "/host/proc", "hostPath": "/proc", "mode": "RO" },
{
"containerPath": "/host/sys/fs/cgroup",
"hostPath": "/sys/fs/cgroup",
"mode": "RO"
}
],
"docker": {
"image": "datadog/agent:latest",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 8125,
"hostPort": 8125,
"servicePort": 10000,
"protocol": "udp",
"labels": {}
}
],
"privileged": false,
"parameters": [
{ "key": "name", "value": "datadog-agent" },
{ "key": "env", "value": "DD_API_KEY=<VOTRE_CLÉ_API_DATADOG>" },
{ "key": "env", "value": "MESOS_SLAVE=true" }
],
"forcePullImage": false
}
},
"healthChecks": [
{
"protocol": "COMMAND",
"command": { "value": "/probe.sh" },
"gracePeriodSeconds": 300,
"intervalSeconds": 60,
"timeoutSeconds": 20,
"maxConsecutiveFailures": 3
}
],
"portDefinitions": [
{ "port": 10000, "protocol": "tcp", "name": "default", "labels": {} },
{ "port": 10001, "protocol": "tcp", "labels": {} }
]
}
Vous n’avez rien d’autre à faire après avoir installé l’Agent, sauf si vous souhaitez modifier la configuration du fichier mesos_slave.d/conf.yaml
(pour ajouter le paramètre disable_ssl_validation: true
, par exemple).
Collecte de logs
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
Ajoutez ce bloc de configuration à votre fichier mesos_slave.d/conf.yaml
pour commencer à recueillir vos logs Mesos :
logs:
- type: file
path: /var/log/mesos/*
source: mesos
Modifiez la valeur du paramètre path
en fonction de votre environnement, ou utilisez le stdout Docker standard :
logs:
- type: docker
source: mesos
Consultez le fichier d’exemple mesos_slave.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Redémarrez l’Agent.
Pour activer les logs pour les environnements Kubernetes, consultez la section Collecte de logs avec Kubernetes.
Validation
DC/OS
L’Agent Datadog devrait maintenant s’afficher dans l’onglet Services de l’interface Web DC/OS. Dans Datadog, recherchez mesos.slave
depuis la page Metrics Explorer.
Marathon
Si vous n’utilisez pas DC/OS, vous trouverez datadog-agent dans la liste des applications en cours d’exécution avec un statut sain. Dans Datadog, recherchez mesos.slave
depuis la page Metrics Explorer.
Données collectées
Métriques
Événements
Le check Mesos-slave n’inclut aucun événement.
Checks de service
mesos_slave.can_connect
Renvoie CRITICAL si l’Agent n’est pas capable de se connecter au endpoint « Mesos slave metrics ». Si ce n’est pas le cas, renvoie OK.
Statuses: ok, critical
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.
Pour aller plus loin