2017-07-10 9 views
0

私は、以下のURLを参照して、Javaで新しいオープンスタックインスタンスを起動しようとしていました。Javaで新しいopenstackインスタンスを起動する方法は?

https://help.dreamhost.com/hc/en-us/articles/216456877-How-to-launch-and-delete-OpenStack-instances-using-Java-and-Jclouds

そして、ここに私のcreateInstanceメソッドがどのように見えるかです: -

public void createInstance(String instanceName) { 
    for (String region : regions) { 
     ServerApi serverApi = novaApi.getServerApi(region); 
     System.out.println("server api : " + serverApi.toString()); 
     String imageId = "7d246e9a-dd2a-4342-97f7-32accd0f9c35"; 
     String flavorId = "8041379d-7261-401d-90cf-e2d97184fe94"; 

     /*Launch an instance*/ 
     ServerCreated ser = serverApi.create(instanceName, imageId, flavorId); 

     Server server = serverApi.get(ser.getId()); 
     while (server.getStatus().value().equals("ACTIVE") == false) { 
      try { 
       Thread.sleep(1000); 
      } catch (InterruptedException ex) { 
      } 
      server = serverApi.get(ser.getId()); 
     } 

     System.out.println(ser.getId()); 
    } 
} 

私はなど、

例外を味わいIDをHttpResponseExceptionが、画像IDを取得することができ取得しています: org.jclouds.http.HttpResponseException:コマンド:POST http://192.168.1.224:8774/v2/e02b6387fa5a4b619bc2ba554661ea99/servers HTTP/1.1が応答に失敗しました:HTTP/1.1 400 Bad Request;内容:[{"badRequest":{"message": "複数のネットワークが見つかりました。ネットワークIDを使用してより具体的にしてください。"、 "code":400}}

答えて

1

フレーバーを指定する必要があります、イメージとネットワークを使用してインスタンスを起動する方法について説明します。私はあなたが味とイメージを指定したのを見ます。 ただし、使用するネットワークも指定する必要があります。

jcloud_create_instance_with_network

+0

下記のリンクで答えを確認してくださいそれがうまく働いていた: - CreateServerOptions serverOptions = CreateServerOptions.Builder .networks( "80cbba74-acf7-44e6-9700-4265fe6b76a8"); ServerCreated allInOnInstanceCreated = serverApi.create(instanceName、imageId、flavorId、serverOptions); – Ankit4mjis

+0

ok。答えをupvote /受け入れてください – Tejaswi

関連する問題