Eu tenho uma configuração de teste em execução com um servidor MaaS, um servidor JuJu e vários nós
no cluster de MaaS.
Depois que eu reinstalei meu servidor do MaaS (e subsequentemente o servidor JuJu-Core) com o Saucy
em vez de Precise, certas coisas definitivamente melhoraram enquanto, pelo menos uma outra coisa
parece estar quebrado agora. O código%. Eu sempre recebo um erro:
httplib2.socks.HTTPError, 403, Forbidden.
Eu também criei um novo MaaS maas-cli
Token, mas sem sucesso. Eu tenho algumas máquinas
que têm um número diferente de discos no cluster. Mas eles têm o mesmo número de CPUs
e a mesma quantidade de memória. De acordo com este artigo sobre as restrições do charme Juju .
Também posso usar tags como restrições no processo de implantação para distinguir entre as
nós. Como aparentemente não consigo marcar os nós na interface da Web do MaaS, eu queria
use o Key/OAuth
. No preciso funcionou bem, eu usei para liberar nós etc.
Mas no Saucy eu nem sequer consegui fazer login. Eu sempre recebo:
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/lib/python2.7/dist-packages/maascli/__main__.py", line 20, in <module>
main()
File "/usr/lib/python2.7/dist-packages/maascli/__init__.py", line 46, in main
options.execute(options)
File "/usr/lib/python2.7/dist-packages/maascli/cli.py", line 70, in __call__
description = fetch_api_description(options.url, options.insecure)
File "/usr/lib/python2.7/dist-packages/maascli/api.py", line 71, in fetch_api_description
ascii_url(url_describe), "GET", insecure=insecure)
File "/usr/lib/python2.7/dist-packages/maascli/api.py", line 60, in http_request
return http.request(url, method, body=body, headers=headers)
File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1569, in request
(response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1316, in _request
(response, content) = self._conn_request(conn, request_uri, method, body, headers)
File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1251, in _conn_request
conn.connect()
File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 900, in connect
self.sock.connect((self.host, self.port) + sa[2:])
File "/usr/lib/python2.7/dist-packages/httplib2/socks.py", line 424, in connect
self.__negotiatehttp(destpair[0], destpair[1])
File "/usr/lib/python2.7/dist-packages/httplib2/socks.py", line 390, in __negotiatehttp
raise HTTPError((statuscode, statusline[2]))
httplib2.socks.HTTPError: (403, 'Forbidden')
O maas.log não possui nada a respeito desse problema. Ele contém mensagens de erro sobre
OAuth e que uma solicitação não foi autorizada. Mas essa é uma mensagem "antiga". Nada novo
as mensagens parecem estar escritas nesse log.
ERROR 2013-11-22 09:35:37,592 maasserver Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 115, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.7/dist-packages/django/views/decorators/vary.py", line 19, in inner_func
response = func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/piston/resource.py", line 128, in __call__
actor, anonymous = self.authenticate(request, rm)
File "/usr/lib/python2.7/dist-packages/piston/resource.py", line 103, in authenticate
if not authenticator.is_authenticated(request):
File "/usr/lib/python2.7/dist-packages/maasserver/api_auth.py", line 57, in is_authenticated
raise OAuthUnauthorized(error)
OAuthUnauthorized
Como posso resolver isso?