2.3. A rede OI gera configurações

Tempo estimado para a conclusão: 30 minutos

Proprietário do componente operacional: INV/PNET

Um binário é fornecido para gerar automaticamente os arquivos de configuração necessários para os switches e firewalls da infraestrutura da Suite de operações (OI). Ele precisa estar disponível no arquivo tar do GDC ou no artefato OI específico fornecido para implantação, por exemplo, IT_component_bundle.tar.gz.

O binário é o occonfigtool. Ele recebe entradas usando um arquivo YAML. A especificação está descrita aqui.

Consulte Fazer o download de arquivos e Transferir o download do GDC para seu ambiente isolado para instruções sobre como trazer o binário para seu ambiente.

2.3.1. Especificação YAML

Attribute
Descrição
Valores
domain
string
O sufixo de domínio do centro de operações. Exemplos:
- opscenter.local
features
FeatureOptions
Recursos que podem ser ativados durante o provisionamento da implantação do OI. As opções de recursos são abordadas em Opções de recursos. Exemplos:
- multisite, no-firewall, etc.
segments
SegmentInfo
Informações sobre segmentos para configurar o OI.

2.3.1.1. Opções de recursos

A guia "Recursos" mostra todos os recursos que podem ser ativados na implantação do OI. Os seguintes recursos são compatíveis:

Recurso
Descrição
Uso
banner
string
Um banner de login adicionado a todos os switches e firewalls do OCCORE e aos switches da Operations Suite Facility (OIF).
banner: |
This is a banner example.
Multi-line banner input is also supported.
multisite
bool
Gera duas configurações completas de TI do OC e todas as configurações entre sites com ele
multisite: true
virtual
bool
Gera uma configuração para OI virtual
virtual: true
no-firewall
bool
Ativa uma opção de implantação em que o firewall do OCCORE não é necessário.
Nesse método de implantação, a VRF de entrada (GDCH-DATA-TRANSIT/ GDCH-MGMT-TRANSIT) não existe, e todas as sessões de interconexão são processadas diretamente pela VRF OC-DATA e pela VRF HW-INFRA.
no-firewall: true
deny-all-acls
bool
Gera todas as configurações de ACL com uma última regra explícita como "negar tudo".
deny-all-acls: true
L3-WAN
bool
Gera configurações do OCIT usadas para fazer peering com a L3-WAN. Isso inclui VRF de porta da frente, links de hairpin de firewall e políticas de roteamento.
deny-all-acls: true
crypto-services
bool
Gera configurações para oferecer suporte a VLANs e sub-redes isoladas para uso com dispositivos relacionados a criptografia e o gerenciamento deles. Isso não ativa nenhuma função criptográfica no próprio switch.
crypto-services: true

2.3.1.2. Informações do segmento

As informações de segmento fornecem as entradas necessárias para criar todas as configurações. Os seguintes atributos são fornecidos como entrada para cada segmento:

Attribute
Descrição
Uso
segmentType
string
O parâmetro segmentType é obrigatório e um segmento core ou oc.
Um site precisa ter dois segmentos, um de cada tipo: core e oc.
core Significa que as informações fornecidas serão usadas para gerar configurações de um único site do OCCORE.
Outros parâmetros associados estão listados em CoreInfo.
oc Significa que as informações fornecidas serão usadas para gerar configurações de um único site do OC.
Outros parâmetros associados estão listados em OcInfo.
segments:
- segmentType: core



segments:
- segmentType: oc
InstanceID
int
Denota um site. Cada site precisa ter um ID de instância exclusivo
. Para implantações de OI não multissite, o valor do ID da instância é "1" por padrão, se não for fornecido.
segments:
- segmentType: core
instanceID: 1
- segmentType: oc
instanceID: 1

2.3.1.3. Informações principais

As informações principais fornecem todas as entradas necessárias para criar as configurações de:

  • occoresw01
  • occoresw02
  • occorefw01
  • occorefw02
Attribute
Descrição
Valores
bgp
map
Os números de sistema autônomo (ASN) a serem usados para os sistemas autônomos (AS) do BGP core e gdch-transit.

ASNs
core
uint32
ASN para a rede OIR. Isso é usado para o processo principal do BGP. Isso é significativo localmente para o OIR.
gdch-transit
uint32
ASN para as redes de trânsito do OIR (VRFs `GDCH-DATA-TRANSIT` e `GDCH-MGMT-TRANSIT`) que recebem todas as sessões do BGP do GDC. Esse ASN é usado para fazer peering do OIR com o GDC.
Exemplo:
bgp:
asn:
core: 65001
gdch-transit: 65101
uplinkSpeed
uint32
(Opcional) Fornece a velocidade de uplink da conexão (10 ou 100). Valores:10, 100
Padrão: 10

Exemplo:
uplinkSpeed: 100
remoteUplinkSpeed
uint32
(Opcional) Fornece a velocidade de uplink de todas as conexões remotas (10 ou 100). Valores:10, 100
Padrão: 10

Exemplo:
remoteUplinkSpeed: 100
cidrs
[]CIDR
Uma lista de um ou mais CIDRs a serem usados para as redes OIR. Valores: /20 endereço de rede

Exemplo:
cidrs:
- 172.21.0.0/20
cablesCSV
string
Caminho para o arquivo cables.csv
Esse arquivo fornece informações de conectividade de OI no rack OCCORE
Cada segmento do tipo core tem um arquivo de cabos exclusivo.
Exemplo:
cablesCSV: /path/to/cables1.csv
devicesCSV
string
Caminho para o arquivo devices.csv
Esse arquivo fornece informações dos dispositivos no rack OCCORE
Cada segmento do tipo core tem um arquivo de dispositivo exclusivo.
Exemplo:
devicesCSV: /path/to/devices1.csv

2.3.1.4. Informações da OC

As informações principais fornecem todas as entradas necessárias para criar as configurações dos comutadores da unidade de instalação do pacote de operações (OIF, na sigla em inglês) (OCSW):

Attribute
Descrição
Valores
bgp
map
Os números de sistema autônomo (ASN) a serem usados para o sistema autônomo (AS) do BGP oc.

ASNs
oc
uint32
ASN para rede OC.
Exemplo:
bgp:
asn:
oc: 65301
uplinkSpeed
uint32
(Opcional) Fornece a velocidade de uplink da conexão (10 ou 100). Valores:10, 100
Padrão: 10

Exemplo:
uplinkSpeed: 100
remoteUplinkSpeed
uint32
(Opcional) Fornece a velocidade de uplink de todas as conexões remotas (10 ou 100). Valores:10, 100
Padrão: 10

Exemplo:
remoteUplinkSpeed: 100
onlyRemoteOC
bool
Opcional: trata a instância local do OC como uma instância remota. Isso significa que os switches OC-CORE com o mesmo ID de instância usam uplinks remotos para se conectar aos switches OC. Isso também se aplica aos switches OC, o que significa que eles usam uplinks remotos para se conectar aos switches OC-CORE. Valores:true, false
Padrão: false

Exemplo:
onlyRemoteOC: true
cidrs
[ ] CIDR
Uma lista de um ou mais CIDRs a serem usados para as redes OIR. Valores: /20 endereço de rede

Exemplo:
cidrs:
- 172.21.32.0/20
workstationsPerSwitch
uint32
O número de estações de trabalho a serem provisionadas para redes OIR. Isso define o número de interfaces a partir da Eth1/1. O valor máximo permitido é 40 por segmento. Se esse campo não for especificado, as interfaces de 1 a 10 serão configuradas para estações de trabalho. Valores: 1 a 40

Exemplo:
workstationsPerSwitch: 15

2.3.2. Opções da CLI

option
Descrição
Valores
-o
--ocit-file
O arquivo YAML de entrada usado para gerar configurações de OI Exemplos:
- occonfigtool generate ocit config -o example_ocit.yaml
-c
--conn-file
O arquivo de interconexão de entrada usado para gerar configurações de interconexão. Saiba mais no Apêndice A. Exemplos:
- occonfigtool generate ocit config -o example_ocit.yaml -c interconnect.yaml
-d
--debug
Essa opção de flag é usada para gerar registros de depuração. Mostra a estrutura de dados interna e não gera arquivos de saída. Exemplos:
- occonfigtool generate ocit config -o example_ocit.yaml -d
-f
--output-folder
Gera todos os arquivos de configuração e os coloca em uma pasta com o nome especificado. Exemplos:
- occonfigtool generate ocit config -o example_ocit.yaml -f configs
-s
--simplify-configs
Simplifica as configurações de troca ao ter a configuração da ACL no mesmo arquivo que outras configurações. Exemplos:
- occonfigtool generate ocit config -o example_ocit.yaml -s occonfigtool generate ocit config -o example_ocit.yaml -c interconnect.yaml -s

2.3.3. Gerar um exemplo de arquivo de entrada

Para receber um arquivo YAML de entrada de base, execute este comando:

occonfigtool generate ocit example -o ocit.yaml

O exemplo de saída é:

domain: opscenter.local
segments:
  -   segmentType: core
    instanceID: 1
    cablesCSV: /path/to/cables.csv
    bgp:
      asn:
        core: 65535
        gdch-transit: 65515
    uplinkSpeed: 10
    cidrs:
      -   172.21.0.0/20
  -   segmentType: oc
    instanceID: 1
    cablesCSV: /path/to/cables.csv
    bgp:
      asn:
        oc: 65525
    uplinkSpeed: 10
    cidrs:
      -   172.21.32.0/20

2.3.4. Atualize o arquivo de entrada conforme necessário

Depois, modifique o arquivo ocit.yaml para refletir as mudanças necessárias. Consulte a especificação YAML, se necessário.

As principais coisas a serem confirmadas são os ASNs do BGP e os blocos CIDR da rede.

2.3.5. Gerar configurações de base

Com o arquivo ocit.yaml atualizado, execute occonfigtool para gerar as configurações. Execute este comando:

Os arquivos de configuração gerados têm um prefixo com o seguinte formato:

<segment_type><device_type><instance_id><device_id>

occonfigtool generate ocit config -o ./ocit.yaml

Exemplo de saída:

Configuration written to coresw101.base.opscenter.local.cfg
Configuration written to coresw102.base.opscenter.local.cfg
Configuration written to corefw101.base.opscenter.local.cfg
Configuration written to corefw102.base.opscenter.local.cfg
Configuration written to coresw101.acl.opscenter.local.cfg
Configuration written to coresw102.acl.opscenter.local.cfg
Configuration written to ocsw101.base.opscenter.local.cfg
Configuration written to ocsw102.base.opscenter.local.cfg
Configuration written to ocsw101.acl.opscenter.local.cfg
Configuration written to ocsw102.acl.opscenter.local.cfg
Configuration written to ocit-topology-exchange-1.common.opscenter.local.yaml
Configuration written to ocinfo.common.opscenter.local.txt
SHA1 sums written to configs.shasum.ocit.txt (use "shasum -c configs.shasum.ocit.txt" on receiving side to verify integrity)

2.3.5.1. Gerar configuração base para implantação em vários sites

Verifique se você tem duas instâncias no arquivo ocit.yaml, conforme mostrado aqui no arquivo de exemplo. A flag de recurso multisite precisa ser definida como true:

domain: opscenter.local
features:
  multisite: true
segments:
  -   segmentType: core
    instanceID: 1
    cablesCSV: /path/to/cables1.csv
    devicesCSV: /path/to/devices1.csv
    bgp:
      asn:
        core: 65072
        gdch-transit: 65515
    uplinkSpeed: 10
    cidrs:
      -   10.1.0.0/20
  -   segmentType: oc
    instanceID: 1
    bgp:
      asn:
        oc: 65072
    uplinkSpeed: 10
    cidrs:
      -   10.1.32.0/20
  -   segmentType: core
    instanceID: 2
    cablesCSV: /path/to/cables2.csv
    devicesCSV: /path/to/devices2.csv
    bgp:
      asn:
        core: 65073
        gdch-transit: 65525
    uplinkSpeed: 10
    cidrs:
      -   10.2.0.0/20
  -   segmentType: oc
    instanceID: 2
    bgp:
      asn:
        oc: 65073
    uplinkSpeed: 10
    cidrs:
      -   10.2.32.0/20

Exemplo de saída:

Configuration written to coresw101.base.opscenter.local.cfg
Configuration written to coresw102.base.opscenter.local.cfg
Configuration written to corefw101.base.opscenter.local.cfg
Configuration written to corefw102.base.opscenter.local.cfg
Configuration written to coresw101.acl.opscenter.local.cfg
Configuration written to coresw102.acl.opscenter.local.cfg
Configuration written to ocsw101.base.opscenter.local.cfg
Configuration written to ocsw102.base.opscenter.local.cfg
Configuration written to ocsw101.acl.opscenter.local.cfg
Configuration written to ocsw102.acl.opscenter.local.cfg
Configuration written to coresw201.base.opscenter.local.cfg
Configuration written to coresw202.base.opscenter.local.cfg
Configuration written to corefw201.base.opscenter.local.cfg
Configuration written to corefw202.base.opscenter.local.cfg
Configuration written to coresw201.acl.opscenter.local.cfg
Configuration written to coresw202.acl.opscenter.local.cfg
Configuration written to ocsw201.base.opscenter.local.cfg
Configuration written to ocsw202.base.opscenter.local.cfg
Configuration written to ocsw201.acl.opscenter.local.cfg
Configuration written to ocsw202.acl.opscenter.local.cfg
Configuration written to ocit-topology-exchange-1.common.opscenter.local.yaml
Configuration written to ocit-topology-exchange-2.common.opscenter.local.yaml
Configuration written to ocinfo.common.opscenter.local.txt
SHA1 sums written to configs.shasum.ocit.txt (use "shasum -c configs.shasum.ocit.txt" on receiving side to verify integrity)

O sistema precisa salvar os arquivos de configuração no diretório de trabalho atual. Se a opção da CLI output-folder estiver ativada durante a geração das configurações, os arquivos de saída serão gerados e salvos nesse caminho de pasta.

O comando para gerar os arquivos de configuração é:

occonfigtool generate ocit config -o ocit.yaml -f path/to/configs

Exemplo de saída:

Configuration written to ./path/to/configs/site-1/base/coresw101.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/coresw102.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/corefw101.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/corefw102.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/acl/coresw101.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/acl/coresw102.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/ocsw101.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/ocsw102.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/acl/ocsw101.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/base/acl/ocsw102.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/coresw201.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/coresw202.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/corefw201.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/corefw202.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/acl/coresw201.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/acl/coresw202.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/ocsw201.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/ocsw202.base.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/acl/ocsw201.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-2/base/acl/ocsw202.acl.opscenter.local.cfg
Configuration written to ./path/to/configs/site-1/ocit-topology-exchange-1.common.opscenter.local.yaml
Configuration written to ./path/to/configs/site-2/ocit-topology-exchange-2.common.opscenter.local.yaml
Configuration written to ./path/to/configs/ocinfo.common.opscenter.local.txt
SHA1 sums written to path/to/configs/configs.shasum.ocit.txt (use "shasum -c path/to/configs/configs.shasum.ocit.txt" on receiving side to verify integrity)

Consulte a próxima seção para ver as etapas detalhadas.

2.3.5.2. Gerar configuração de base para conexão L3-WAN

Configure e declare a conexão L3-WAN. O exemplo a seguir mostra um arquivo YAML completo com as configurações corretas para a conexão L3-WAN:

domain: opscenter.local
features:
  L3-WAN: true
segments:
  -   segmentType: core
    instanceID: 1
    cablesCSV: /path/to/cables.csv
    devicesCSV: /path/to/devices.csv
    bgp:
      asn:
        core: 65535
        gdch-transit: 4200002002
        wan-transit: 65000
    uplinkSpeed: 10
    cidrs:
      -   172.21.0.0/20
  -   segmentType: oc
    instanceID: 1
    bgp:
      asn:
        oc: 65525
    uplinkSpeed: 10
    cidrs:
      -   172.21.32.0/20