Istio
Lorsque vous activez l'extension de cluster Istio, vous pouvez transmettre les paires clé/valeur suivantes en tant qu'arguments.
| Clé (API et CLI) | Nom d'affichage de la clé (console) | Description | Obligatoire/Facultatif | Valeur par défaut | Exemple de valeur |
|---|---|---|---|---|---|
affinity |
affinité |
Groupe de règles de programmation d'affinité. Format JSON en texte brut ou encodé Base64. Non utilisé par:
Equivalents possibles :
|
Facultatif | NULL | NULL |
nodeSelectors |
Sélecteurs de noeud |
Vous pouvez utiliser des sélecteurs de noeud et des libellés de noeud pour contrôler les noeuds de processus actif sur lesquels les pods d'extension sont exécutés. Pour qu'un pod s'exécute sur un noeud, le sélecteur de noeud du pod doit avoir la même clé/valeur que l'étiquette du noeud. Définissez Format JSON en texte brut ou encodé Base64. Non utilisé par:
Equivalents possibles :
|
Facultatif | NULL | {"foo":"bar", "foo2": "bar2"}Le pod s'exécutera uniquement sur les noeuds possédant le libellé |
numOfReplicas |
numOfReplicas | Nombre de répliques du déploiement de l'extension. Non utilisé par:
Equivalents possibles :
|
Requis | 1Crée une réplique du déploiement d'extension par cluster. |
2Crée deux répliques du déploiement d'extension par cluster. |
rollingUpdate |
rollingUpdate |
Contrôle le comportement souhaité de la mise à jour non simultanée par maxSurge et maxUnavailable. Format JSON en texte brut ou encodé Base64. Non utilisé par:
Equivalents possibles :
|
Facultatif | NULL | NULL |
tolerations |
tolérances |
Vous pouvez utiliser des tolérances et des taches pour contrôler les noeuds de processus actif sur lesquels les pods d'extension s'exécutent. Pour qu'un pod s'exécute sur un noeud présentant une entorse, le pod doit avoir une tolérance correspondante. Définissez Format JSON en texte brut ou encodé Base64. Equivalents possibles :
|
Facultatif | NULL | [{"key":"tolerationKeyFoo", "value":"tolerationValBar", "effect":"noSchedule", "operator":"exists"}]Seuls les pods présentant cette tolérance peuvent être exécutés sur des noeuds de processus actif présentant la tache |
topologySpreadConstraints |
topologySpreadConstraints |
Comment répartir les pods correspondants entre la topologie donnée. Format JSON en texte brut ou encodé Base64. Non utilisé par:
|
Facultatif | NULL | NULL |
| Clé (API et CLI) | Nom d'affichage de la clé (console) | Description | Obligatoire/Facultatif | Valeur par défaut | Exemple de valeur |
|---|---|---|---|---|---|
customizeConfigMap
|
customizeConfigMap |
Si vous voulez qu'Oracle gère Istio automatiquement pour vous, définissez Si vous souhaitez personnaliser Istio à l'aide d'istioctl (ou d'un autre outil pris en charge par Istio) et que vous souhaitez conserver les personnalisations lorsqu'Oracle met à jour le module, définissez |
Requis |
false
|
true
|
discovery.ContainerResources
|
discovery.ContainerResources |
Vous pouvez spécifier les quantités de ressources demandées par les conteneurs d'extension et définir les limites d'utilisation des ressources que les conteneurs d'extension ne peuvent pas dépasser. Format JSON en texte brut ou encodé Base64. |
Facultatif | NULL |
{"limits": {"cpu": "500m", "memory": "200Mi" }, "requests": {"cpu": "100m", "memory": "100Mi"}}
Créez des conteneurs d'extension qui demandent 100 milllicores de CPU et 100 mégaoctets de mémoire. Limitez les conteneurs d'extension à 500 milllicores de CPU et 200 mégaoctets de mémoire. |
discovery.EnvVariables
|
discovery.EnvVariables |
Liste des variables d'environnement de conteneur de découverte de plan de contrôle Istio, au format JSON. |
Facultatif | NULL |
[{"name":"ISTIO_GPRC_MAXRECVMSGSIZE","value":"8388608"},{"name":"ISTIO_GPRC_MAXSTREAMS","value":"150000"}]
|
enableIngressGateway
|
enableIngressGateway | Activer la passerelle entrante Istio | Requis |
false
|
true
|
istio-ingressgateway.Annotations
|
istio-ingressgateway.Annotations |
Annotations à transmettre au déploiement Istio. Par exemple, pour indiquer la forme de l'équilibreur de charge ou pour créer l'équilibreur de charge en tant qu'équilibreur de charge réseau. Pour plus d'annotations, reportez-vous à Récapitulatif des annotations pour les équilibreurs de charge et les équilibreurs de charge réseau. Format JSON en texte brut ou encodé Base64. |
Facultatif |
""
|
|
istio-ingressgateway.HorizontalPodAutoscalerMinReplicas
|
istio-ingressgateway.HorizontalPodAutoscalerMinReplicas |
Nombre minimal de répliques de l'outil de redimensionnement automatique de pod horizontal de passerelle d'entrée Istio. Doit être un entier, avec une valeur supérieure à zéro. |
Facultatif | NULL |
1
|
istio-ingressgateway.HorizontalPodAutoscalerMaxReplicas
|
istio-ingressgateway.HorizontalPodAutoscalerMaxReplicas |
Nombre maximal de répliques de l'outil de redimensionnement automatique de pod horizontal de passerelle entrante Istio. Doit être un entier, avec une valeur supérieure à zéro. |
Facultatif | NULL |
3
|
istio-ingressgateway.PodDisruptionBudgetMinAvailable
|
istio-ingressgateway.PodDisruptionBudgetMinAvailable |
Nombre minimal ou pourcentage de pods de passerelle entrante Istio disponibles. |
Facultatif | NULL |
|
istiod.HorizontalPodAutoscalerMinReplicas
|
istiod.HorizontalPodAutoscalerMinReplicas |
Nombre minimal de répliques du contrôleur Istio. Doit être un entier, avec une valeur supérieure à zéro. |
Facultatif | NULL |
1
|
istiod.HorizontalPodAutoscalerMaxReplicas
|
istiod.HorizontalPodAutoscalerMaxReplicas |
Nombre maximal de répliques du contrôleur Istio. Doit être un entier, avec une valeur supérieure à zéro. |
Facultatif | NULL |
3
|
istiod.PodDisruptionBudgetMinAvailable
|
istiod.PodDisruptionBudgetMinAvailable |
Nombre minimal ou pourcentage de pods de contrôleur Istio disponibles. |
Facultatif | NULL |
|
profile
|
profil | Profil d'installation Istio | Requis |
"oke-default"
|
"oke-default"
|
Le tableau suivant décrit les considérations relatives à la configuration de ce module complémentaire de cluster dans les clusters volumineux.
| Nom d'argument | Nombre de noeuds de processus métier de rôles | Description | à mesure que la taille du cluster augmente | Risques | Recommandation |
|---|---|---|---|---|---|
affinity
|
N |
Contrôle le placement des pods Istio sur des noeuds particuliers. |
Non applicable | Non applicable | Non applicable |
nodeSelectors
|
N |
Contrôle si les pods Istio s'exécutent sur des noeuds avec des étiquettes particulières. |
Non applicable | Non applicable | Non applicable |
tolerations
|
N |
Contrôle si les pods Istio peuvent s'exécuter sur des noeuds endommagés. |
Non applicable | Non applicable | Non applicable |
topologySpreadConstraints
|
Y (Oui) |
Contrôle la façon dont les pods Istio correspondants sont distribués dans la topologie du cluster. |
Vous devrez peut-être ajuster les contraintes de répartition de la topologie lorsque le nombre de répliques |
Si elles ne sont pas correctement configurées, les répliques istiod ou de passerelle peuvent se retrouver co-localisées sur le même noeud ou dans la même zone, de sorte qu'une panne de noeud/zone entraîne la suppression simultanée de plusieurs répliques. |
Configurez |
numOfReplicas
|
Y (Oui) |
Contrôle le nombre de répliques de plan de contrôle Istio. |
D'autres répliques peuvent être nécessaires à mesure que le nombre de pods participant au maillage de services augmente. |
Si elle est trop basse, l'istiod a plus de chances de devenir un point de défaillance unique lors des vidages ou des mises à niveau de nœuds. |
Augmentez le nombre de répliques à mesure que le nombre de pods maillés augmente. |
rollingUpdate
|
N |
Contrôle la stratégie de mise à jour du déploiement Istio. |
Non applicable | Non applicable | Non applicable |
customizeConfigMap
|
N |
Contrôle la configuration Istio au niveau de l'opérateur. |
Non applicable | Non applicable | Non applicable |
discovery.ContainerResources
|
Y (Oui) |
Définit les ressources de CPU et de mémoire du conteneur de repérage |
Les besoins en CPU et en mémoire peuvent augmenter à mesure que le nombre de proxies maillés et la quantité de configuration Istio augmentent. |
S'il est sous-dimensionné, le plan de contrôle Istio peut être affamé de CPU ou de mémoire, ce qui risque de ralentir la propagation de la configuration, de retarder les mises à jour sidecar et d'être instable en cas d'attrition élevée du maillage. |
Allouez suffisamment de CPU et de mémoire pour les istiod en fonction de la taille du maillage et du trafic, et surveillez régulièrement l'utilisation des ressources pour éviter les goulets d'étranglement du plan de contrôle au fur et à mesure que le cluster se développe. |
discovery.EnvVariables
|
N |
Définit les variables d'environnement pour le conteneur de repérage de plan de contrôle Istio. |
Non applicable | Non applicable | Non applicable |
enableIngressGateway
|
N |
Contrôle si la passerelle entrante Istio classique est activée. |
Non applicable | Non applicable |
Activez la passerelle entrante uniquement lorsque le cluster requiert la passerelle entrante Istio classique. |
istio-ingressgateway.Annotations
|
Y (Oui) |
Définit les annotations de la passerelle entrante Istio, y compris les annotations qui contrôlent le type et la forme de l'équilibreur de charge. |
La configuration d'équilibreur de charge requise dépend de la quantité de trafic que la passerelle entrante reçoit ou est censée recevoir, plutôt que directement du nombre de noeuds de cluster. |
Si la configuration est incorrecte, la passerelle entrante peut être provisionnée avec un type ou une forme d'équilibreur de charge incorrect (par exemple, une forme d'équilibreur de charge OCI ou un paramètre d'équilibreur de charge réseau incorrect). Cela peut entraîner une exposition incorrecte, des limites de débit ou des problèmes de routage du trafic. |
Configurez les annotations de l'équilibreur de charge OCI pour qu'elles correspondent à vos exigences de trafic de production et à votre architecture réseau, ce qui garantit un équilibrage de charge, une évolutivité et une haute disponibilité optimaux. |
istio-ingressgateway.HorizontalPodAutoscalerMinReplicas
|
Y (Oui) |
Définit le nombre minimal de répliques de passerelle entrante Istio gérées par l'outil de redimensionnement automatique de pod horizontal. |
Davantage de répliques de passerelle entrante peuvent être nécessaires à mesure que le trafic augmente. |
Si elle est trop basse, la passerelle entrante a moins de capacité de référence et risque de devenir un goulet d'étranglement de trafic lors des pics. S'il est 1, il y a aussi moins de résilience pendant les perturbations. |
Augmentez le nombre minimal de répliques à mesure que le trafic augmente pour maintenir la disponibilité et la tolérance aux pannes. |
istio-ingressgateway.HorizontalPodAutoscalerMaxReplicas
|
Y (Oui) |
Définit le nombre maximal de répliques de passerelle entrante Istio que l'outil de redimensionnement automatique de pod horizontal peut créer. |
La passerelle entrante peut être amenée à évoluer vers davantage de répliques à mesure que le trafic augmente. |
Si elle est trop faible, la passerelle entrante ne peut pas évoluer suffisamment pendant les pics de trafic, ce qui peut créer une latence ou des connexions supprimées. |
Augmentez le nombre maximal de répliques à mesure que le trafic augmente pour maintenir la disponibilité et la tolérance aux pannes. |
istio-ingressgateway.PodDisruptionBudgetMinAvailable
|
Y (Oui) |
Définit le nombre minimum ou le pourcentage de pods de passerelle d'entrée Istio qui doivent rester disponibles lors d'une interruption volontaire. |
Une valeur de disponibilité minimale plus élevée peut être requise à mesure que le trafic entrant augmente. |
Si elles sont trop faibles, les mises à niveau ou les drains de nœuds peuvent supprimer trop de passerelles à la fois et créer une coupure entrante. |
Augmentez la valeur de disponibilité minimale à mesure que le trafic augmente pour maintenir la haute disponibilité. |
istiod.HorizontalPodAutoscalerMinReplicas
|
Y (Oui) |
Définit le nombre minimal de répliques |
D'autres répliques |
S'il est trop bas, le plan de contrôle commence par une capacité trop faible et est plus susceptible de prendre du retard lors des rafales de configuration. |
Augmentez le nombre minimal de répliques à mesure que le maillage augmente. Utilisez au moins trois répliques pour maintenir la disponibilité. |
istiod.HorizontalPodAutoscalerMaxReplicas
|
Y (Oui) |
Définit le nombre maximal de répliques |
D'autres répliques |
S'il est trop bas, l'istiode ne peut pas évoluer suffisamment pour gérer la croissance du maillage, l'attrition de configuration ou un grand nombre de side-car. |
Augmentez le nombre maximal de répliques lorsque les pods |
istiod.PodDisruptionBudgetMinAvailable
|
Y (Oui) |
Définit le nombre minimum ou le pourcentage de pods |
La maintenance des répliques |
Si elle est trop faible, une purge ou une mise à niveau peut laisser le plan de contrôle indisponible et l'injection sidecar peut échouer à l'échelle du cluster. |
Configurez la valeur de sorte que certains pods |
profile
|
N |
Spécifie le profil d'installation Istio. |
Non applicable | Non applicable | Non applicable |