Ajustando IOPS de um volume Block Storage for VPC

Aumente ou diminua o número de operações de entrada/saída por segundo (IOPS) do Block Storage for VPC para otimizar o desempenho de sua carga de trabalho. Ajuste o IOPS dos volumes sem causar interrupções no acesso ao armazenamento ou tempo de inatividade no console, pela CLI, pela API ou pelo Terraform.

Você pode aumentar ou diminuir o limite de IOPS dos volumes de dados e de inicialização de segunda geração a qualquer momento, independentemente de estarem ou não conectados a um servidor virtual. Os volumes de dados e de inicialização de primeira geração devem ser anexados a um servidor em execução quando você tentar ajustar o limite de IOPS.

Para volumes de segunda geração, o perfil “ sdp ” oferece IOPS flexíveis sem restrições de capacidade. Para volumes de primeira geração, você pode ajustar o IOPS especificando um perfil diferente da família tiered ou um valor de IOPS diferente em uma banda de IOPS do custom.

É possível ajustar o número de IOPS do volume várias vezes até seu limite máximo ou reduzi-lo até seu limite mínimo. O ajuste de IOPS não causa interrupções no serviço.

Por exemplo, você pode perceber que um aplicativo cresceu de tal forma que um perfil de armazenamento de nível inferior passou a ser um gargalo de desempenho. Em vez de solicitar um novo volume e migrar seus dados, é possível mudar as características de desempenho do volume existente aumentando as IOPS na próxima camada de desempenho.

Em outro cenário, você pode desejar configurar inicialmente o seu armazenamento em um nível de desempenho mais alto de 10 IOPS/GB para agilizar um upload de dados. Após a conclusão do upload, você pode redefinir o armazenamento para 5 IOPS/GB para operações normais. Ou, você pode querer aumentar as IOPS de seu volume durante os horários de pico para seu aplicativo e diminuir as IOPS durante os horários fora de pico.

Com esse recurso, você pode:

  • Ajuste as IOPS para cima ou para baixo selecionando uma Camada de IOPS diferente.
  • Ajustar as IOPS dentro de uma banda de IOPS customizadas.
  • Ajustar as IOPS sem ter que desconectar o volume da instância do servidor virtual.

O nível até o qual o IOPS pode ser aumentado é determinado pelo valor máximo permitido pelo perfil do volume.

  • Perfil de desempenho definido por SSD: Você pode especificar o desempenho do volume no intervalo de 100 a 64.000 IOPS sem restrições baseadas na capacidade. As etapas para modificar o IOPS são as mesmas do perfil personalizado. É possível modificar o nível de desempenho dos volumes de segunda geração quando eles são anexados a um servidor virtual ou quando são armazenados de forma autônoma.

  • Perfis em camadas: você pode ajustar o IOPS para uma camada de IOPS com base no tamanho do volume ou selecionar o próximo perfil que permite maior desempenho. O volume deve estar associado a uma instância de servidor virtual em execução.

  • Perfil de volume personalizado: você pode aumentar o IOPS especificando a próxima banda personalizada de IOPS. Por exemplo, para um volume de 10 a 39 GB, você pode aumentar o IOPS personalizado para 1.000 IOPS. O intervalo de IOPS dentro de uma banda customizada é baseado no tamanho do volume. Se, posteriormente, você aumentar o tamanho de um volume, poderá aumentar as IOPS novamente. O volume deve estar associado a uma instância de servidor virtual em execução.

É possível monitorar o progresso da mudança de IOPS do seu volume por meio da IU ou da CLI. Você também pode verificar os eventos de monitoramento de atividades para confirmar se as IOPS foram ajustadas.

O faturamento para um volume atualizado é atualizado automaticamente. A diferença rateada do novo preço é incluída no ciclo de faturamento atual. A nova quantia integral será faturada no próximo ciclo de faturamento.

Limitações

As limitações a seguir se aplicam a esta liberação.

Limitações gerais

  • Para ajustar o IOPS, um volume de primeira geração deve ser anexado a uma instância de servidor virtual que esteja ligada e em execução.
  • Para ajustar o IOPS, o volume deve estar em um estado disponível .
  • Quando um volume está em transição, o volume permanece em um estado atualizado até que você o reconecte a uma instância em execução. Por exemplo, se o volume for descolado enquanto o ajuste do IOPS estiver em andamento, a expansão do IOPS retoma e se conclui somente após o volume ser recolocado.
  • Ao excluir uma instância, os volumes marcados para exclusão automática não são excluídos enquanto o ajuste de IOPS estiver em andamento.

Limitações relacionadas aos perfis de volume

  • Para um volume que foi criado com um perfil da família em camadas, selecione um perfil diferente para o tamanho do volume para aumentar ou diminuir o IOPS. Se o tamanho do volume exceder o limite máximo do novo perfil em camadas, não será possível alterar o perfil.
  • Um perfil de volume personalizado pode se expandir até o valor mais alto permitido pela banda personalizada. Não é possível alternar entre faixas personalizadas a menos que você aumente o volume e passe para uma faixa superior.
  • O valor personalizado de IOPS pode ser ajustado várias vezes até que o limite máximo ou mínimo seja atingido.
  • O IOPS máximo para um volume com o perfil sdp é de 64.000. Para obter mais de 48.000 IOPS, o volume deve ser anexado a uma instância de servidor virtual com um perfil de instância de terceira geração.
  • O máximo de IOPS para um volume com um perfil dentro das famílias de perfis de volume nivelado ou personalizado é 48.000 IOPS.

Ajuste o IOPS no console

Siga estas etapas para ajustar as IOPS selecionando uma nova camada de IOPS ou faixa de IOPS customizadas:

  1. Acesse a lista de volumes Block Storage for VPC. No IBM Cloud console, clique no ícone Navigation menu menu icon > Infrastructure VPC icon > Storage > Block Storage volumes. Por padrão, os volumes do Block Storage for VPC são exibidos para todos os grupos de recursos da sua região.

  2. Na lista de todos os volumes do Block Storage for VPC, clique no nome do volume para visualizar os detalhes do mesmo.

    O volume que você seleciona deve ser conectado a uma instância de servidor virtual. Na lista de volumes, seu tipo de anexo é dados.

    Como alternativa, acesse a página de detalhes da instância do servidor virtual e selecione o volume de dados que você deseja ajustar na lista de volumes anexados.

  3. Na página de detalhes do volume, localize “ Perfil ” e clique em “ Ícone de edição Ícone de edição ” ou use o menu “ AçõesÍcone de ações e selecione “ Editar perfil de IOPS ”. Os volumes devem ser conectados a uma instância de servidor virtual para essas ações.

  4. No painel lateral, ajuste as IOPS como a seguir:

    • Para o perfil de desempenho definido, você pode especificar o desempenho do volume no intervalo de 100 a 64.000 IOPS sem restrições baseadas em capacidade.
    • Para um nível de IOPS, selecione um nível diferente no menu. Por exemplo, você pode ter um perfil de uso geral de 3 IOPS/GB que está aumentando para um perfil de 5 IOPS/GB.
    • Para IOPS customizadas, o valor atual de IOPS e tamanho do volume são mostrados. Insira um novo valor de IOPS no intervalo especificado para aquela faixa customizada.
  5. Revise o resumo de pedido mensal estimado para sua geografia e a nova precificação.

  6. Se você estiver satisfeito, clique em Salvar e continuar.

Sua nova alocação de IOPS será efetivada quando você reiniciar a instância.

Ajustar o IOPS pela CLI

Antes de Iniciar

Para usar a CLI, deve-se instalar a CLI da IBM Cloud e o plug-in da CLI da VPC. Para obter mais informações, consulte os Pré-requisitos da CLI.

  1. Efetue login no IBM Cloud.
    ibmcloud login --sso -a cloud.ibm.com
    
    Esse comando retorna uma URL e solicita uma senha. Acesse essa URL em seu navegador e efetue login. Se bem-sucedido, você receberá uma senha descartável. Copie essa senha e cole-a como uma resposta no prompt. Após a autenticação bem-sucedida, você é solicitado a escolher sua conta.. Se você tiver acesso a várias contas, selecione a conta com a qual deseja fazer login. Responda a quaisquer prompts restantes para concluir o login.

Ajustar IOPS para um perfil customizado

Na CLI, use o comando ibmcloud is volume-update com a opção --iops para indicar o novo valor de IOPS para um perfil personalizado. O IOPS que você escolher deve estar dentro do intervalo para o tamanho do volume. Para obter mais informações, consulte o perfil de volume personalizado.

ibmcloud is volume-update VOLUME_ID --iops IOPS

Este exemplo mostra um aumento de 100 IOPS para 3.000 IOPS para um volume de 100 GB com base em um perfil customizado de 100 a 499. O intervalo de IOPS para essa faixa customizada é de 100 a 6.000 IOPS.

ibmcloud is volume-update 933c8781-f7f5-4a8f-8a2d-3bfc711788ee --iops 3000
Updating volume 933c8781-f7f5-4a8f-8a2d-3bfc711788ee under account Test Account as user test.user@ibm.com...
ID                                      0738-933c8781-f7f5-4a8f-8a2d-3bfc711788ee
Name                                    demo-volume-update
Capacity                                100
IOPS                                    3000
Profile                                 custom
Encryption Key                          -
Encryption                              provider managed
Status                                  available
Created                                 2021-08-23 10:09:28
Resource Group                          Default(c16d1edde3fd4a71a0130aed371405a0)
Zone                                    us-south-2
Resource Group                          Default(c16d1edde3fd4a71a0130aed371405a0)
Volume Attachment Instance Reference    Vdisk Name    Vdisk ID                                    Vdisk Type   Auto Delete
                                        Vdisk-data1   0738-fd146b1f-e1bb-4eab-ba78-3109e6bc3a2d   data         true
    									Instance Name   Instance ID
       									vsi-test1       0738-8b56da93-7990-4ccf-9dc5-5aee6a5f08f9

Você pode usar o mesmo comando para ajustar o IOPS de um volume que foi criado com um perfil sdp. O novo valor de IOPS pode estar entre 100 e 64.000.

Ajustar IOPS especificando um perfil de camada de IOPS diferente

Na CLI, use o comando volume-update com o parâmetro --profile e indique o nome ou href do perfil da camada IOPS.

ibmcloud is volume-update VOLUME_ID --profile VOLUME_PROFILE_NAME

Este exemplo altera um perfil de 3 IOPS/GB para um perfil de 5 IOPS/GB. Nesse caso, o volume não pode ultrapassar 9.600 GB para mover para o perfil mais alto.

ibmcloud is volume-update demo-volume-update --profile 5iops-tier
Updating volume demo-volume-update under account Test Account as user test.user@ibm.com...
ID                                     r014-dee9736d-08ee-4992-ba8d-3b64a4f0baac
Name                                   demo-volume-update
CRN                                    crn:v1:bluemix:public:is:us-east-1:a/a1234567::volume:r014-dee9736d-08ee-4992-ba8d-3b64a4f0baac
Status                                 available
Attachment state                       attached
Capacity                               100
IOPS                                   3000
Bandwidth(Mbps)                        393
Profile                                5iops-tier
Encryption key                         -
Encryption                             provider_managed
Resource group                         defaults
Created                                2023-06-29T16:14:59+00:00
Zone                                   us-east-1
Health State                           ok
Volume Attachment Instance Reference   Attachment type   Instance ID                                 Instance name   Auto delete   Attachment ID                               Attachment name
                                       data              0757_11f5db7f-35a1-4678-bcbd-c85204e09507   kj-test-ro      false         0757-4dfc4384-c4b5-497e-bab3-6415f9c4d44b   otp
Active                                 true
Busy                                   false
Tags                                   -

Para obter mais informações sobre as opções de comando disponíveis, consulte ibmcloud is volume-update

Ajustar as IOPS com a API

É possível ajustar as IOPS para volumes de dados existentes chamando a API da Virtual Private Cloud (VPC).

Ajustar IOPS para um volume com o perfil de desempenho Personalizado ou Definido

Faça uma solicitação PATCH /volumes e especifique o parâmetro iops para ajustar o IOPS dentro de uma faixa do perfil de volume personalizado.

Não é possível atualizar o nome do volume e ajustar as IOPS na mesma solicitação PATCH /volumes. Fala duas solicitações de PATCH /volumes.

Este exemplo mostra um aumento de 100 IOPS para 3.000 IOPS para um volume de 100 GB com base em um perfil customizado de 100 a 499. O intervalo de IOPS para essa faixa customizada é de 100 a 6.000 IOPS.

curl -X PATCH \
 "$vpc_api_endpoint/v1/volumes/$volume_id?version=2022-01-11&generation=2" \
 -H "Authorization: Bearer $iam_token" \
 -d '{
      "iops": 3000
    }'

O status do volume exibe “ updating ” enquanto o IOPS está sendo ajustado. As IOPS atuais são mostradas até que você reinicie a instância. Neste exemplo, o IOPS é aumentado de 100 para 3.000 para o perfil de 3 IOPS/GB.

{
	"iops": 100,
	"created_at": "2022-01-11T09:46:43.000Z",
	"crn": "crn:v1:bluemix:public:is:us-south-1:a/<Acc id>::volume:<Volume ID>",
    .
    .
    .
	"status": "updating",
    .
    .
    .
}

Quando a expansão das IOPS for concluída, reinicie a instância. O novo valor é exibido, e o status do volume é “ available ”.

{
	"capacity": 250,
	"created_at": "2022-01-11T09:46:43.000Z",
	"crn": "crn:[...]",
	"encryption": "provider_managed",
    "href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/2d1bb5a8-40a8-447a-acf7-0eadc8aeb054",
    "id": "2d1bb5a8-40a8-447a-acf7-0eadc8aeb054",
	"iops": 3000,
	"name": "my-volume-1",
    "profile": {
        "href": "https://us-south.iaas.cloud.ibm.com/v1/volume/profiles/custom",
		"name": "custom"
	},
    "resource_group": {
        "href": "https://resource-manager.bluemix.net/v1/resource_groups/83daf012-5920-4ba9-9689-cc0d2d2281fb",
        "id": "83daf012-5920-4ba9-9689-cc0d2d2281fb",
		"name": "Default"
	},
	"status": "available",
	"volume_attachments": [{
		"delete_volume_on_instance_delete": true,
		"device": {
			"id": "4cbb38bc-57d5-4121-a796-d5b10cf0810a"
		},
		"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/8f06378c-ed0e-481e-b98c-9a6dfbee1ed5/volume_attachments/4cbb38bc-57d5-4121-a796-d5b10cf0810a",
		"id": "<4cbb38bc-57d5-4121-a796-d5b10cf0810aAttachment ID>",
		"instance": {
			"crn": "crn:[...]",
			"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/8f06378c-ed0e-481e-b98c-9a6dfbee1ed5",
			"id": "8f06378c-ed0e-481e-b98c-9a6dfbee1ed5",
			"name": "my-instance-1"
		},
		"name": "my-volume-attachment-1",
		"type": "data"
	}],
    "zone": {
        "href": "https://us-south.iaas.cloud.ibm.com/v1/regions/us-south/zones/us-south-2",
        "name": "us-south-2"
    }
}

Você pode usar a mesma solicitação de API para ajustar o IOPS de um volume que foi criado com o perfil sdp. O novo valor de IOPS pode estar entre 100 e 64.000. Para obter mais de 48.000 IOPS, o volume deve ser anexado a uma instância de servidor virtual com um perfil de instância de terceira geração.

Ajustar IOPS especificando um perfil de camada de IOPS diferente

Faça uma solicitação PATCH /volumes e especifique o parâmetro profile e indique o nome ou href do perfil da camada IOPS.

Este exemplo altera um perfil de 3 IOPS/GB para um perfil de 5 IOPS/GB. Nesse caso, o volume não pode ultrapassar 9.600 GB para mover para o perfil mais alto.

curl -X PATCH \
 "$vpc_api_endpoint/v1/volumes/$volume_id?version=2022-01-11&generation=2" \
 -H "Authorization: Bearer $iam_token" \
 -d '{
      "profile": "5iops-tier"
    }'

Ajustando IOPS com o Terraform

Ajustar IOPS para um perfil customizado

Para modificar o IOPS de um volume, use o recurso ibm_is_volume.. Quando aplicado, o exemplo a seguir atualiza o IOPS do volume para 24.000

resource "ibm_is_volume" "storage" {
  name    = "demo-volume-update"
  size    = 8000
  iops    = 24000
  zone    = "us-south-2"
}

Ajustar o IOPS para um perfil em camadas

Para modificar o IOPS de um volume criado usando uma camada de desempenho, use o recurso ibm_is_volume e especifique uma camada diferente. Quando aplicado, o exemplo a seguir atualiza o perfil do volume para 5iops-tier

resource "ibm_is_volume" "storage" {
  name    = "demo-volume-update"
  size    = 8000
  profile = "5iops-tier"
  zone    = "us-south-2"
}

Para obter mais informações sobre argumentos e atributos, consulte ibm_is_volume.

Próximas etapas

Crie mais volumes ou gerencie seus volumes existentes do Block Storage for VPC: