32.7. Configuration de l'alias de communauté
En tant qu'administrateur de cluster, vous pouvez configurer un alias de communauté et l'utiliser pour différentes annonces.
32.7.1. À propos de la ressource communautaire personnalisée
La ressource personnalisée community
est une collection d'alias pour les communautés. Les utilisateurs peuvent définir des alias nommés à utiliser pour annoncer ipAddressPools
à l'aide de la ressource personnalisée BGPAdvertisement
. Les champs de la ressource personnalisée community
sont décrits dans le tableau suivant.
Le CRD community
ne s'applique qu'à BGPAdvertisement.
Field | Type | Description |
---|---|---|
|
|
Spécifie le nom du site |
|
|
Spécifie l'espace de noms pour |
|
|
Spécifie une liste d'alias de communauté BGP qui peuvent être utilisés dans les annonces BGPA. Un alias de communauté se compose d'une paire de noms (alias) et de valeurs (nombre:nombre). Lier l'annonce BGPA à un alias de communauté en se référant au nom de l'alias dans le champ |
Field | Type | Description |
---|---|---|
|
|
Le nom de l'alias pour le site |
|
|
La valeur BGP |
32.7.2. Configurer MetalLB avec une annonce BGP et un alias de communauté
Configurez MetalLB comme suit pour que le site IPAddressPool
soit annoncé avec le protocole BGP et l'alias de communauté défini sur la valeur numérique de la communauté NO_ADVERTISE.
Dans l'exemple suivant, le routeur BGP homologue doc-example-peer-community
reçoit une route 203.0.113.200/32
et une route fc00:f853:ccd:e799::1/128
pour chaque adresse IP d'équilibreur de charge que MetalLB attribue à un service. Un alias de communauté est configuré avec la communauté NO_ADVERTISE
.
Conditions préalables
-
Installez le CLI OpenShift (
oc
). -
Connectez-vous en tant qu'utilisateur disposant des privilèges
cluster-admin
.
Procédure
Créer un pool d'adresses IP.
Créez un fichier, tel que
ipaddresspool.yaml
, dont le contenu ressemble à l'exemple suivant :apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: namespace: metallb-system name: doc-example-bgp-community spec: addresses: - 203.0.113.200/30 - fc00:f853:ccd:e799::/124
Appliquer la configuration du pool d'adresses IP :
$ oc apply -f ipaddresspool.yaml
Créez un alias de communauté nommé
community1
.apiVersion: metallb.io/v1beta1 kind: Community metadata: name: community1 namespace: metallb-system spec: communities: - name: NO_ADVERTISE value: '65535:65282'
Créer un pair BGP nommé
doc-example-bgp-peer
.Créez un fichier, tel que
bgppeer.yaml
, dont le contenu ressemble à l'exemple suivant :apiVersion: metallb.io/v1beta2 kind: BGPPeer metadata: namespace: metallb-system name: doc-example-bgp-peer spec: peerAddress: 10.0.0.1 peerASN: 64501 myASN: 64500 routerID: 10.10.10.10
Appliquer la configuration pour l'homologue BGP :
$ oc apply -f bgppeer.yaml
Créer une annonce BGP avec l'alias de communauté.
Créez un fichier, tel que
bgpadvertisement.yaml
, dont le contenu ressemble à l'exemple suivant :apiVersion: metallb.io/v1beta1 kind: BGPAdvertisement metadata: name: bgp-community-sample namespace: metallb-system spec: aggregationLength: 32 aggregationLengthV6: 128 communities: - NO_ADVERTISE 1 ipAddressPools: - doc-example-bgp-community peers: - doc-example-peer
- 1
- Indiquez ici le site
CommunityAlias.name
et non le nom de la ressource personnalisée (CR) de la communauté.
Appliquer la configuration :
$ oc apply -f bgpadvertisement.yaml