
Estou trabalhando em um charme personalizado que gostaria de implantar em minha configuração de paisagem. Eu tenho uma nuvem funcional instalada e funcionando via MAAS e openstack-install (pode iniciar instâncias, etc.). Para obter acesso à configuração juju usada pelo Landscape, fiz o seguinte em meu nó MAAS:
*exportar JUJU_HOME=~/.cloud-install/juju
status juju
juju ssh paisagem-server/0 sudo 'JUJU_HOME=/var/lib/landscape/juju-homes/sudo ls -rt /var/lib/landscape/juju-homes/ | cauda -1 sudo -u paisagem -E bash'
status juju*
Agora posso usar SSH no nó de paisagem. No entanto, depois de fazer o SSH, quero fazer scp nos arquivos do meu charme personalizado para poder implantar localmente, mas recebo um erro de permissão negada.
Não consigo nem criar um novo diretório como usuário normal. paisagem@juju-machine-0-lxc-1:~$ mkdir ola mkdir: não é possível criar o diretório 'ola': Permissão negada
Sudo'ing pede a senha paisagem, que eu não tenho. Como faço para contornar isso?
Responder1
Você pode usar o ssh em Landscape-Server/0 sem a longa linha Sudo, que o levará a esse nó como "ubuntu", que pode sudo para qualquer outro usuário sem uma senha, incluindo Landscape.
Coloque os arquivos onde desejar em Landscape-Server/0, certifique-se de que o usuário Landscape possa acessá-los, então torne-se o usuário Landscape e defina JUJU_HOME. Então você pode colocá-los em qualquer nó no ambiente interno da nuvem.
O usuário paisagem não possui um shell por padrão, é por isso que aquela longa linha sudo que você encontrou executa o comando bash no final.
Responder2
Se você estiver usando conjure-up, usei isso:
$:juju ssh landscape-server/0 sudo 'JUJU_DATA=/var/lib/landscape/juju-homes/`sudo ls -rt /var/lib/landscape/juju-homes/ | tail -1` sudo -u root -E bash'
Em seguida, mude para o controlador não padrão, aqui é chamado de controlador:
$: juju switch controller
$: juju status