{"id":316,"date":"2020-10-28T00:22:06","date_gmt":"2020-10-28T03:22:06","guid":{"rendered":"http:\/\/vbrain.com.br\/?p=316"},"modified":"2020-11-01T19:13:45","modified_gmt":"2020-11-01T22:13:45","slug":"consideracoes-sobre-roteamento-transport-zone-e-edge-nodes-no-nsx-t-parte-1-de-4","status":"publish","type":"post","link":"http:\/\/vbrain.com.br\/index.php\/2020\/10\/28\/consideracoes-sobre-roteamento-transport-zone-e-edge-nodes-no-nsx-t-parte-1-de-4\/","title":{"rendered":"Considera\u00e7\u00f5es sobre Roteamento, Transport Zone e Edge nodes no NSX-T. (Parte 1 de 4)"},"content":{"rendered":"<p>Bom pessoal, resolvi fazer uma serie curta de posts sobre algumas considera\u00e7\u00f5es que observei ao realizar o deploy do NSX-T.<\/p>\n<p>Antes de mais nada, essa s\u00e9rie de posts n\u00e3o tem a inten\u00e7\u00e3o de ser um guia de instala\u00e7\u00e3o do NSX-T do zero, existem v\u00e1rios blogs j\u00e1 com esse tipo de conte\u00fado, desta forma, n\u00e3o vou aprofundar em arquitetura da solu\u00e7\u00e3o, como plano de dados, controle, quem \u00e9 respons\u00e1vel pelo qu\u00ea.<\/p>\n<p>Por\u00e9m, vejo que a maioria dos guias (step-by-step) seguem uma receitinha de bolo, e maioria deixa vaga algumas defini\u00e7\u00f5es, simplesmente dizem, configure assim, mas n\u00e3o especificam o porqu\u00ea, o intuito destes posts s\u00e3o exemplificar algumas observa\u00e7\u00f5es de uma forma mais did\u00e1tica, ou ao menos mais compreens\u00edvel, principalmente no que tange \u00e0 roteamento.<\/p>\n<p>Honestamente, a arquitetura do NSX-T a principio me causou certa estranheza, vamos a uma r\u00e1pida lembran\u00e7a de como funcionava o roteamento no NSX-V:<\/p>\n<p id=\"znAlIsF\"><img loading=\"lazy\" decoding=\"async\" width=\"403\" height=\"422\" class=\"alignnone size-full wp-image-317 \" src=\"http:\/\/vbrain.com.br\/wp-content\/uploads\/2020\/10\/img_5f98a4bb7ebe4.png\" alt=\"\" srcset=\"http:\/\/vbrain.com.br\/wp-content\/uploads\/2020\/10\/img_5f98a4bb7ebe4.png 403w, http:\/\/vbrain.com.br\/wp-content\/uploads\/2020\/10\/img_5f98a4bb7ebe4-286x300.png 286w\" sizes=\"auto, (max-width: 403px) 100vw, 403px\" \/><\/p>\n<p>No NSX-V, temos basicamente duas figuras que executam roteamento, um executando roteamento Leste\/Oeste (dentro dos clusters virtuais) e Norte\/Sul (ambiente virtual para o f\u00edsico).<\/p>\n<p>O primeiro objeto s\u00e3o os DLR (Distributed Logical Router), que s\u00e3o executados no kernel do VMware ESXi e s\u00e3o respons\u00e1veis por rotear o tr\u00e1fego entre os Logical Switches (VNI), promovendo assim o roteamento entre as redes virtuais sem que o tr\u00e1fego tenha que ir \u00e0 um roteador f\u00edsico ou a qualquer outro dispositivo que execute o roteamento, permitindo assim que duas VM&#8217;s por exemplo que residam em redes diferentes possam se comunicar dentro do mesmo Host f\u00edsico, sem a necessidade do tr\u00e1fego sair do host.<\/p>\n<p>O segundo objeto s\u00e3o os Edge Gateways, que s\u00e3o VM&#8217;s respons\u00e1veis por prover servi\u00e7os como VPN, NAT, Load Balancing entre outros, e claro, permitir a comunica\u00e7\u00e3o do mundo virtual com o mundo f\u00edsico, lembrando sempre que com os DLR&#8217;s , n\u00e3o existe uma VM onde o tr\u00e1fego passa atrav\u00e9s desse objeto, tudo \u00e9 a n\u00edvel de kernel do ESXi, existe apenas uma VM de controle dos DLR&#8217;s, j\u00e1 nos Edge Gateways, para realizar fun\u00e7\u00f5es de NAT, LB e conex\u00e3o com o mundo externo, o tr\u00e1fego deve necessariamente passar atrav\u00e9s desta VM.<\/p>\n<p>J\u00e1 no NSX-T, as coisas mudam um pouco, e a arquitetura torna-se na minha opini\u00e3o, um &#8220;pouco mais confusa&#8221;.<\/p>\n<p>No NSX-T, n\u00e3o temos mais um objeto notadamente respons\u00e1vel pelo roteamento Leste\/Oeste e outro Norte\/Sul, e sim <strong>Logical Routers, <\/strong>que podem ser do tipo <strong>Tier0 (T0) <\/strong>e <strong>Tier1 (T1), <\/strong>e estes, podem estar executando servi\u00e7os de <strong>DR (Distributed Router) e\/ou<\/strong> <strong>SR (Service Router).<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p id=\"dSwEKUl\">Sim, a primeira vista parece confuso.<\/p>\n<p>Mas, vamos tentar fazer algumas analogias para ficar mais claro.<\/p>\n<p><strong>DR (Distributed Router): <\/strong><\/p>\n<p>Como disse anteriormente, no NSX-V temos os <strong>Logica<\/strong><strong>l<\/strong><strong> Switches (LS)<\/strong>, que funcionam como VLAN&#8217;s (por\u00e9m VXLAN) segregando o tr\u00e1fego, e para que exista roteamento entre os LS&#8217;s diretamente entre os hosts (in kernel), ou seja, para que o tr\u00e1fego entre dois LS diferentes tenha que ser roteado externamente, precisamos de um <strong>Logica<\/strong><strong>l<\/strong><strong> Router<\/strong>, no NSX-T precisamos que um Logical Router esteja executando o servi\u00e7o de DR, seja ele um T0 ou T1.<\/p>\n<p>Um DR abrange <em>hypervisors<\/em> cujas VMs est\u00e3o conectadas a este roteador l\u00f3gico, funcionalmente, o DR \u00e9 respons\u00e1vel pelo roteamento distribu\u00eddo entre logical switches.<\/p>\n<p><strong>SR (Service Router):<\/strong><\/p>\n<p>O SR \u00e9 respons\u00e1vel por fornecer servi\u00e7os que n\u00e3o s\u00e3o implementados de forma distribu\u00edda, como NAT, Balanceamento de carga, DHCP Server ou Firewall de per\u00edmetro do ambiente por exemplo.<\/p>\n<p>Um Logical Router, seja ele T0 ou T1, poder\u00e1 executar tanto o servi\u00e7o de DR quanto SR, ou at\u00e9 mesmo os dois:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blogs.vmware.com\/networkvirtualization\/files\/2018\/01\/B2-F2-LR-Components.png\" alt=\"VMware NSX-T: Distributed Routing &amp; Centralized Routing\"><\/p>\n<p id=\"TDaAHiA\">Na imagem anterior, perceba que do lado esquerdo temos somente um LR executando tanto os servi\u00e7os de DR quanto SR, j\u00e1 que ele est\u00e1 executando roteamento distribu\u00eddo entre os logical switches Web1, Web2 e App1, e tamb\u00e9m est\u00e1 executando a conex\u00e3o com o mundo f\u00edsico (norte\/sul), ou seja, para que o tr\u00e1fego saia para o mundo externo, necessariamente ele est\u00e1 passando por esse LR, podendo nesse caso ser utilizado NAT, LB etc.<\/p>\n<p>J\u00e1 do lado direito, temos um LR executando apenas o servi\u00e7o de DR, realizando o roteamento distribu\u00eddo entre os LS&#8217;s Web1, Web2 e App1, e temos outro LR executando o servi\u00e7o de SR, sendo a interface entre o mundo virtual e f\u00edsico.<\/p>\n<p>&nbsp;<\/p>\n<p>Ok, falamos sobre os servi\u00e7os de DR e SR que devem ser executados em Logical Routers, mas quais s\u00e3o esses logical routers? Eles podem ser do tipo Tier0 ou Tier1, no NSX-T sempre teremos ao menos um T0, mas nem sempre teremos um T1, a escolha de quando utilizar cada um deles ser\u00e1 abordado na parte 2.<\/p>\n<p>J\u00e1 na parte 3, o intuito ser\u00e1 abordar com mais afinco os Edge-Nodes e Transport-Nodes, abordaremos como os servi\u00e7os de SR s\u00e3o de fato executados nos Edge-nodes, como tr\u00e1fego Norte\/Sul, LB etc, \u00e9 atrav\u00e9s deles que o tr\u00e1fego flui para o ambiente f\u00edsico, voc\u00ea nunca ver\u00e1 no vCenter por exemplo, uma VM de um LR, ou de um T0 ou T1, e sim um Edge-node, calma, falaremos mais sobre isso na parte 3.<\/p>\n<p>E na quarta e ultima parte, falaremos um pouco sobre os tipos de Transporte Zones (Overlay e VLAN) contidos no NSX-T.<\/p>\n<p>Obrigado e at\u00e9 a pr\u00f3xima.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bom pessoal, resolvi fazer uma serie curta de posts sobre algumas considera\u00e7\u00f5es que observei ao realizar o deploy do NSX-T. Antes de mais nada, essa s\u00e9rie de posts n\u00e3o tem&hellip;<\/p>\n","protected":false},"author":1,"featured_media":323,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[8],"tags":[],"class_list":["post-316","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-vmware"],"jetpack_featured_media_url":"http:\/\/vbrain.com.br\/wp-content\/uploads\/2020\/10\/nsxpart1.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/posts\/316","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=316"}],"version-history":[{"count":8,"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/posts\/316\/revisions"}],"predecessor-version":[{"id":344,"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/posts\/316\/revisions\/344"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/media\/323"}],"wp:attachment":[{"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=316"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=316"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/vbrain.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=316"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}