Les clusters Anthos sur Bare Metal fonctionnent sur de nombreux systèmes qui s'exécutent sur le matériel compatible avec les distributions du système d'exploitation cible. Une configuration de clusters Anthos sur Bare Metal peut s'exécuter sur un matériel minimal, ou sur plusieurs machines, offrant ainsi plus de flexibilité, de disponibilité et de performances.
Quelle que soit la configuration de clusters Anthos sur Bare Metal, vos nœuds et clusters doivent disposer de suffisamment de ressources de processeur, de mémoire RAM et de stockage pour répondre aux besoins des clusters et des charges de travail que vous exécutez.
Configuration minimale requise et recommandée pour le processeur, la mémoire RAM et le stockage
Lorsque vous installez des clusters Anthos sur Bare Metal, vous pouvez créer différents types de clusters :
- Un cluster d'utilisateur qui exécute des charges de travail.
- Un cluster d'administrateur crée et contrôle des clusters d'utilisateur pour exécuter des charges de travail.
- Un cluster autonome est un cluster unique qui peut gérer et exécuter des charges de travail, mais qui ne peut pas créer ni gérer de clusters d'utilisateur.
- Un cluster hybride peut gérer et exécuter des charges de travail, et un cluster hybride peut également créer et gérer des clusters d'utilisateur supplémentaires.
En plus du type de cluster, vous pouvez choisir parmi les profils d'installation suivants en termes de besoins en ressources :
Par défaut : le profil par défaut nécessite des ressources système standards. Vous pouvez l'utiliser pour tous les types de clusters.
Périphérie : le profil de périphérie a considérablement réduit les besoins en ressources système. Il est recommandé pour les appareils de périphérie disposant de ressources limitées. Vous ne pouvez utiliser le profil de périphérie que pour les clusters autonomes.
Ressources nécessaires pour tous les types de clusters utilisant le profil par défaut
Le tableau suivant décrit la configuration matérielle minimale recommandée pour que les clusters Anthos sur Bare Metal fonctionnent et gèrent des clusters d'administrateur, hybrides, utilisateur et autonomes qui utilisent le profil par défaut :
Ressource | Minimum | Recommandations |
---|---|---|
Processeurs / Processeurs virtuels* | 4 cœurs | 8 cœurs |
Mémoire RAM | 16 Gio | 32 Gio |
Stockage | 128 Gio | 256 Gio |
* Les clusters Anthos sur solution Bare Metal sont uniquement compatibles avec les processeurs et les processeurs virtuels de la famille de processeurs x86.
Ressources nécessaires pour les clusters autonomes utilisant le profil de périphérie
Le tableau suivant décrit la configuration matérielle minimale recommandée pour que les clusters Anthos sur Bare Metal fonctionnent et gèrent des clusters autonomes qui utilisent le profil de périphérie :
Ressource | Minimum | Recommandations |
---|---|---|
Processeurs / Processeurs virtuels* | 2 cœurs | 4 cœurs |
Mémoire RAM | Ubuntu : 4 Gio CentOS/RHEL : 6 Gio |
Ubuntu : 8 Gio CentOS/RHEL : 12 Gio |
Stockage | 128 Gio | 256 Gio |
* Les clusters Anthos sur solution Bare Metal sont uniquement compatibles avec les processeurs et les processeurs virtuels de la famille de processeurs x86.
Pour configurer des clusters autonomes à l'aide du profil de périphérie, suivez ces bonnes pratiques :
Exécutez
bmctl
sur un poste de travail distinct. Si vous devez exécuterbmctl
sur le nœud de cluster cible, vous avez besoin de 2 Go de mémoire pour répondre aux exigences minimales. Par exemple, vous avez besoin de 6 Gio pour Ubuntu et de 8 Gio pour CentOS/Redhat.Définissez
MaxPodsPerNode
sur 110. Le cluster n'exécute pas plus de 30 pods utilisateur en moyenne par nœud. Vous aurez peut-être besoin de ressources supplémentaires pour une configurationMaxPodsPerNode
plus élevée ou d'exécuter plus de 30 pods utilisateur par nœud.Utilisez
containerd
comme environnement d'exécution de conteneur. L'exécution d'un conteneur Docker peut nécessiter des ressources supplémentaires.Les composants Kubevirt ne sont pas pris en compte dans cette configuration minimale de ressources. Kubevirt nécessite des ressources supplémentaires en fonction du nombre de VM déployées dans le cluster.
Exigences de stockage supplémentaires
Les clusters Anthos sur Bare Metal ne fournissent aucune ressource de stockage. Vous devez provisionner et configurer l'espace de stockage nécessaire sur votre système.
Pour connaître les exigences de stockage détaillées, consultez la section Présentation des conditions préalables à l'installation.
Pour en savoir plus sur la configuration de l'espace de stockage requis, consultez la page Configurer le stockage pour les clusters Anthos sur Bare Metal.
Performances etcd
La vitesse du disque est essentielle à la performance et à la stabilité d'etcd. Un disque lent augmente la latence des requêtes etcd, ce qui peut entraîner des problèmes de stabilité du cluster. Nous vous recommandons d'utiliser un disque dur SSD pour votre espace de stockage etcd. La documentation d'etcd fournit des recommandations matérielles pour garantir les meilleures performances etcd lors de l'exécution de vos clusters en production.
Pour vérifier les performances de votre etcd et de votre disque, utilisez les métriques de latence des E/S etcd suivantes dans l'explorateur de métriques :
etcd_disk_backend_commit_duration_seconds
: la durée doit être inférieure à 25 millisecondes pour le 99e centile (p99).etcd_disk_wal_fsync_duration_seconds
: la durée doit être inférieure à 10 millisecondes pour le 99e centile (p99).
Pour en savoir plus sur les performances de l'etcd, consultez la page Que signifie l'avertissement etcd "Appliquer les entrées a pris trop de temps" ? et Que signifie l'avertissement etcd "Échec de l'envoi de pulsations dans les temps" ?.
Prérequis associés à la machine de nœud
Les machines virtuelles du nœud doivent remplir les conditions suivantes :
- Leur système d'exploitation fait partie des distributions compatibles avec Linux. Pour en savoir plus, consultez la page Sélectionner votre système d'exploitation.
- La version du noyau Linux est 4.17.0 ou ultérieure. Ubuntu 18.04 et 18.04.1 utilisent la version de noyau 4.15 de Linux, et sont donc incompatibles.
- Disposer de la configuration matérielle minimale requise.
- Disposer d'un accès à Internet.
- Connectivité de couche 3 à toutes les autres machines de nœud.
- Accès à l'adresse IP virtuelle du plan de contrôle.
- Disposer de serveurs de noms DNS correctement configurés.
- Aucun nom d'hôte en double.
- L'un des services NTP suivants est activé et fonctionnel :
- chrony
- ntp
- ntpdate
- systemd-timesyncd
- Un gestionnaire de packages opérationnel : apt, dnf, etc.
- Sur Ubuntu, vous devez désactiver le pare-feu UFW (Uncomplicated Firewall).
Exécutez
systemctl stop ufw
pour désactiver le pare-feu UFW. Sur Ubuntu et à partir d'Anthos clusters on bare metal 1.8.2, vous n'êtes pas obligé de désactiver AppArmor. Si vous déployez des clusters à l'aide de versions antérieures d'Anthos clusters on bare metal, désactivez AppArmor à l'aide de la commande suivante :
systemctl stop apparmor
Si vous choisissez Docker comme environnement d'exécution de conteneur, vous pouvez utiliser Docker version 19.03 ou ultérieure. Si vous n'avez pas installé Docker sur vos machines de nœud ou si vous possédez une version plus ancienne, Anthos sur solution Bare Metal installe Docker 19.03.13 ou une version ultérieure lorsque vous créez des clusters.
Si vous utilisez l'environnement d'exécution de conteneurs par défaut, containerd, vous n'avez pas besoin de Docker et l'installation de Docker peut poser problème. Pour en savoir plus, consultez les problèmes connus.
La création de clusters vérifie uniquement l'espace libre nécessaire pour les composants du système de clusters Anthos on Bare Metal. Cette modification vous permet de mieux contrôler l'espace que vous allouez aux charges de travail de l'application. Chaque fois que vous installez des clusters Anthos sur solution Bare Metal, assurez-vous que les systèmes de fichiers qui sauvegardent les répertoires suivants disposent de la capacité requise et répondent aux exigences suivantes :
/
: 17 Gio (18 253 611 008 octets)./var/lib/docker
ou/var/lib/containerd
, selon l'environnement d'exécution du conteneur :- 30 Gio (32 212 254 720 octets) pour les nœuds du plan de contrôle
- 10 Gio (10 485 760 octets) pour les nœuds de calcul
/var/lib/kubelet
: 500 Mio (524 288 000 octets)/var/lib/etcd
: 20 Gio (21 474 836 480 octets, applicable uniquement aux nœuds du plan de contrôle)
Quelle que soit la version du cluster, les listes de répertoires précédentes peuvent se trouver sur les mêmes partitions ou sur différentes partitions. S'ils se trouvent sur la même partition sous-jacente, l'espace requis est la somme de l'espace requis pour chaque répertoire individuel sur cette partition. Pour toutes les versions, le processus de création de cluster crée les répertoires, le cas échéant.
Les répertoires
/var/lib/etcd
et/etc/kubernetes
sont soit inexistants, soit vides.
En plus des conditions préalables à l'installation et à l'exécution de clusters Anthos on Bare Metal, les clients doivent se conformer aux normes applicables à leur secteur ou à leur segment d'activité, telles que les exigences PCI DSS pour les entreprises qui traitent des cartes de crédit ou les guides de mise en œuvre technique de sécurité (STIG, Security Technical Implementation Guides) pour les entreprises du secteur de la défense.
Prérequis pour les machines d'équilibrage de charge
Lorsque votre déploiement ne comporte pas de pool de nœuds d'équilibreur de charge spécialisé, vous pouvez utiliser des nœuds de calcul ou des nœuds de plan de contrôle pour en créer un. Dans ce cas, les conditions préalables supplémentaires sont les suivantes :
- Les machines se trouvent dans le même sous-réseau de couche 2.
- Toutes les adresses IP virtuelles se trouvent dans le sous-réseau des nœuds d'équilibreur de charge et peuvent être acheminés par la passerelle du sous-réseau.
- La passerelle du sous-réseau d'équilibreur de charge doit écouter les messages ARP gratuits pour transmettre les paquets vers l'équilibreur de charge maître.