Aqui estão várias etapas simples para você começar a usar http://trystack.org , uma sandbox para http://openstack.org
A missão do OpenStacks é produzir a onipresente plataforma Open Source Cloud Computing que atenderá às necessidades de nuvens públicas e privadas, independentemente do tamanho, por ser simples de implementar e extremamente escalável.
Substituí todos os IDs válidos por * **
Registro
Acesse http://eepurl.com/nGEzj e siga as etapas de registro
Seja aprovado
O processo de aprovação parece ser manual, por isso pode demorar alguns dias. Assim que receber um e-mail de confirmação, faça login em http://arm.trystack.org/nova/
O login bem-sucedido significa que você pode navegar no OpenStack WebUI e também executar chamadas de API.
API | Obter token de autenticação
A primeira etapa no uso de APIs OpenStack é obter um token. O primeiro token que obtemos é uma espécie de token temporário, pois ainda não sabemos nosso tenantId .
curl -k -X 'POST' -v http://arm.trystack.org:5000/v2.0/tokens -d '{"auth":{"passwordCredentials":{"username": "user***", "password":"pass***"}, "tenantId":""}}' -H 'Content-type: application/json'
Observe um tenantId vazio
{
"access": {
"token": {
"expires": "2012-10-31T20:48:27Z",
"id": "token***"
},
"serviceCatalog": {},
"user": {
"username": "user***",
"roles_links": [],
"id": "***",
"roles": [],
"name": "user***"
}
}
}
API | Use o token de autenticação para recuperar tenantId
curl -H "X-Auth-Token:token***" http://arm.trystack.org:5000/v2.0/tenants
{
"tenants_links": [],
"tenants": [
{
"enabled": "true",
"description": "user***",
"name": "user***",
"id": "tenant***"
}
]
}
API | Obtenha um token real
Agora podemos obter um token real, pois conhecemos nosso tenantId
curl -k -X 'POST' -v http://arm.trystack.org:5000/v2.0/tokens -d '{"auth":{"passwordCredentials":{"username": "user***", "password":"pass***"}, "tenantId":"tenant***"}}' -H 'Content-type: application/json'
O JSON resultante conterá uma lista de endpoints, por exemplo:
{
"endpoints": [
{
"adminURL": "http://10.225.0.8:8774/v2/tenant***",
"region": "Calxeda-AUS1",
"internalURL": "http://10.225.0.8:8774/v2/tenant***",
"publicURL": "http://208.123.85.197:8774/v2/tenant***"
}
],
"endpoints_links": [],
"type": "compute",
"name": "nova"
}
bem como um novo token válido:
{
"access": {
"token": {
"expires": "2012-10-31T17: 13: 12Z",
"id": "new_token***",
"tenant": {
"enabled": true,
"id": "tenant***",
"name": "user***",
"description": "user***"
}
}
}
API | Consultando servidores
Agora temos 2 parâmetros importantes para fazer uma consulta de status do servidor:
Um token de autenticação válido
Um URL de endpoint para API Compute
curl -v -H "X-Auth-Token:new_token***" http://208.123.85.197:8774/v2/tenant***/servers
O resultado é um metadado do servidor. Observe que trystack.org fornecerá um servidor Ubuntu padrão para você quando você se registrar.
{
"servers": [
{
"id": "server***",
"links": [
{
"href": "http://208.123.85.197:8774/v2/tenant***/servers/server***",
"rel": "self"
},
{
"href": "http://208.123.85.197:8774/tenant***/servers/server***",
"rel": "bookmark"
}
],
"name": "The best server ever"
}
]
}