Внешний доступ уровня 2 в Cisco ACI

Опубликовано: 18 Апреля, 2023

Скорее всего, когда вы начнете переходить на фабрику ACI, вы не собираетесь разбирать всю свою сеть и устанавливать новую. Это просто нереально. Скорее всего, вы начнете переносить бизнес-направления или определенные приложения на ACI, но эти приложения должны иметь возможность взаимодействовать с конечными устройствами в вашей устаревшей сети. Мы можем сделать это несколькими способами, в зависимости от того, какие у нас есть потребности. У нас может быть внешний слой 3 или внешний слой 2 (или оба). В этой статье я собираюсь рассмотреть конфигурацию внешнего доступа уровня 2. Нам это может понадобиться для всего, что требует расширения VLAN, высокой доступности, таких вещей, как кластеры баз данных или настраиваемые приложения, которые могут не учитывать уровень 3.

Мы даже можем создать внешнюю сеть, которая по существу будет выглядеть как группа конечных точек. Это позволит фактически иметь контракты между группами конечных точек в структуре ACI и конечными точками вне структуры. Например, если мне нужен только доступ по протоколу http/s между моими веб-серверами и общедоступным Интернетом, я могу заключить контракт между ними точно так же, как внутри структуры ACI.

В предыдущем посте я рассказал о создании мостового домена к коммутатору серии Nexus 5000. Мы будем строить VLAN и мостовой домен, созданный в этом посте в этой статье. Для этой конфигурации нам нужно быть в определенном арендаторе. Поэтому нажмите «Владельцы» и выберите арендатора, в котором вы хотите создать этот внешний доступ уровня 2.

  1. Развернуть сеть
  2. Нажмите «Внешняя мостовая сеть».
  3. Нажмите «Действия» и выберите «Создать внешний мост».
  4. Дайте ему имя, например L2-Ext-VLAN-1200.
  5. В раскрывающемся списке выберите домен внешнего моста, который был создан в посте, о котором я упоминал ранее.
  6. Выберите домен моста, который уже создан. Для получения дополнительной информации см. этот пост.
  7. Введите свой VLAN, в этом примере мы используем vlan-1200.
  8. Нажмите + Sign, чтобы указать, какие профили узлов использовать.
  9. Дайте профилю узла имя, например, L2-Ext-1200-NodeProf.
  10. Нажмите + Sign, чтобы создать профиль интерфейса.
  11. Дайте ему имя, например, L2-1200-IntProf
  12. Нажмите знак +, чтобы добавить интерфейсы.
  13. Нажмите на канал виртуального порта
  14. Добавьте VPC, созданный в предыдущем посте для N5K.
  15. Нажмите OK три раза, чтобы вернуться к исходному мастеру.

Это касается первой части мастера. Опять же, если вы не понимаете, как мы получили некоторые вещи, такие как профили портов или мостовые домены, пожалуйста, вернитесь и прочитайте предыдущие статьи по ссылкам выше.

  1. Нажмите "Далее
  2. Нажмите + Sign, чтобы настроить внешние сети EPG.
  3. Дайте ему имя, например L2-Ext-1200-EPG.
  4. Вам не нужно указывать QoS, но вы можете настроить его здесь, если хотите.
  5. Нажмите Готово

Как и все в ACI, все это можно сделать автоматически с помощью REST API. Для получения дополнительной информации об использовании инспектора API ознакомьтесь с этим сообщением. Итак, давайте посмотрим, что нужно для создания внешнего EPG L2 с использованием API и клиента Postman REST.

Полезная нагрузка от инспектора API:

{
"l2extOut":{
"атрибуты": {
"dn":"uni/tn-Test/l2out-L2-Ext-VLAN-1200",
"имя":"L2-Ext-VLAN-1200",
«rn»: «l2out-L2-Ext-VLAN-1200»,
"статус": "создано"
},
"дети":[
{
"l2extInstP":{
"атрибуты": {
"dn":"uni/tn-Test/l2out-L2-Ext-VLAN-1200/instP-L2-Ext-1200-EPG",
"name":"L2-Ext-1200-EPG",
"rn":"instP-L2-Ext-1200-EPG",
"статус": "создано"
},
"дети":[
 
]
}
},
{
"l2extLNodeP":{
"атрибуты": {
"dn":"uni/tn-Test/l2out-L2-Ext-VLAN-1200/lnodep-L2-Ext-1200-NodeProf",
"name":"L2-Ext-1200-NodeProf",
«rn»: «lnodep-L2-Ext-1200-NodeProf»,
"статус": "создано"
},
"дети":[
{
"l2extLIfP":{
"атрибуты": {
"dn":"uni/tn-Test/l2out-L2-Ext-VLAN-1200/lnodep-L2-Ext-1200-NodeProf/lifp-L2-Ext-1200-IntProf",
"name":"L2-Ext-1200-IntProf",
«rn»: «лифп-L2-Ext-1200-IntProf»,
"статус": "создано"
},
"дети":[
{
"l2extRsPathL2OutAtt":{
"атрибуты": {
"tDn":"топология/pod-1/protpaths-101-102/pathep-[N5K-Int-vPC-Pol-Grp]",
"статус": "создано"
},
"дети":[
 
]
}
}
]
}
}
]
}
},
{
"l2extRsL2DomAtt":{
"атрибуты": {
"tDn":"uni/l2dom-N5K-L2-Ext-BD",
"статус": "создано"
},
"дети":[
 
]
}
},
{
"l2extRsEBd":{
"атрибуты": {
"tnFvBDName":"BD1",
"encap":"vlan-1200",
"статус": "создано, изменено"
},
"дети":[
 
]
}
}
]
}
}

Это полезно, потому что мы можем фактически создать несколько внешних EPG L2 для перехода к различным местам за пределами структуры ACI. Все, что вам нужно сделать, это просмотреть код и решить, какие имена вам нужно изменить, чтобы создать новый EPG. Например, код:

"dn":"uni/tn-Test/l2out-L2-Ext-VLAN-1200"

Говорит, что различающееся имя внешнего доступа уровня 2 — L2-Ext-VLAN-1200, как мы описали в шаге 4 на первой странице мастера. Он содержится в тесте арендатора. Если бы мы хотели создать внешний выход уровня 2 с именем L2-Ext-VLAN-1100 в клиенте Prod, он должен выглядеть так:

"dn":"uni/tn-Prod/l2out-L2-Ext-VLAN-1100"

«tn» — это имя управляемого объекта для арендатора, а «l2out» — это имя управляемого объекта для внешнего исходящего соединения уровня 2. Большинство имен конструкций очень просты для понимания, поэтому вам не нужно становиться мастером XML или JSON, чтобы понять, как настраивать код.

Пожалуйста, посмотрите видео, чтобы увидеть шаги в начале этой статьи. Если у вас есть какие-либо вопросы, свяжитесь со мной в комментариях ниже или через твиттер @Malhoit.