Vous pouvez installer et configurer le monitoring MySQL sur Kubernetes à l'aide du chart Helm mysql-otel. En option, le chart peut également exécuter un job de configuration qui crée l'utilisateur de monitoring pour vous.
Installation guidée
Pour installer plutôt via l’UI de New Relic, accédez à one.newrelic.com > Integrations & Agents > MySQL (Database 360) . Cette page traite uniquement de l’installation manuelle.
Important
Le chart déploie le collecteur en tant que déploiement Kubernetes qui accède à MySQL à distance sur le réseau. Par conséquent, il se connecte toujours via TCP (le monitoring par socket Unix n’est pas pris en charge), et il ne rapporte que les métriques MySQL (aucune métrique d’hôte ou d’infrastructure pour la machine sur laquelle MySQL s’exécute). En utilisant mysql.*, il monitore une instance MySQL par sortie ; pour monitorer plusieurs instances à partir d’une seule sortie, utilisez plutôt mysqlMulti.* (voir Monitorer plusieurs instances à partir d’une seule sortie ci-dessous).
Prérequis
Une clé de licence New Relic valide.
MySQL 5.7 ou version ultérieure.
Helm 3.0 ou version ultérieure, et
kubectlconfiguré pour accéder à votre cluster Kubernetes.Connectivité réseau depuis votre cluster Kubernetes vers l'hôte MySQL (ou le point de terminaison RDS) et le port :
- Auto-hébergé : un chemin routé vers l’hôte MySQL (VPN, peering, ou réseau partagé), une résolution DNS s’il s’agit d’un nom d’hôte, et le pare-feu côté MySQL doit autoriser l’IP source réelle de la connexion (qui peut être un gateway NAT, et non l’IP du pod elle-même).
- AWS RDS : le peering VPC, un gateway de transit, ou un placement VPC partagé avec l’instance RDS, et le groupe de sécurité RDS doivent autoriser le port MySQL (
3306par défaut) depuis la source de sortie du cluster.
Soit un utilisateur de monitoring que vous avez déjà créé, soit des identifiants d’administrateur MySQL afin que le job de configuration du chart puisse en créer un pour vous. Voir Configurer les identifiants de monitoring ci-dessous.
Créer l’espace de nommage
Créez l’espace de nommage dans lequel vous effectuerez l’installation. Il doit exister avant que vous ne créiez des secrets à l’étape suivante, car helm install --create-namespace ne crée l’espace de nommage que lors de l’étape d’installation finale :
$kubectl create namespace newrelicConseil
Définissez-le comme espace de nommage par défaut pour votre contexte kubectl actuel afin de ne pas avoir à passer -n à chaque commande ci-dessous :
$kubectl config set-context --current --namespace=newrelicConfigurez les identifiants de monitoring
Décidez si vous souhaitez que la tâche de configuration du chart crée l’utilisateur de monitoring MySQL pour vous, et si ce n’est pas le cas, comment vous fournirez ses identifiants :
Configurez les valeurs Helm
Configurez mysql.topology pour correspondre à votre environnement :
Valeur | Description |
|---|---|
| MySQL auto-hébergé, accessible via le réseau. |
| MySQL ou Aurora sur AWS RDS. |
Utilisez le values.yaml qui correspond à la méthode d'identification que vous avez choisie à l'étape précédente :
paramètres | Description |
|---|---|
| Votre clé de licence New Relic. |
| Le point de terminaison OTLP/gRPC de votre région, sous la forme d’un |
| Votre hôte MySQL (ou point de terminaison RDS) et votre port, accessibles depuis le cluster. |
| Facultatif. Restreignez le monitoring à une seule base de données. Laissez vide pour monitorer toutes les bases de données. |
| Facultatif. Le chart ne déclare pas de bloc |
| L'image de la CLI |
| Facultatif. Accorde également |
Conseil
Consultez le fichier values.yaml du chart pour toutes les options de configuration disponibles, y compris mysql.collectionInterval, mysql.explainMode, les blocs statementEvents/querySampleCollection/topQueryCollection, et l’échappatoire additionalReceiverConfig.
(Facultatif) Monitorer plusieurs instances à partir d’une seule sortie
Au lieu de mysql.*, définissez mysqlMulti.enabled: true pour monitorer plusieurs instances MySQL (auto-hébergées ou RDS) à partir d’un seul pod collecteur dans une seule sortie. Les deux modes sont mutuellement exclusifs : ne définissez pas mysql.server et mysqlMulti.enabled: true dans la même sortie.
Le mode multi-instance n’a pas de chemin nom d’utilisateur / mot de passe en clair : chaque instance a besoin de son propre secret Kubernetes avec des identifiants de monitoring. Décidez si vous souhaitez également que le job de configuration crée chaque utilisateur de monitoring pour vous :
paramètres | Description |
|---|---|
| Définissez sur |
|
|
| Liste des instances à monitorer. Chaque entrée nécessite un |
Conseil
Les paramètres de scraping (intervalle de collecte, TLS, événements d’instruction, collecte d’échantillons de requêtes, collecte des requêtes principales) s’appliquent de manière identique à chaque instance dans mysqlMulti.databases. Il n’y a pas de surcharge par instance. Utilisez additionalReceiverConfig pour tout ce qui doit différer. La tâche de configuration s’exécute une fois par instance (<release>-setup-<name>) plutôt qu’une fois par sortie.
Installer le chart Helm
Ajouter le dépôt Helm New Relic :
bash$helm repo add newrelic https://helm-charts.newrelic.com$helm repo updateInstallez le chart à l'aide de votre fichier
values.yaml:bash$helm upgrade --install mysql-otel newrelic/mysql-otel \>-n newrelic \>--create-namespace \>-f values.yaml
Vérifier l'installation
Vérifiez que la tâche de configuration est terminée (si elle est activée), et que le pod du collecteur est en cours d’exécution :
bash$kubectl get jobs,pods -n newrelic --watchExécutez cette requête dans le générateur de requêtes pour confirmer que les données arrivent :
SELECT count(*) FROM MetricWHERE metricName LIKE 'mysql.%'AND instrumentation.provider = 'opentelemetry'SINCE 10 minutes ago
Trouvez et utilisez vos données
Une fois vos données collectées, vous pouvez accéder à un monitoring complet de la base de données MySQL via l'UI de New Relic.
Pour trouver votre entité de base de données MySQL dans New Relic :
- Allez à one.newrelic.com > All capabilities > Databases.
- Dans la liste déroulante Entity type, sélectionnez MySQL instance, puis cliquez sur Apply.
- Sélectionnez votre base de données MySQL dans la liste des entités.
Documentation associée
Introduction au monitoring MySQL avec NRDOT
Découvrez toutes les méthodes d'installation disponibles pour le monitoring de MySQL avec New Relic.
Installation via la CLI
Découvrez comment installer et configurer le monitoring MySQL avec une seule commande CLI New Relic.
Installation via Ansible
Découvrez comment installer et configurer le monitoring MySQL à grande échelle avec le newrelic.newrelic_install rôle Ansible.
Installation via Chef
Découvrez comment installer et configurer le monitoring MySQL à grande échelle avec le cookbook Chef newrelic-install.