documentation.suse.com / Documentação do SUSE Edge / Solução de problemas / Solução de problemas da rede de borda (NMC)

47 Solução de problemas da rede de borda (NMC)

O NMC é injetado nas imagens EIB do SL Micro para configurar a rede dos hosts do Edge no momento da inicialização pelo Combustion. Ele também é executado no fluxo de trabalho do Metal3 como parte do processo de inspeção. Os problemas podem ocorrer quando o host é inicializado pela primeira vez ou no processo de inspeção do Metal3.

Problemas comuns
  • O host não é inicializado corretamente na primeira vez: arquivos de definição de rede mal elaborados podem provocar falha na fase de combustão e, dessa forma, o host perde o shell root.

  • Os arquivos não são gerados de maneira apropriada: garanta que os arquivos de rede sigam o formato NMState.

  • As interfaces de rede não são configuradas corretamente: garanta que os endereços MAC correspondam às interfaces usadas no host.

  • Incompatibilidade entre nomes de interface: o argumento do kernel net.ifnames=1 habilita o Esquema de nomenclatura previsível para interfaces de rede, portanto, não existe mais o eth0, porém, outro esquema de nomenclatura, como o enp2s0.

Registros
  • Registros do Combustion: como o NMC é usado no momento da execução do Combustion, consulte os registros do Combustion com o comando journalctl -u combustion no host que está sendo provisionado.

  • Registros do NetworkManager: no fluxo de trabalho de implantação do Metal3, o NMC faz parte da execução do IPA e é executado como uma dependência do serviço NetworkManager, usando a funcionalidade ExecStartPre do systemd. Consulte os registros do NetworkManager no host IPA como journalctl -u NetworkManager (consulte a seção de solução de problemas de provisionamento de rede direcionado (Capítulo 49, Solução de problemas de provisionamento de rede direcionado) para saber como acessar o host quando inicializado com o IPA).

Etapas da solução de problemas
  1. Verifique a sintaxe do yaml: os arquivos de configuração do NMC são yaml. Verifique a sintaxe adequada com yamllint ou ferramentas similares.

  2. Execute o NMC manualmente: como o NMC faz parte do contêiner EIB, é possível usar o comando podman local para depurar problemas.

    1. Crie uma pasta temporária para armazenar os arquivos nmc.

      mkdir -p ${HOME}/tmp/foo
    2. Salve os arquivos nmc nesse local.

      ❯ tree --noreport ${HOME}/tmp/foo
      /Users/johndoe/tmp/foo
      ├── host1.example.com.yaml
      └── host2.example.com.yaml
    3. Execute o contêiner EIB com o NMC como ponto de entrada e o comando generate para executar as mesmas tarefas que o NMC faz no momento da execução do Combustion:

      podman run -it --rm -v ${HOME}/tmp/foo:/tmp/foo:Z --entrypoint=/usr/bin/nmc registry.suse.com/edge/3.3/edge-image-builder:1.2.0 generate --config-dir /tmp/foo --output-dir /tmp/foo/
      
      [2025-06-04T11:58:37Z INFO  nmc::generate_conf] Generating config from "/tmp/foo/host2.example.com.yaml"...
      [2025-06-04T11:58:37Z INFO  nmc::generate_conf] Generating config from "/tmp/foo/host1.example.com.yaml"...
      [2025-06-04T11:58:37Z INFO  nmc] Successfully generated and stored network config
    4. Observe os registros e os arquivos que são gerados na pasta temporária.

Documentation survey