Remarque : cette intégration s’applique uniquement à la version 12 et aux versions antérieures d’OpenStack (non conteneurisées). Pour recueillir des métriques pour les versions 13 et ultérieures (conteneurisées), utilisez l’intégration OpenStack Controller.
Recueillez des métriques du service OpenStack en temps réel pour :
Visualiser et surveiller les états OpenStack
Être informé des failovers et des événements OpenStack
Configurez un rôle et un utilisateur Datadog avec votre serveur d’identité :
openstack role create datadog_monitoring
openstack user create datadog \
--password my_password \
--project my_project_name
openstack role add datadog_monitoring \
--project my_project_name \
--user datadog
Mettez ensuite à jour vos fichiers policy.json afin d’accorder les autorisations nécessaires. role:datadog_monitoring doit pouvoir accéder aux opérations suivantes :
Nova
{"compute_extension":"aggregates","compute_extension":"hypervisors","compute_extension":"server_diagnostics","compute_extension":"v3:os-hypervisors","compute_extension":"v3:os-server-diagnostics","compute_extension":"availability_zone:detail","compute_extension":"v3:availability_zone:detail","compute_extension":"used_limits_for_admin","os_compute_api:os-aggregates:index":"rule:admin_api or role:datadog_monitoring","os_compute_api:os-aggregates:show":"rule:admin_api or role:datadog_monitoring","os_compute_api:os-hypervisors":"rule:admin_api or role:datadog_monitoring","os_compute_api:os-server-diagnostics":"rule:admin_api or role:datadog_monitoring","os_compute_api:os-used-limits":"rule:admin_api or role:datadog_monitoring"}
Neutron
{"get_network":"rule:admin_or_owner or rule:shared or rule:external or rule:context_is_advsvc or role:datadog_monitoring"}
Keystone
{"identity:get_project":"rule:admin_required or project_id:%(target.project.id)s or role:datadog_monitoring","identity:list_projects":"rule:admin_required or role:datadog_monitoring"}
Vous devrez peut-être redémarrer vos services d’API Keystone, Neutron et Nova pour que les modifications apportées au fichier policy.json prennent effet.
Remarque : l’installation de l’intégration OpenStack est susceptible d’augmenter le nombre de machines virtuelles surveillées par Datadog, ce qui peut avoir une incidence sur votre facturation. Pour en savoir plus, consultez la FAQ sur la facturation.
Configurez l’Agent Datadog de façon à le connecter à votre serveur Keystone, puis spécifiez les projets à surveiller. Modifiez le fichier openstack.d/conf.yaml dans le dossier conf.d/ à la racine du répertoire de configuration de votre Agent en ajoutant la configuration ci-dessous. Consultez le fichier d’exemple openstack.d/conf.yaml pour découvrir toutes les options de configuration disponibles :
init_config:## @param keystone_server_url - string - required## Where your identity server lives.## Note that the server must support Identity API v3#keystone_server_url:"https://<KEYSTONE_SERVER_ENDPOINT>:<PORT>/"instances:## @param name - string - required## Unique identifier for this instance.#- name:"<INSTANCE_NAME>"## @param user - object - required## User credentials## Password authentication is the only auth method supported.## `user` object expects the parameter `username`, `password`,## and `user.domain.id`.#### `user` should resolve to a structure like:#### {'password': '<PASSWORD>', 'name': '<USERNAME>', 'domain': {'id': '<DOMAINE_ID>'}}#user:password:"<PASSWORD>"name:datadogdomain:id:"<DOMAINE_ID>"
Modifiez la valeur du paramètre path et configurez-le pour votre environnement. Consultez le fichier d’exemple openstack.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
openstack.neutron.api.up Renvoie CRITICAL si l’Agent n’est pas capable d’interroger l’API Neutron, renvoie UNKNOWN en cas de problème avec l’API Keystone ou renvoie OK pour les autres cas. Statuses: ok, critical, unknown
openstack.nova.api.up Renvoie CRITICAL si l’Agent n’est pas capable d’interroger l’API Nova, renvoie UNKNOWN en cas de problème avec l’API Keystone ou renvoie OK pour les autres cas. Statuses: ok, critical, unknown
openstack.keystone.api.up Renvoie CRITICAL si l’Agent n’est pas capable d’interroger l’API Keystone. Si ce n’est pas le cas, renvoie OK. Statuses: ok, critical
openstack.nova.hypervisor.up Renvoie UNKNOWN si l’Agent n’est pas capable d’obtenir l’état de l’hyperviseur, renvoie CRITICAL si l’hyperviseur est indisponible ou renvoie OK pour les autres cas. Statuses: ok, critical, unknown
openstack.neutron.network.up Renvoie UNKNOWN si l’Agent n’est pas capable d’obtenir l’état du réseau, renvoie CRITICAL si le réseau est indisponible ou renvoie OK pour les autres cas. Statuses: ok, critical, unknown