ECS: PowerScale: Problemas de desempenho do CloudPools
Summary: Configure o ECS e o PowerScale (anteriormente Isilon) para usar endereçamento Virtual Style e obter melhor desempenho.
Symptoms
Quando o ECS não está configurado com um IP virtual e endereçamento de estilo virtual, há um problema potencial que pode causar velocidades de transferência lentas.
O CloudPools é compatível com ambos os estilos de endereçamento de bucket (endereçamento de estilo virtual, endereçamento de estilo de caminho), no entanto, sempre tenta o endereçamento de estilo virtual primeiro.
Cause
A maneira como o PowerScale e o CloudPools leem os dados armazenados é em fragmentos de 1 MB.
Ao fazer leituras para um arquivo maior que 1MB, eles buscam esses fragmentos em série e cada nono fragmento é um arquivo de cabeçalho de 168 bytes que contém.
A questão surge quando eles estão fazendo vários milhares ou centenas de milhares desses pedidos. Essa sobrecarga inerente ao fazer uma solicitação S3 em série se soma para tornar a recuperação de arquivos e as taxas de transferência lentas.
Como ele tenta usar o endereçamento de estilo virtual primeiro, ele pode causar um atraso entre as solicitações se não estiver configurado para usar endereçamento de estilo virtual.
Resolution
Prólogo:
- VIP = "Virtual IP (VIP) é a instância de balanceamento de carga onde o mundo aponta seus navegadores para chegar a um site. Um VIP tem um endereço IP, que deve estar disponível publicamente para ser utilizável. Normalmente, um número de porta TCP ou UDP é associado ao VIP, como a porta TCP 80 para tráfego da Web. Um VIP tem pelo menos um servidor real atribuído a ele, para o qual ele dispensa tráfego."
- CP = CloudPools
- DNS RR = rodízio do DNS
- CNAME = Um registro de Nome Canônico é um tipo de registro de recurso no Sistema de Nomes de Domínio que mapeia um nome de domínio para outro, conhecido como Nome Canônico. Isso pode ser conveniente ao executar vários serviços a partir de um único endereço IP.
O seguinte é necessário ao configurar o endereçamento de estilo virtual com uma URL base curta:
- VIP do balanceador de carga usado na configuração do CP (ou VIP do DNS RR)
- Entrada CNAME curinga no DNS para VIP do balanceador de carga para que o bucket-name.loadbalancer-fqdn.emc.com resolva qualquer nome de bucket do PowerScale CP resolvido para o VIP do balanceador de carga (ou DNS RR)
- Entrada CNAME para loadbalancer.emc.com
- URL base do VIP configurado na interface do usuário do ECS
Endereçamento em estilo de host virtual (recomendado para CloudPools):
No esquema de endereçamento do host virtual, o nome do bucket é exibido no hostname. Por exemplo, o bucket chamado "mybucket" no host ecs1.yourco.com, seria acessado usando:
http://mybucket.ecs1.yourco.com
Além disso, o ECS também permite a inclusão de um namespace no endereço. Por exemplo:
<bucketname>.<namespace>.ecs1.yourco.com
Para usar esse estilo de endereçamento, você deve configurar o ECS para que ele saiba qual parte da URL é o nome do bucket. Isso é feito configurando a URL base. Além disso, você deve garantir que seu sistema DNS possa resolver o endereço. As seções a seguir apresentam mais informações:
Endereçamento com base em caminho:
No esquema de endereçamento baseado em caminho, o nome do bucket é adicionado ao final do caminho. Por exemplo:
ecs1.yourco.com/mybucket
Ao incluir um namespace, use o seguinte formato:
ecs1.yourco.com/mynamespace/mybucket
Parte 1: Configuração do DNS:
Ao acessar o armazenamento do ECS usando o serviço S3, certifique-se de que a URL resolva o endereço do nó de dados do ECS ou do balanceador de carga.
Quando seu aplicativo estiver usando endereçamento em estilo de host virtual, a URL incluirá o nome do bucket e poderá incluir um namespace. Nessas circunstâncias, você deve incluir uma entrada DNS que resolva o endereço de estilo de host virtual. Você pode fazer isso usando um curinga na entrada DNS.
Por exemplo, se seu aplicativo emitir solicitações no formulário bucket.ecs.example.com, você deverá ter duas entradas DNS CNAME.
*.cloudpools_uri.example.com - este CNAME curinga permite que o DNS resolva nossas solicitações que têm o nome do bucket na URL. (Isso é o que o CloudPools usa por padrão)
cloudpools_uri.example.com - Esse CNAME permitirá que o nome base seja resolvido depois que o ECS determinar qual parte da solicitação é o bucket e/ou namespace.
ecs-loadbalancer.example.com - Esse deve ser um registro A existente em seu ambiente para o FQDN do DNS do LoadBalancer, GTM ou RoundRobin.
NAME TYPE VALUE
--------------------------------------------------
*.cloudpools_uri.example.com CNAME ecs-loadbalancer.example.com
cloudpools_uri.example.com CNAME ecs-loadbalancer.example.com
ecs-loadbalancer.example.com A 192.0.2.23
Essas entradas permitem que o nome base seja resolvido ao emitir comandos de nível de serviço (buckets de lista) e o endereço do bucket do estilo host virtual seja resolvido.
Parte 2: Configurando a URL base na interface do usuário do ECS:
Se você tiver um aplicativo S3 que usa endereçamento estilo host virtual e quiser usá-lo para se conectar ao ECS, a URL base deverá ser definida para permitir que o ECS saiba qual parte do endereço se refere ao bucket e, opcionalmente, ao namespace. A URL base pode ser definida usando o Portal do ECS ou usando a API REST de gerenciamento do ECS e requer a função de administrador do sistema ECS.
A página Gerenciamento de URL base mostra as URLs base que foram criadas e como o ECS deve usá-las.
URL base do objeto de configurações >

Para que o ECS saiba como tratar o prefixo de localização do bucket, a URL base deve ser configurada escolhendo uma das opções a seguir.
- Usar a URL base com namespace
- Usar a URL base sem namespace
Ao processar uma solicitação, o ECS:
- Tente extrair o namespace do cabeçalho x-emc-namespace. Se a encontrar, ignore as etapas abaixo e processe a solicitação.
- Obtenha o nome do host do URL do cabeçalho do host e verifique se a última parte do endereço corresponde a qualquer um dos URLs base configurados.
- Quando houver uma correspondência da URL base, use a parte do prefixo do nome do host (a parte esquerda quando a URL base é removida) para obter a localização do bucket.
Os exemplos a seguir demonstram como o ECS lida com as solicitações HTTP de entrada com estruturas diferentes.
Exemplo de URL base sem namespace:
Name: Example_BASEURL
BaseURL: cloudpools_uri.example.com
Use with Namespace: No
Isso permite que ele determine qual parte da solicitação é o nome do bucket. Veja abaixo um exemplo de solicitação:
d0007430acf369abf0d5681089a1a96abc8fdi16.cloudpools_uri.example.com
Se você configurá-lo com um namespace, ele analisará mais um subdomínio para determinar o namespace e o bucket.
Adicionando a URL base no ECS:
- Essa operação requer a função de administrador do sistema no ECS.
- Você deve garantir que o domínio especificado em uma solicitação que usa uma URL para especificar um local de objeto seja resolvido para o local do nó de dados do ECS ou de um balanceador de carga que fica na frente dos nós de dados.
Procedimento:
- No Portal do ECS, selecione Settings > Object Base URLs.
- Selecione Nova URL base.
A página Nova URL Base é exibida.

- Digite o nome da URL base. Isso fornece informações adicionais sobre a URL base ao examinar a tabela de URL base.
- Digite a URL base.
Se as URLs de localização dos objetos estiverem no formato: d0007430acf369abf0d5681089a1a96abc8fdi16.cloudpools_uri.example.com, a URL base será cloudpools_uri.example.com.
Você pode especificar qual formato no seletor de namespace. - Escolha o formato no qual o endereço do objeto está codificado na URL: Com um namespace ou sem um namespace
- Selecione Salvar.
Parte 3: Configurando o URI para CloudPools:
Por fim, devemos definir o URI adequado na configuração do CloudPools. Talvez você já tenha o URI configurado corretamente, mas agora é a hora de verificar.
O URI deve ser o CNAME que configuramos na Parte 1 que aponta para seu balanceador de carga, GTM ou rodízio.
Seu URI é:
cloudpools_uri.example.com
Opcionalmente, você pode colocar um número de porta assim, mas não é necessário:
cloudpools_uri.example.com:9020
cloudpools_uri.example.com:443
Não adicione nenhum prefixo "subdomain" à URL base durante a configuração da conta de nuvem.
Por exemplo, não configure a conta de nuvem usando o URI http://powerscale.cloudpools_uri.example.com:9020
. A exceção seria quando PowerScale é o namespace no ECS e, na etapa anterior, parte 2, você marcou "Use base URL with namespace"
Parte 4: Verificando se o CloudPools está usando corretamente a nova configuração.
Se você precisar de ajuda com qualquer uma dessas etapas, abra um chamado com a equipe de suporte do PowerScale ou do ECS.
IP do nosso balanceador de carga = 192.0.2.12
IP do nosso DNS = 192.0.2.53
IP do ECS = 192.168.219.254
Endereço IP do nosso PowerScale = 192.0.2.70
- Verifique se o seu DNS está resolvendo o curinga corretamente, ele deve resolver para o IP do seu VIP ou LB.
admin@:> nslookup TEST.cloudpools-uri.example.com
Server: 192.0.2.53
Address: 192.0.2.53#53
TEST.cloudpools-uri.example.com canonical name = ecs-loadbalancer.example.com
Name: ecs-loadbalancer.example.com
Address: 192.0.2.12
- Verifique se o seu DNS está resolvendo a base corretamente, ele deve resolver para o IP do seu VIP ou LB.
admin@:> nslookup cloudpools-uri.example.com
Server: 192.0.2.53
Address: 192.0.2.53#53
cloudpools-uri.example.com canonical name = ecs-loadbalancer.example.com
Name: ecs-loadbalancer.example.com
Address: 192.0.2.12
- Verifique se o URI do CloudPools está definido corretamente.
- Verifique os URLs base que você configurou na interface do usuário do ECS.
- Inicie um trabalho do CloudPools no PowerScale.
Observe o horário em UTC em que o trabalho foi criado e quando o trabalho foi concluído. - Na CLI do ECS, verifique se as solicitações estão sendo emitidas corretamente e se não há erros usando as horas coletadas na etapa 5:
Use svc_request para analisar as solicitações desse período:
svc_request -start "2018-09-05T18:22:53" -stop "2018-09-05T18:36:05" -t HEAD summary
Exemplo de saída em que ele não consegue usar o endereçamento de estilo virtual e reverte para o estilo de caminho (se isso ocorrer, abra um chamado e consulte este artigo da KB):
- Você pode ver as duas primeiras solicitações do trabalho do CloudPools usando o endereçamento de estilo virtual obtendo uma resposta HTTP 403. - Destaque roxo
- Em seguida, as duas segundas solicitações revertendo para o endereçamento de estilo de caminho - realce azul
- Exemplo de como devem ser as solicitações - realce verde
admin@> svc_request -start "2025-09-05 T18:22:53" -stop "2025-09-05 18:36:05" -t HEAD summary
svc_request v0.0.10 (svc_tools v1.0.0) Started 2018-09-05 18:54:12
Time range: 2018-09-05 18:22:53 - 2018-09-05 18:36:05
Running against node(s): <All nodes>
Request Type: HEAD
Resp
Node Time Request ID Prot Type MPU Client IP Status (bytes) (ms) URL
169.254.1.2 2025-09-05 18:34:07 0aa18451:1641e1e6334:565b3:3f s3 HEAD - 192.0.2.70 403 0 3 //d0007430acf369abf0d5681089a1a96abd8fdi16.cloudpools-uri.example.com/
169.254.2.3 2025-09-05 18:34:07 0aa1845a:1641e1ded8e:55d9f:77 s3 HEAD - 192.0.2.70 403 0 3 /m0007430acf369abf0d5681089a1a96abd8fdi16.cloudpools-uri.example.com/
169.254.1.1 2025-09-05 18:34:12 0aa18450:1641e1dea6e:56189:5 s3 HEAD - 192.0.2.70 200 0 6 d000e1e56aa209c8e7558b30d6d368c1a7b95i1/
169.254.1.1 2025-09-05 18:34:12 0aa18450:1641e1dea6e:56181:4d s3 HEAD - 192.0.2.70 200 0 3 m000e1e56aa209c8e7558b30d6d368c1a7b95i1/