Vue d’ensemble de la mise à niveau de ClickHouse
- des recommandations générales
- un plan recommandé
- des précisions sur la mise à niveau des binaires de vos systèmes
Recommandations générales
Mettez à niveau serveur ClickHouse séparément de ClickHouse Keeper ou de ZooKeeper
Les mises à niveau mineures doivent être appliquées régulièrement
Testez les fonctionnalités expérimentales sur un serveur ClickHouse distinct exécutant la version cible
Retour à une version antérieure
Plusieurs versions du serveur ClickHouse dans un cluster
- le cluster peut ne pas fonctionner
- certaines requêtes (voire toutes) peuvent échouer avec des erreurs arbitraires
- des erreurs/avertissements arbitraires peuvent apparaître dans les logs
- il peut être impossible de rétrograder
Mises à niveau par étapes
- Effectuer une mise à niveau avec interruption de service (arrêter tous les serveurs, mettre à niveau tous les serveurs, puis redémarrer tous les serveurs).
- Ou effectuer la mise à niveau via une version intermédiaire (une version datant de moins d’un an de plus que la version actuelle).
Plan recommandé
- Assurez-vous que vos modifications de configuration ne se trouvent pas dans le fichier par défaut
/etc/clickhouse-server/config.xml, mais dans/etc/clickhouse-server/config.d/, car/etc/clickhouse-server/config.xmlpourrait être écrasé lors d’une mise à niveau. - Consultez les changelogs pour repérer les breaking changes (en remontant de la version cible à la version que vous utilisez actuellement).
- Effectuez toutes les mises à jour identifiées dans les breaking changes qui peuvent être réalisées avant la mise à niveau, et dressez la liste des changements qui devront être effectués après la mise à niveau.
- Identifiez une ou plusieurs répliques pour chaque shard à maintenir actives pendant la mise à niveau des autres répliques de ce shard.
- Sur les répliques à mettre à niveau, une par une :
- arrêtez le serveur ClickHouse
- mettez le server à niveau vers la version cible
- redémarrez le serveur ClickHouse
- attendez que les messages de Keeper indiquent que le système est stable
- passez à la réplique suivante6. Vérifiez les erreurs dans le log de Keeper et le log de ClickHouse
- Mettez à niveau les répliques identifiées à l’étape 4 vers la nouvelle version
- Reportez-vous à la liste des changements établie aux étapes 1 à 3 et appliquez ceux qui doivent l’être après la mise à niveau.
Ce message d’erreur est attendu lorsque plusieurs versions de ClickHouse s’exécutent dans un environnement répliqué. Vous ne le verrez plus lorsque toutes les répliques auront été mises à niveau vers la même version.
Processus de mise à niveau du binaire du serveur ClickHouse
deb, exécutez les commandes suivantes sur le serveur :
deb recommandés, utilisez la méthode de mise à jour appropriée.
Vous pouvez mettre à jour plusieurs serveurs à la fois, à condition qu’il n’y ait jamais un moment où toutes les répliques d’un shard soient hors ligne.
xx.yy.a.b est une version stable actuelle. La dernière version stable est disponible ici