|
Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official. |
Limpeza de Instâncias Órfãs
SUSE Storage pode identificar e limpar instâncias órfãs em cada nó.
Instância de Runtime Órfã
Quando uma queda de rede afeta um nó SUSE Storage, pode deixar instâncias de runtime de engine ou réplica que não são mais rastreadas pelo sistema SUSE Storage. Os Recursos Personalizados (CRs) correspondentes de engine e réplica podem ser removidos ou reprogramados para outro nó durante a queda. Quando o nó se recupera, o sistema SUSE Storage não rastreia mais essas instâncias de runtime. Essas instâncias, como os processos de engine e réplica para volumes v1, são chamadas de instâncias órfãs. Instâncias órfãs continuam a consumir recursos do nó, como CPU e memória.
SUSE Storage suporta a detecção e limpeza de instâncias órfãs. Ele identifica essas instâncias e cria recursos orphan que as descrevem. Por padrão, SUSE Storage não exclui automaticamente recursos orphan. Os usuários podem acionar a exclusão de instâncias órfãs manualmente ou configurar SUSE Storage para excluí-las automaticamente.
Quando a exclusão automática de órfãos está habilitada, SUSE Storage exclui automaticamente Recursos Personalizados (CRs) órfãos e seus diretórios associados após o atraso definido pela configuração orphan-resource-auto-deletion-grace-period. Se um usuário excluir manualmente um CR órfão, a exclusão ocorre imediatamente e não respeita este período extra.
Exemplo
O seguinte exemplo demonstra como gerenciar instâncias órfãs usando kubectl.
Gerenciar Instâncias Órfãs via kubectl
-
Identifique os nós onde os processos das instâncias órfãs estão em execução.
-
Instância de réplica órfã no Nó
worker1Name: instance-manager-8ff396d6d3744979b32abafc6346781c Namespace: longhorn-system Kind: InstanceManager ... Status: Instance Replicas: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-r-05660b73: # This instance might be an orphan Spec: Data Engine: v1 Name: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-r-05660b73 Status: Conditions: <nil> Endpoint: Error Msg: Listen: Port End: 10020 Port Start: 10011 Resource Version: 0 State: running Target Port End: 0 Target Port Start:0 Type: replica ... -
Instância de engine órfã no Nó
worker2Name: instance-manager-b87f10b867cec1dca2b814f5e78bcc90 Namespace: longhorn-system Kind: InstanceManager ... Status: Instance Engines: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-e-0: # This instance might be an orphan Spec: Data Engine: v1 Name: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-e-0 Status: Conditions: Filesystem Read Only: false Endpoint: Error Msg: Listen: Port End: 10020 Port Start: 10020 Resource Version: 0 State: running Target Port End: 10020 Target Port Start: 10020 Type: engine ...
-
-
SUSE Storage detecta as instâncias órfãs e cria recursos
orphanque as descrevem.NAME TYPE NODE orphan-1807009489e50534c35c350e22680449c97deca4e5d3b72f4591976145f8bc41 engine-instance worker2 orphan-a91aa42ab5eda6b8b9fe1116d5b5f5673e5108d89be3db6fd18a275913463eef replica-instance worker1 -
Você pode visualizar a lista de
orphanrecursos criados pelo sistema SUSE Storage executandokubectl -n longhorn-system get orphan.# kubectl -n longhorn-system get orphan -
Obtenha as informações detalhadas de uma das instâncias de réplica órfãs em
spec.parametersporkubectl -n longhorn-system get orphan <name>.apiVersion: longhorn.io/v1beta2 kind: Orphan metadata: creationTimestamp: "2025-05-02T06:07:32Z" finalizers: - longhorn.io generation: 1 labels: longhorn.io/component: orphan longhorn.io/managed-by: longhorn-manager longhorn.io/orphan-type: replica-instance longhornnode: worker1 longhornreplica: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-r-05660b73 # ... (representing other omitted metadata fields) spec: dataEngine: v1 nodeID: worker1 orphanType: replica-instance parameters: InstanceManager: instance-manager-8ff396d6d3744979b32abafc6346781c InstanceName: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-r-05660b73 status: conditions: - lastProbeTime: "" lastTransitionTime: "2025-05-02T06:06:39Z" message: "" reason: running status: "True" type: InstanceExist - lastProbeTime: "" lastTransitionTime: "2025-05-02T06:06:39Z" message: "" reason: "" status: "False" type: Error ownerID: worker1 -
Obtenha as informações detalhadas de uma das instâncias de engine órfãs em
spec.parametersporkubectl -n longhorn-system get orphan <name>.apiVersion: longhorn.io/v1beta2 kind: Orphan metadata: creationTimestamp: "2025-05-02T06:47:25Z" finalizers: - longhorn.io generation: 1 labels: longhorn.io/component: orphan longhorn.io/managed-by: longhorn-manager longhorn.io/orphan-type: engine-instance longhornengine: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-e-0 longhornnode: worker2 # ... (representing other omitted metadata fields) spec: dataEngine: v1 nodeID: worker2 orphanType: engine-instance parameters: InstanceManager: instance-manager-b87f10b867cec1dca2b814f5e78bcc90 InstanceName: pvc-569e44c0-b352-4aca-bf14-2cf7a6cfe86f-e-0 status: conditions: - lastProbeTime: "" lastTransitionTime: "2025-05-02T06:47:25Z" message: "" reason: running status: "True" type: InstanceExist - lastProbeTime: "" lastTransitionTime: "2025-05-02T06:47:25Z" message: "" reason: "" status: "False" type: Error ownerID: worker2 -
Você pode excluir um recurso
orphanexecutandokubectl -n longhorn-system delete orphan <name>. A instância órfã correspondente também será removida.# kubectl -n longhorn-system delete orphan orphan-a91aa42ab5eda6b8b9fe1116d5b5f5673e5108d89be3db6fd18a275913463eef # kubectl -n longhorn-system get orphan -l "longhorn.io/orphan-type in (engine-instance,replica-instance)" NAME TYPE NODE orphan-1807009489e50534c35c350e22680449c97deca4e5d3b72f4591976145f8bc41 engine-instance worker2A instância órfã é excluída.
# kubectl -n longhorn-system describe instancemanager -l "longhorn.io/node=worker1" Name: instance-manager-8ff396d6d3744979b32abafc6346781c Namespace: longhorn-system Kind: InstanceManager ... Status: Instance Replicas: ... -
Por padrão, SUSE Storage não exclui automaticamente instâncias órfãs. Você pode habilitar a exclusão automática configurando a opção
orphan-resource-auto-deletion.# kubectl -n longhorn-system edit settings.longhorn.io orphan-resource-auto-deletionEm seguida, adicione
instanceà lista incluindo-o como um dos itens separados por ponto e vírgula.NAME VALUE APPLIED AGE orphan-resource-auto-deletion instance true 45h -
Após habilitar a exclusão automática e esperar um tempo, os recursos e processos
orphansão excluídos automaticamente.# kubectl -n longhorn-system get orphan -l "longhorn.io/orphan-type in (engine-instance,replica-instance)" No resources found in longhorn-system namespace.As instâncias órfãs são excluídas do gerenciador de instâncias.
# kubectl -n longhorn-system describe instancemanager -l "longhorn.io/node=worker1" Name: instance-manager-8ff396d6d3744979b32abafc6346781c Namespace: longhorn-system Kind: InstanceManager ... Status: Instance Replicas: ... # kubectl -n longhorn-system describe instancemanager -l "longhorn.io/node=worker2" Name: instance-manager-b87f10b867cec1dca2b814f5e78bcc90 Namespace: longhorn-system Kind: InstanceManager ... Status: Instance Engines: ...Além disso, você pode excluir todas as instâncias órfãs no nó especificado executando:
# kubectl -n longhorn-system delete orphan -l "longhorn.io/orphan-type in (engine-instance,replica-instance),longhornnode=<node name>"
Gerenciar Instâncias Órfãs via SUSE Storage UI
-
Na barra de navegação superior, selecione Avançado > Recursos Órfãos > Instâncias.
-
Revise a lista de instâncias órfãs, que exibe informações relevantes das instâncias.
-
Para excluir uma instância órfã específica, selecione Operação > Excluir para essa instância.
Por padrão, SUSE Storage não exclui automaticamente instâncias órfãs apenas por esta operação manual na UI. Para habilitar a exclusão automática de instâncias órfãs, ou para configurar opções relacionadas a dados órfãos gerais, navegue até Configurações > Órfãos e configure as opções relevantes. (Consulte a seção kubectl para detalhes sobre a configuração específica orphan-resource-auto-deletion para CRs de instância, se estiver gerenciando pelas configurações de backend).
Exceçőes
SUSE Storage não cria um recurso orphan nas seguintes situações:
-
A instância de engine ou réplica órfã é reprogramada de volta para seu nó original e é corretamente rastreada novamente.
-
A instância de engine ou réplica está em um estado transitório, como migrando, iniciando ou parando.
-
O nó onde a instância estava em execução é removido do cluster Kubernetes.