La configuration Terway par défaut répond aux exigences de la plupart des scénarios. La modification de la configuration Terway est une opération à haut risque qui peut provoquer des erreurs, telles que des interruptions de service. Si vous avez des besoins spécifiques, comme l'augmentation du pool de ressources d'adresses IP réservées pour optimiser l'allocation des adresses IP des pods, vous pouvez personnaliser la configuration Terway en suivant les instructions de cette rubrique.
Limitations
Terway propose un large éventail de paramètres de configuration. Cette rubrique décrit chaque paramètre, mais ne garantit pas que toutes les combinaisons de paramètres fonctionneront dans tous les scénarios. Nous vous recommandons de tester minutieusement votre configuration avant de l'appliquer.
Certains paramètres peuvent être configurés via la console. Si vous ne trouvez pas un paramètre sur la console, c'est que la version actuelle de votre composant ne le prend pas en charge. Dans ce cas, vous devez mettre à niveau le composant Terway pour configurer le paramètre.
Exemple de configuration Terway
Le ConfigMap du composant Terway dans un cluster utilise le format suivant.
apiVersion: v1
data:
10-terway.conf: | # Terway Container Network Interface (CNI) configuration file parameters. The configuration is converted and written to /etc/cni/net.d/. Do not modify.
{
"cniVersion": "0.4.0",
"name": "terway",
"capabilities": {"bandwidth": true},
"eniip_virtual_type": "datapathv2",
"host_stack_cidrs": ["169.254.20.10/32"],
"cilium_args": "",
"type": "terway"
}
disable_network_policy: "false" # Specifies whether to disable the NetworkPolicy feature.
eni_conf: | # Main Terway configuration parameters, such as vSwitches and security groups.
{
"version": "1",
"max_pool_size": 5,
"min_pool_size": 0,
"credential_path": "/var/addon/token-config",
"enable_eni_trunking": true,
"vswitches": {"cn-hangzhou-j":["vsw-foo"],"cn-hangzhou-k":["vsw-foo"]},
"eni_tags": {"ack.aliyun.com":"c7c3cfoo"},
"service_cidr": "192.168.0.0/16",
"security_group": "sg-foo",
"ip_stack": "ipv4",
"vswitch_selection_policy": "ordered"
}
in_cluster_loadbalance: "true" # In-cluster load balancing. This parameter takes effect only in DataPathV2 or IPvlan mode.
kind: ConfigMap
metadata:
name: eni-config
namespace: kube-system
Paramètres
Paramètres de premier niveau
Paramètre | Description | Modifiable | Configurable sur la console |
| Paramètres du fichier de configuration CNI Terway. La configuration est convertie et écrite dans | Non | Non |
| Paramètres de configuration CNI Terway personnalisés. Pour plus d'informations, consultez la section Configurer une chaîne CNI personnalisée. | Oui | Non |
| Indique s'il faut désactiver la fonctionnalité NetworkPolicy.
| Oui | Oui |
| Principaux paramètres de configuration Terway, tels que les vSwitches et les groupes de sécurité. | Oui | Partiellement |
| Indique s'il faut activer l'équilibrage de charge intra-cluster. Ce paramètre prend effet uniquement en mode DataPathV2 ou IPvlan. Pour plus d'informations, consultez la section Comment activer l'équilibrage de charge intra-cluster pour un cluster Terway IPvlan ?. | Oui | Oui |
Paramètres du fichier 10-terway.conf
Paramètre | Type | Description | Modifiable | Configurable dans la console |
| string | Version de la configuration CNI. | Non | Non |
| string | Nom du plug-in CNI. | Non | Non |
| string | Type du plug-in CNI. | Non | Non |
| string | Fonctionnalités CNI. | Oui | Non |
| string | Méthode de virtualisation ENI. | Non | Non |
| string | Les paramètres de configuration de Cilium. Exemple : Important
| Oui | Oui |
| bool | Requiert terway-eniip 1.15.0 ou version ultérieure. Indique si le routage symétrique est activé. Lorsque cette fonctionnalité est activée, Terway configure des règles de routage basées sur des politiques pour garantir que le trafic sortant utilise la même interface réseau que le trafic entrant.
| Oui | Non |
| map[string]any | Requiert terway-eniip 1.15.0 ou version ultérieure. Paramètres de configuration du routage symétrique. Le code suivant présente les valeurs par défaut et un exemple de paramètre. Dans la plupart des cas, il n'est pas nécessaire de modifier ces paramètres. Important Une configuration incorrecte peut affecter les paramètres réseau existants. Testez soigneusement la configuration dans un environnement de test avant utilisation. | Oui | Non |
Paramètres eni_conf
Paramètre | Type | Description | Modifiable | Configurable dans la console |
| string | Jeton Security Token Service (STS) pour l'accès à OpenAPI. Ce paramètre s'applique uniquement aux clusters managés ACK. | Non | Non |
| string | Bloc CIDR de service du cluster. | Non | Non |
| map[string][]string | Liste des vSwitch utilisés par les interfaces réseau élastiques (ENI). | Oui | Oui |
| map[string]string | Tags à ajouter aux ENI nouvellement créées. Les modifications apportées à cette configuration n'affectent pas les ENI existantes. | Non | Non |
| map[string]string | Prise en charge uniquement en mode ENI partagé. Filtre les ENI gérées par Terway. Pour plus d'informations, consultez Configurer une liste d'autorisation pour les ENI. | Oui | Non |
| int | Prise en charge uniquement en mode ENI partagé. Nombre maximal d'adresses IP inactives conservées dans le pool de ressources d'adresses IP. Valeur par défaut : 5. | Oui | Oui |
| int | Prise en charge uniquement en mode ENI partagé. Nombre minimal d'adresses IP inactives conservées dans le pool de ressources d'adresses IP. Valeur par défaut : 0. | Oui | Oui |
| string | Groupe de sécurité à utiliser pour les ENI nouvellement créés. Les modifications apportées à cette configuration n'affectent pas les ENI existants. | Oui | Non |
| []string | Groupes de sécurité à utiliser pour les ENI nouvellement créés. Vous pouvez spécifier jusqu'à 10 groupes de sécurité, qui doivent tous être du même type. Si vous configurez ce paramètre, Terway utilise l'union de cette liste et du paramètre | Oui | Oui |
| string | Politique de sélection d'un vSwitch lors de la création d'un ENI.
| Oui | Oui |
| bool | Active la fonctionnalité de migration des adresses IP élastiques (EIP). Pour plus d'informations, consultez Migrer des EIP de Terway vers ack-extend-network-controller. | Oui | Non |
| string | Famille d'adresses IP du cluster. Ce paramètre ne peut pas être modifié. | Non | Non |
| string | Mode IPAM du cluster. Ce paramètre ne peut pas être modifié. | Non | Non |
| bool | Active la fonctionnalité | Oui | Non |
| float32 | Nombre de requêtes par seconde (QPS) pour le client Kubernetes. Vous devez configurer ce paramètre conjointement avec | Oui | Oui |
| int | Valeur de rafale (burst) pour le client Kubernetes. Ce paramètre doit être configuré avec | Oui | Oui |
| string | Groupe de ressources à utiliser pour les nouvelles ENI. Les modifications apportées à cette configuration n'affectent pas les ENI existantes. | Oui | Oui |
| string | Nécessite terway-eniip version 1.15.0 ou ultérieure. Pris en charge uniquement en mode ENI partagé. Intervalle de synchronisation du pool de ressources IP. Valeur par défaut : 120 secondes. Exemples : | Oui | Non |
| string | Nécessite terway-eniip version 1.16.0 ou ultérieure. Pris en charge uniquement en mode ENI partagé. Durée d'inactivité requise pour une adresse IP avant sa récupération. Exemple : Remarque Si un pod est créé ou supprimé avant la récupération, le minuteur est réinitialisé. | Oui | Non |
| string | Nécessite terway-eniip version 1.16.0 ou ultérieure. Pris en charge uniquement en mode ENI partagé. Intervalle entre les vérifications de récupération. Exemple : | Oui | Non |
| int | Nécessite terway-eniip 1.16.0 ou version ultérieure. Pris en charge uniquement en mode ENI partagé. Nombre maximal d'adresses IP pouvant être récupérées par lot. La valeur doit se situer dans la plage [1, 10]. Exemple : | Oui | Non |
| string | Nécessite terway-eniip 1.16.0 ou version ultérieure. Pris en charge uniquement en mode ENI partagé. Facteur de variation utilisé pour randomiser l'heure de récupération. La valeur doit se situer dans la plage [0,0, 1,0]. Exemple : | Oui | Non |
| int | Nécessite terway-eniip 1.16.4 ou version ultérieure et que le paramètre Nombre d'adresses IP à préchauffer à la fois. Ce paramètre s'applique uniquement aux nœuds nouvellement ajoutés. La tâche de préchauffage s'arrête lorsque le nombre d'adresses IP allouées sur le nœud atteint la valeur attendue. Exemple : | Oui | Non |
| bool | Nécessite terway-eniip 1.13.7 ou version ultérieure. Pris en charge uniquement en mode ENI partagé. Valeur par défaut : | Oui | Non |
| bool | Nécessite terway-eniip 1.17.0 ou version ultérieure. Pris en charge uniquement en mode ENI partagé. Valeur par défaut : | Oui | Non |
| int | Nécessite terway-eniip 1.17.0 ou une version ultérieure. Pris en charge uniquement en mode ENI partagé. Ce paramètre est valide en mode simple pile IPv4 et en mode double pile. En mode double pile, ce paramètre est ignoré car les préfixes IPv6 sont gérés automatiquement par le système, avec un préfixe par ENI. Nombre de préfixes IP configurés pour le nœud. Ce paramètre est valide lorsque le type de réseau du cluster est | Oui | Non |
| int | Nécessite terway-eniip 1.17.0 ou une version ultérieure. Pris en charge uniquement en mode ENI partagé. Nombre total de préfixes IPv6 sur le nœud. Ce paramètre est valide uniquement en mode simple pile IPv6. La valeur doit être 0 ou 1. En mode double pile, ce paramètre est ignoré car les préfixes IPv6 sont gérés automatiquement par le système, avec un préfixe par ENI. Nombre de préfixes IP configurés pour le nœud. Ce paramètre est valide lorsque le type de réseau du cluster est | Oui | Non |
Méthodes de configuration
Console
Vous pouvez configurer certains paramètres courants depuis la console. Celle-ci valide vos saisies et empêche l'utilisation de formats incorrects.
Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.
Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur Add-ons.
Cliquez sur l'onglet Networking, puis sur Configuration dans la carte terway-eniip.
Dans le panneau qui s'affiche, configurez les paramètres, puis cliquez sur OK.
kubectl
Certains paramètres ne sont pas affichés dans la console. Vous pouvez utiliser kubectl pour les configurer.
La configuration de Terway via kubectl est une opération à haut risque. kubectl n'effectue aucune validation des saisies et des paramètres incorrects peuvent entraîner des erreurs, telles que l'arrêt du fonctionnement de Terway. Assurez-vous de bien comprendre la configuration avant de la modifier.
-
Connectez-vous à un cluster avec kubectl et exécutez la commande suivante pour configurer les paramètres avancés :
kubectl edit cm -n kube-system eni-config -
Après avoir modifié la configuration, enregistrez vos modifications et quittez l'éditeur. Exécutez ensuite la commande suivante pour appliquer les changements :
kubectl rollout restart -n kube-system daemonset.apps/terway-eniip
Documentation connexe
Pour mettre à niveau Terway, consultez la rubrique Gérer les composants.
Pour en savoir plus sur la gestion d'un ConfigMap, consultez la rubrique Gérer les ConfigMaps.