すべてのコンポーネントをインストールする独自のハードウェアに OpenStack システムをセットアップしました。Web インターフェースを介してネットワークと VM を作成したため、すべてがうまくいっているように見えます。
私は openstack.net SDK を使用してプログラムで処理しようとしています。ユーザー名とパスワードを使用して正常に認証できるようですが、インストールされている他のサービスにアクセスすると、ユーザーが API エンドポイントを使用できないことを示すエラーが発生します。
私たちが使用しているコードは以下のとおりで、エラーが発生する時点で CreateServer 行まで正常に動作します
「ユーザーを認証できず、許可されたサービス エンドポイントを取得できません。」
Uri baseUrl = new Uri("http://mycloudip:5000/v2.0");
CloudIdentity cloudId = new CloudIdentity()
{
Username = userName,
Password = password
};
CloudIdentityProvider cip = new CloudIdentityProvider(cloudId, baseUrl);
UserAccess ua = cip.Authenticate(cloudId);
CloudServersProvider provider = new CloudServersProvider(cloudId);
Metadata metaData = new Metadata(); // Add some metadata just because we can
metaData.Add("Description", "Example 4 - Getting Started");
string serverName = "Example4";
string imageId = "48df4181-040e-4821-8723-d9e4ba908d2f";
string flavorId = "3";
NewServer newServer = provider.CreateServer(serverName, imageId, flavorId, DiskConfiguration.Manual, metaData);
ダッシュボードで同じユーザーとしてログオンしている間、[アクセスとセキュリティ] >> [API エンドポイント] セクションですべてのサービス URL を確認できますが、UserAccess.ServiceCatalog には何も入力されていないようです。
どんな助けや指針も大歓迎です。