Как узнать информацию о сервере Rackspace Cloud (идентификатор, IP и т. Д.) Внутри себя? - PullRequest
1 голос
/ 16 января 2012

Как найти информацию о сервере Rackspace Cloud внутри самого сервера?

Amazon AWS имеет его, и его документально подтверждено здесь: http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html?r=7479

Ответы [ 2 ]

0 голосов
/ 30 апреля 2014

Из кода вашего приложения вы можете найти собственный внешний IP-адрес локального сервера, используя метод, подобный описанному здесь (для C #): https://stackoverflow.com/a/1069113/12484

Затем, получив IP-адрес, вы можете использовать Rackspace Cloud API для запроса списка всех активных серверов и получения информации о сервере с соответствующим IP-адресом. Пример кода (C # с использованием OpenStack.net SDK ):

CloudIdentity cloudIdentity = new CloudIdentity { APIKey = API_KEY, Username = USERNAME };
CloudServersProvider provider = new CloudServersProvider(cloudIdentity);

IEnumerable<Server> servers = provider.ListServersWithDetails(region: REGION);
foreach (Server server in servers)
{
    if (server.AccessIPv4 == ipAddress)
    {
        Console.Out.WriteLine("Server ID:" + server.Id);
        Console.Out.WriteLine("  Flavor: " + server.Flavor.Name);
        Console.Out.WriteLine("  Image: " + server.Image.Name);
        Console.Out.WriteLine("  PowerState: " + server.PowerState.Name);
        Console.Out.WriteLine("  Status: " + server.Status.Name);
        Console.Out.WriteLine("  UserId: " + server.UserId); 
        break;       
    }
}

USERNAME, API_KEY и REGION в вышеприведенном коде должны быть заменены фактическими значениями для вашей учетной записи Rackspace Cloud.

0 голосов
/ 18 января 2012

Вы можете использовать API Rackspace Cloud Server: http://www.rackspace.com/cloud/cloud_hosting_products/servers/api/

Здесь есть реализация Python: http://packages.python.org/python-cloudservers/

или инструмент командной строки тоже очень полезен: http://jsquaredconsulting.com/blog/2010/11/rscurl-a-rackspace-cloud-server-command-line-tool/

Это самая практичная ссылка / \

...