O problema que você está enfrentando é que o charme de keystone armazena algumas informações fora do banco de dados de keystone; especificamente nomes de usuários e senhas para serviços são armazenados localmente no disco, de modo que, quando unidades de serviço adicionais relacionadas ao keystone, o serviço de distorção possa distribuir a senha correta para o usuário solicitado ao serviço relacionado.
Você também encontrará problemas se não tiver fornecido configuração de senha de administrador e token de administrador ao implantar o keystone; as unidades de serviço keystone irão gerá-las aleatoriamente se não forem explicitamente configuradas - assim, elas serão alteradas quando você remover e, em seguida, adicionar uma nova unidade de serviço keystone.
O que você obtém é um conjunto de senhas com hash no banco de dados (criado pela primeira unidade de serviço) que não corresponde às senhas geradas no disco na segunda unidade de serviço de keystone.
O ideal seria consertar isso com algum tipo de recurso genérico de armazenamento de objetos em juju (pense em colocar objeto / objeto-get), mas isso não é um recurso suportado.
Todo o armazenamento em disco de senhas e tokens ocorre em / var / lib / keystone; talvez você possa selecioná-los como parte de um backup da própria unidade de serviço keystone; no entanto, você atingirá as corridas quando adicionar a nova unidade de serviço, pois as relações de serviço serão acionadas antes de você poder restaurar esses arquivos.
Como um dos mantenedores de charlatões do OpenStack, vou pensar um pouco mais e ver se conseguimos algo mais elegante.