View a markdown version of this page

Use IPv6 com o Kinesis Video Streams - Amazon Kinesis Video Streams

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Use IPv6 com o Kinesis Video Streams

Você pode configurar o Kinesis Video Streams IPv6 para ser usado nas operações do plano de controle e do plano de dados. Isso permite que seus aplicativos se comuniquem com os IPv6 serviços do Kinesis Video Streams usando endereços por meio de endpoints de pilha dupla.

nota

IPv6 o suporte requer versões específicas do SDK e definições de configuração. Certifique-se de que seu SDK e suas versões de AWS SDK do Kinesis Video Streams sejam compatíveis com endpoints de pilha dupla. IPv6 Os endpoints de pilha dupla oferecem suporte ao IPv6 tráfego IPv4 e estão disponíveis para alguns serviços em algumas regiões.

O Kinesis Video IPv6 Streams oferece suporte por meio de endpoints de pilha dupla para aplicativos de produtores e consumidores. Você pode configurar seus aplicativos IPv6 para uso em chamadas de API do plano de controle e operações de streaming do plano de dados.

Configure o AWS SDK para IPv6

Se você estiver usando o AWS SDK para chamar o APIs plano de controle do Kinesis Video Streams em sua configuração de produção, você pode IPv6 habilitá-lo configurando endpoints de pilha dupla. O AWS SDK fornece vários métodos padronizados para habilitar endpoints de pilha dupla.

Importante

Quando os endpoints de pilha dupla estão habilitados, o SDK tenta usar pontos de extremidade de pilha dupla para fazer solicitações de rede. Se não existir um endpoint de pilha dupla para o serviço ou a região, a solicitação falhará.

Use variáveis de ambiente

Defina a seguinte variável de ambiente para ativar endpoints de IPv6 pilha dupla:

export AWS_USE_DUALSTACK_ENDPOINT=true

Use o arquivo AWS de configuração

Adicione a seguinte configuração ao seu arquivo AWS de configuração (~/.aws/config):

[default] use_dualstack_endpoint = true

Use as propriedades do sistema JVM (somente Java e SDKs Kotlin)

Para aplicativos Java e Kotlin, defina a seguinte propriedade do sistema JVM:

-Daws.useDualstackEndpoint=true

Ou programaticamente em seu código Java:

System.setProperty("aws.useDualstackEndpoint", "true");

Compatibilidade com o SDK

Os itens a seguir AWS SDKs oferecem suporte à configuração de endpoint de pilha dupla:

SDK Compatível Métodos de configuração
AWS CLI v2 Sim Variável de ambiente, arquivo de configuração
SDK para C++ Sim Variável de ambiente, arquivo de configuração
SDK para Go V2 (1.x) Sim Variável de ambiente, arquivo de configuração
SDK para Java 2.x Sim Variável de ambiente, arquivo de configuração, propriedade JVM
SDK para Java 1.x Não Não compatível
SDK para 3.x JavaScript Sim Variável de ambiente, arquivo de configuração
SDK para Python (Boto3) Sim Variável de ambiente, arquivo de configuração

Depois de configurar os endpoints de pilha dupla, o AWS SDK usa automaticamente os endpoints ao chamar o plano de controle do IPv6 Kinesis Video Streams. APIs

Configure o SDK do Kinesis Video Streams Producer para IPv6

O IPv6 SDK do Kinesis Video Streams Producer fornece opções de configuração para operações do plano de controle e do plano de dados. Essas configurações funcionam com a configuração de endpoint de AWS pilha dupla do SDK.

Configurar o SDK do Produtor C/C++

Os endpoints padrão e a cadeia de resolução de DNS são implementados pelo SDK KVS Producer-C versão 1.6.0. Ele verifica sequencialmente cada local onde você pode definir a configuração desses parâmetros e, em seguida, seleciona o primeiro que você definir. A sequência predefinida é a seguinte:

Para obter mais informações sobre o Producer SDKs, consulte os tópicos relacionados ao Producer SDK for C, Producer SDK for C++ e Producer SDK.

Configuração do endpoint

  1. O controlPlaneUrl parâmetro paracreateAbstractDefaultCallbacksProvider.

  2. CMake Parâmetros de configuração do endpoint: (-DAWS_KVS_USE_LEGACY_ENDPOINT_ONLY=TRUE,-DAWS_KVS_USE_DUAL_STACK_ENDPOINT_ONLY=TRUE)

  3. Variáveis de ambiente: (export AWS_USE_DUALSTACK_ENDPOINT=TRUE)

    • Se AWS_USE_DUALSTACK_ENDPOINT for TRUE (sem distinção entre maiúsculas e minúsculas), o endpoint de pilha dupla será usado.

  4. Caso contrário, o endpoint legado será construído e usado.

Com 2, 3 e 4, o endpoint será construído com base na região fornecida. createAbstractDefaultCallbacksProvider

Filtragem de DNS

O SDK do KVS Producer definirá o CURLOPT_IPRESOLVE parâmetro apropriado, dependendo da configuração:

  1. CMake Parâmetros de resolução de DNS: (-DAWS_KVS_IPV4_ONLY=TRUE,-DAWS_KVS_IPV6_ONLY=TRUE,-DAWS_KVS_IPV4_AND_IPV6_ONLY=TRUE)

  2. Variáveis de ambiente (export AWS_KVS_USE_IPV4=TRUE,export AWS_KVS_USE_IPV6=TRUE)

  3. Caso contrário, nenhuma filtragem ocorrerá. IPv4 Tanto os endereços IPv6 IP quanto os endereços IP, se retornados pelo DNS, podem ser usados.

nota

Se as configurações do filtro DNS estiverem definidas para filtrar endereços IPV6 IP, mas a configuração do SDK for para usar o endpoint legado (endereços IPV4 somente retornados), a solicitação falhará.

O C++ Producer SDK versão 3.5.0 usa o Producer-C SDK 1.6.0 para as chamadas da API KVS.

Configurar o GStreamer plug-in

O GStreamer plug-in usa o SDK do C Producer subjacente, portanto, a IPv6 configuração é feita automaticamente quando você configura o SDK C IPv6 conforme descrito anteriormente.

Não é necessário modificar o código, basta criar o SDK com CMake os parâmetros ou definir as variáveis de ambiente apropriadas conforme descrito na seção anterior.

Resolução do endpoint do plano de dados

Para operações de plano de dados, use a GetDataEndpoint API para recuperar o endpoint apropriado do plano de dados de pilha dupla. O serviço retorna o endpoint correspondente, dependendo da URL da solicitação.

Exemplo:

  • Se a solicitação de GetDataEndpoint API for feita para o endpoint legado que termina em.amazonaws.com, o Kinesis Video Streams retornará os endpoints do plano de dados legado que terminam com. .amazonaws.com

  • Se a solicitação de GetDataEndpoint API for feita para o endpoint de pilha dupla que termina em, o Kinesis .api.aws Video Streams retornará o endpoint do plano de dados de pilha dupla que termina com. .api.aws

Configure o AWS CLI para IPv6

Se você estiver usando as operações do Kinesis Video Streams ( proof-of-conceptnormalmente AWS CLI para trabalhar), você IPv6 pode habilitá-las configurando endpoints de pilha dupla.

Usar uma variável de ambiente

export AWS_USE_DUALSTACK_ENDPOINT=true

Use o arquivo AWS de configuração

Adicione o seguinte ao seu arquivo AWS CLI de configuração (~/.aws/config):

[default] use_dualstack_endpoint = true

Exemplos de configuração

Exemplo de SDK C

Para criar o SDK do KVS Producer-C no modo IPV6 -only e ignorar a configuração da variável de ambiente, use os seguintes comandos para criar o SDK:

cmake .. -DAWS_KVS_USE_DUAL_STACK_ENDPOINT_ONLY=TRUE -DAWS_KVS_IPV6_ONLY=TRUE make -j
nota

Se você já tiver o SDK criado, precisará executar uma compilação limpa. Exclua as pastas de compilação, código aberto e dependência existentes antes de executar os comandos de compilação.

Considerações

Requisitos de rede

  • Garanta que sua infraestrutura de rede ofereça suporte IPv6 à conectividade

  • Verifique se seus grupos de segurança e sua rede ACLs permitem IPv6 tráfego

  • Teste a conectividade com AWS IPv6 endpoints a partir do seu ambiente de implantação

  • Os endpoints de pilha dupla estão disponíveis para alguns serviços em algumas regiões. Verifique a disponibilidade para suas regiões de destino

Compatibilidade com SDK

  • Verifique se você está usando uma versão compatível AWS do SDK

  • O AWS SDK for Java 1.x não oferece suporte à configuração de endpoint de pilha dupla

  • Para o SDK for Go 1.x (V1), você deve habilitar o carregamento do arquivo de configuração para usar as configurações compartilhadas

Testes e validação

Antes de implantar aplicativos IPv6 habilitados do Kinesis Video Streams na produção:

  • Teste as operações do plano de controle (criação, exclusão, listagem de fluxos)

  • Verifique as operações do plano de dados (ingestão e consumo de vídeo)

  • Valide o desempenho e a conectividade em seu ambiente de rede

  • Execute testes canários para garantir uma funcionalidade consistente IPv6

  • Teste o comportamento de failover quando endpoints de pilha dupla não estão disponíveis

Clientes afetados pela atualização para incluir IPv6

Quando você habilita o IPv6 Kinesis Video Streams, há várias áreas em que talvez seja necessário atualizar suas configurações e políticas existentes para garantir a funcionalidade contínua.

Políticas do IAM e filtragem de endereços IP

Se você usa a filtragem de endereço IP de origem em suas políticas de usuário, políticas de função ou políticas baseadas em recursos do IAM, precisará atualizar essas políticas para incluir IPv6 intervalos de endereços.

Importante

As políticas existentes do IAM que usam blocos IPv4 CIDR em NotIpAddress condições IpAddress ou não funcionarão automaticamente com IPv6 endereços. Você deve adicionar IPv6 intervalos explicitamente para manter o controle de acesso.

Exemplo de atualização da política do IAM para IPv6:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "kinesisvideo:*", "Resource": "*", "Condition": { "IpAddress": { "aws:SourceIp": [ "192.0.2.0/24", "203.0.113.0/24", "2001:db8::/32" ] } } } ] }

Registro em log e monitoramento

IPv6 os endereços têm um formato diferente IPv4 dos endereços, o que pode afetar seus sistemas de registro, monitoramento e análise.

logs

os registros conterão IPv6 endereços no sourceIPAddress campo quando as solicitações forem feitas IPv6. Atualize suas ferramentas e scripts de análise de registros para lidar com formatos IPv6 de endereço.

Exemplo IPv6 de endereço nos registros:

{ "sourceIPAddress": "2001:db8::1", "eventName": "CreateStream", "eventSource": "kinesisvideo.amazonaws.com" }

Solução de problemas

Problemas comuns

  • Falhas de conexão — verifique a conectividade IPv6 de rede e a resolução de DNS

  • Erros do SDK — Verifique se você está usando versões compatíveis do SDK que oferecem suporte a endpoints de pilha dupla

  • Problemas de autenticação — confirme se as políticas e credenciais do IAM funcionam com endpoints IPv6

  • Endpoint não disponível — Se não existir um endpoint de pilha dupla para o serviço ou região, as solicitações falharão

Etapas de verificação

  • Verifique se AWS_USE_DUALSTACK_ENDPOINT=true está definido ou use_dualstack_endpoint = true está no seu arquivo de configuração

  • Verifique se os sinalizadores de configuração do SDK do Kinesis Video IPv6 Streams estão definidos corretamente

  • Teste a conectividade de rede com AWS IPv6 endpoints

  • Analise os registros do aplicativo em busca IPv6 de mensagens de erro específicas

  • Confirme se sua região oferece suporte a endpoints de pilha dupla para o Kinesis Video Streams

Validação de configuração

Você pode verificar sua configuração de endpoint de pilha dupla verificando:

  • Variáveis de ambiente: echo $AWS_USE_DUALSTACK_ENDPOINT

  • AWS arquivo de configuração: cat ~/.aws/config | grep use_dualstack_endpoint

  • Propriedades da JVM (Java): verifique as propriedades do sistema nos registros do seu aplicativo