Skip to main content
ProbeDeck est un client iOS et iPadOS qui permet de vérifier l’état d’un serveur ClickHouse, d’inspecter les tables system et d’exécuter du SQL. Il se connecte à l’interface HTTP de ClickHouse via le réseau de l’appareil ou par l’intermédiaire d’un bastion SSH ; aucun serveur relais n’est nécessaire.

Avant de commencer

  • Installez ProbeDeck depuis l’App Store.
  • Utilisez iOS ou iPadOS 17.0 ou une version ultérieure.
  • Autorisez l’appareil à accéder au point de terminaison HTTP ou HTTPS de ClickHouse via son réseau, un VPN ou un bastion SSH.
  • Créez un utilisateur ClickHouse ayant accès aux bases de données que vous souhaitez interroger.
  • Accordez à l’utilisateur l’accès SELECT aux tables system pertinentes pour la supervision.
Certaines sections de supervision dépendent de tables de logs facultatives ou de tables système plus récentes. Par exemple, system.server_settings, que ProbeDeck utilise pour la limite de mémoire configurée, nécessite ClickHouse 23.3 ou une version ultérieure. ProbeDeck indique qu’une section concernée est limitée lorsque sa source n’est pas disponible.

Fonctionnement

  1. ProbeDeck envoie des requêtes SQL au point de terminaison HTTP(S) de ClickHouse.
  2. Il lit les données de monitoring dans les tables system à l’aide de l’utilisateur ClickHouse configuré.
  3. L’application affiche les résultats des requêtes et les vues de monitoring sur l’appareil. Un bastion SSH peut acheminer la même connexion HTTP(S) lorsque le point de terminaison n’est pas directement accessible depuis l’appareil.

Se connecter à ClickHouse Cloud

1

Récupérer les informations de connexion au service

Dans la console ClickHouse Cloud, ouvrez votre service, sélectionnez Connect, puis choisissez HTTPS.Pour vous connecter à ClickHouse via HTTP(S), vous avez besoin des informations suivantes :Les informations de votre service ClickHouse Cloud sont disponibles dans la console ClickHouse Cloud. Sélectionnez un service, puis cliquez sur Connect :
Bouton Connect du service ClickHouse Cloud
Choisissez HTTPS. Les détails de connexion s’affichent dans un exemple de commande curl.
Détails de connexion HTTPS ClickHouse Cloud
Si vous utilisez ClickHouse autogéré, les détails de connexion sont définis par votre administrateur ClickHouse.
2

Ajouter la connexion dans ProbeDeck

  1. Dans l’écran Connections, appuyez sur +.
  2. Saisissez un nom de connexion et l’hôte sans https://.
  3. Définissez Port sur 8443 et activez TLS.
  4. Saisissez le nom d’utilisateur et le mot de passe de la base de données indiqués dans la boîte de dialogue Connect. Le nom de la base de données est facultatif.
  5. Appuyez sur Test Connection. Après une vérification réussie, ProbeDeck affiche la version du serveur et le temps d’aller-retour.
  6. Appuyez sur Save.
ProbeDeck authentifie les requêtes SQL envoyées au point de terminaison de service à l’aide de ces identifiants de base de données. ClickHouse Cloud utilise les clés au niveau de l’organisation de la page API Keys pour les points de terminaison de Cloud API et de Query API. Le processus de connexion SQL de ProbeDeck n’utilise pas ces clés.

Se connecter à une instance ClickHouse auto-hébergée

1

Choisir le point de terminaison HTTP

Utilisez le port 8123 pour l’interface HTTP non chiffrée par défaut. Pour HTTPS, activez TLS et utilisez le port configuré sur votre serveur ; 8443 est un choix courant.
Les ports 9000 et 9440 sont utilisés par le protocole natif de ClickHouse. ProbeDeck utilise l’interface HTTP(S) : saisissez donc le port HTTP du serveur.
2

Ajouter et tester la connexion

  1. Dans l’écran Connections, appuyez sur +.
  2. Saisissez l’hôte du serveur sans schéma d’URL.
  3. Définissez le port HTTP(S) et l’option TLS.
  4. Saisissez le nom d’utilisateur ClickHouse, le mot de passe et, éventuellement, la base de données.
  5. Appuyez sur Test Connection, puis sur Save.
Pour un serveur sur le réseau local, iOS peut demander l’autorisation d’accéder au réseau local. Connectez d’abord l’appareil à son VPN lorsque le point de terminaison n’est accessible que depuis un réseau d’entreprise.

Se connecter via un bastion SSH

Activez SSH Tunnel dans le formulaire de connexion et renseignez :
  1. L’hôte du bastion et le port SSH (22 par défaut).
  2. Le nom d’utilisateur SSH.
  3. Un mot de passe SSH ou une clé privée.
ProbeDeck ouvre un canal SSH direct-tcpip entre le bastion, l’hôte ClickHouse et le port HTTP(S) indiqués dans la section Server. Lors de la première connexion, comparez l’empreinte SHA-256 de la clé d’hôte du bastion avec la valeur fournie par l’administrateur du serveur avant de l’accepter.

Configurer l’authentification et TLS

ProbeDeck envoie le nom d’utilisateur et le mot de passe de la base de données dans les en-têtes de requête X-ClickHouse-User et X-ClickHouse-Key. Il ne place pas les identifiants dans l’URL. Pour le TLS mutuel, activez TLS Client Certificate et importez un fichier PKCS#12 (.p12) contenant le certificat client et la clé privée, puis saisissez sa phrase secrète. Lorsqu’un point de terminaison auto-hébergé présente un certificat auto-signé ou un certificat émis par une CA privée, ProbeDeck affiche son empreinte SHA-256, son émetteur, son sujet et sa période de validité. Comparez l’empreinte à la valeur fournie par l’administrateur du serveur avant de l’accepter. ProbeDeck associe cette décision à la connexion ; tout changement de certificat interrompt la connexion jusqu’à ce que vous le vérifiiez. ProbeDeck stocke les secrets de connexion et les clés importées dans le trousseau iOS de l’appareil.

Surveiller ClickHouse

Ouvrez la connexion enregistrée et sélectionnez Monitor. Le tableau de bord récapitule les sources suivantes : Cliquez sur Running queries pour trier les requêtes actives par temps écoulé et examiner la mémoire et les lignes lues.

Interroger le jeu de données UK Property Price

Cet exemple utilise le jeu de données UK Property Price. Chargez le jeu de données dans uk_price_paid, puis :
  1. Ouvrez la connexion et sélectionnez Data.
  2. Ouvrez l’éditeur SQL.
  3. Exécutez cette requête en lecture seule et limitée :
Le résultat doit contenir dix villes, avec leur nombre de transactions et leur prix moyen.

Limites connues

  • ProbeDeck fonctionne sous iOS et iPadOS 17.0 ou version ultérieure.
  • Les utilisateurs de la version gratuite peuvent enregistrer une seule connexion à la fois. Sa suppression libère l’emplacement ; ProbeDeck Pro permet d’enregistrer un nombre illimité de connexions.
  • Il prend en charge l’interface HTTP(S) de ClickHouse, mais pas le protocole natif.
  • ProbeDeck charge les résultats SQL par pages de 200 lignes et limite chaque requête à 10 000 lignes. Utilisez une clause WHERE sélective et LIMIT pour les grandes tables.
  • La visibilité dans Monitoring dépend des privilèges de l’utilisateur ClickHouse et des tables de logs facultatives.
  • L’appareil doit pouvoir atteindre le point de terminaison via son réseau, un VPN ou le tunnel SSH intégré.
  • Monitoring et le SQL en lecture seule ne nécessitent aucun achat intégré. KILL QUERY, KILL MUTATION, les instructions d’écriture et DDL, ainsi que d’autres actions opérationnelles, nécessitent ProbeDeck Pro.

Résolution des problèmes

Copiez à nouveau le nom d’utilisateur et le mot de passe de la base de données. Pour le point de terminaison du service ClickHouse Cloud, utilisez les identifiants de la base de données figurant dans la boîte de dialogue Connect du service. Ne les remplacez pas par une clé au niveau de l’organisation provenant de la page API Keys de ClickHouse Cloud.
Vérifiez que l’appareil peut atteindre l’hôte et le port HTTP(S). Vérifiez la liste d’accès IP Cloud, le VPN, le pare-feu et le mappage des ports. N’utilisez pas les ports du protocole natif 9000 ou 9440.
L’utilisateur ClickHouse ne peut pas lire une ou plusieurs tables system requises. Demandez à l’administrateur du serveur les privilèges SELECT minimaux requis pour les sections de monitoring que vous prévoyez d’utiliser, puis reconnectez-vous.
Demandez à l’administrateur du serveur de confirmer la rotation du certificat avant d’accepter la nouvelle empreinte. Une modification inattendue peut indiquer un point de terminaison différent ou un chemin d’interception TLS.

Étapes suivantes

Dernière modification le 14 août 2026