我是 OpenStack 的新手,只有几个小时的经验。我想使用 OpenStack.NET 创建一台新机器,这是我想出的代码。
var identityUrl = "http://server:5000/v2.0";
var imageUrl = "http://server:9292";
var username = "username";
var password = "password";
var cloudId = new CloudIdentity() { Username = username, Password = password };
var cloudIdProvider = new CloudIdentityProvider(new Uri(identityUrl));
cloudIdProvider.Authenticate(cloudId);
var cloudServersProvider = new CloudServersProvider(cloudId, cloudIdProvider);
var newServer = cloudServersProvider.CreateServer("cloudServerName", "Windows Server 2012", "m1.medium");
identityUrl
是身份服务
imageUrl
的 url 是图像服务的 url
我可以cloudIdProvider.Authenticate(cloudId);
在线进行身份验证,所以我认为身份服务和用户名/密码是正确的。
当我调试时cloudServersProvider.CreateServer("cloudServerName", "Windows Server 2012", "m1.medium");
,它会抛出No region was provided, the service does not provide a region-independent endpoint, and there is no default region set for the user's account.
我不知道如何修复它的异常。