A ajuda nova é um pouco confusa, já que freqüentemente usa a palavra "servidor", onde "instância" é realmente significada, e "host", onde "nó de computação" é usado. A terminologia do OpenStack mudou ao longo de sua história, e alguns dos termos usados aqui são os antigos termos históricos.
Então eu experimentei um pouco para descobrir o que esses comandos realmente fazem. O que eu descobri é:
Comandos que operam em nós de computação com falha:
-
nova evacuate
reinicia uma única instância que estava sendo executada em um nó de cálculo que ficou inativo. Por padrão, o OpenStack escolhe quais nós de computação receberão a instância, mas um nó de computação pode ser selecionado com--target-host
. -
nova host-evacuate
reinicia todas as instâncias em execução em um nó de cálculo que ficou inativo. Por padrão, o OpenStack escolhe quais nós de computação receberão as instâncias, mas um nó de computação pode ser selecionado com--target-host
.Em ambos os casos, a evacuação falha se o nó de cálculo estiver realmente ativo.
Comandos que operam em nós de computação em execução:
-
nova host-evacuate-live
tenta viver migrar todas as instâncias em execução em um nó de cálculo para outros nós de cálculo. Por padrão, o OpenStack escolhe quais nós de computação receberão as instâncias, mas um nó de computação pode ser selecionado com--target-host
. -
nova host-servers-migrate
migra as instâncias interrompidas de um nó de cálculo. O OpenStack escolhe quais nós de computação receberão as instâncias. -
nova live-migration
live migra uma única instância em um nó de computação. Por padrão, o OpenStack escolhe quais nós de computação receberão as instâncias, mas um nó de computação pode ser selecionado com--target-host
. -
nova migrate
migra uma instância interrompida de um nó de cálculo. O OpenStack escolhe qual nó de computação receberá a instância.
A documentação do OpenStack da Red Hat tem um pouco melhor explicação da evacuação e a diferença entre esses comandos que a documentação do upstream.