概要

このページではCLIの初期設定方法から簡単な利用方法などについて説明します。 CLI関連の詳しいコマンドおよび例題を確認したい場合は、CLI helpコマンドを実行してください。

CLIの構造

CLIはWindows環境向けのファイルとLinux環境向けのファイルがあります。2つのファイルの構造はすべて同じであり、環境によって実行方法が少し異なります。

  • Jre7: Ncloud CLIはJavaを利用して開発されており、JRE(Java Runtime Enviroment)が必要です。CLIフォルダにはjre7ファイルが含まれているので、CLIを運用する環境にすでにJREやJDKがインストールされている場合は、この内容をご参考ください。(Java 1.7以上で駆動)
  • lib: CLI関連、jarファイルのあるフォルダ
  • ncloud.*: CLI jarファイルを実行するためのスクリプトファイル(Windows, Linux環境によりファイルの拡張子が異なる)

CLIの起動

それぞれの環境(Windows/Linux)に合わせてダウンロードしたフォルダのパス(cli_window/cli_linux)でncloudコマンドを実行します。次のようなメッセージが出力されれば正常に実行されたといえます。

  • Windows

  • Linux

1.7以上のバージョンのJREあるいはJDKがローカル環境にインストールされている場合は該当のファイルを使っても構いません。

従来のJRE, JDKとの接続(ローカル環境にJRE, JDKがすでにインストールされている場合)

含まれたJREファイルではなく、ローカル環境のJRE, JDKを利用する場合、ncloudスクリプトファイルで次のように./jre7/bin/javajavaに変更します。この作業は、従来のローカル環境にインストールされたJRE, JDKを使う場合に限ります。

  • 修正前

  • 修正後

CLI API認証キーの値の設定

CLIの機能を使うためには、まずAPI認証キーの値を設定しなければなりません。

API認証キーはマイページ > アカウント管理 > 認証キー管理で確認できます。

$ncloud configureコマンドを入力すると、Access Key, Secret Keyが入力されます。

各API認証キーはユーザー環境のホームディレクトリの.ncloudフォルダにconfigureファイルの形で保存されます。API認証キーが正しく入力された場合はコマンドが正常に実行されます。

入力したAPI認証キーが有効でない場合は次のようなメッセージが出力されます。

認証キーの値が正常である場合、zoneリストの出力を実行すると、次のような結果が出力されます。

CLIのヘルプの確認

Ncloud CLI使用の際、ヘルプを確認したい場合はコマンドの最後にhelpを追加して実行します。

次のコマンドはNcloud CLI関連の一般オプションおよびヘルプ、使用可能な最上位のコマンドを並べます。

$ncloud help

次のコマンドはNcloudの上位のコマンドで使用できるサブコマンドを並べます。

$ncloud server help
$ncloud loadbalancer help

ヘルプの構成

getZoneListコマンドを例に挙げて、ヘルプの構成について説明します。

  • API名: コマンド名です。
ゾーン(Zone)リストの照会
  • 説明: APIに関する詳しい説明です。
NAVERクラウドプラットフォームで提供するゾーン(Zone)はDS(Distribution Switch)基準で分けられます。サーバインスタンス(VM)を作成する際、特定したゾーン(Zone)に作成できます。従って、NAVERクラウドプラットフォームで提供するゾーン(Zone)の情報を照会できなければなりません。
  • リクエストパラメータ: API呼び出しの際に使用可能なオプションについて説明します。
パラメータ名 簡単な説明 タイプ 制約 必須
regionNo リージョン番号 String No
  • レスポンスデータタイプ: API呼び出しの際にレスポンスを受信するデータのオブジェクトタイプです。
ZoneList extends CommonResponse
private List zoneList = new ArrayList();
Zone
private String zoneNo;
private String zoneName;
private String zoneDescription;
  • 例示: 実際のAPI呼び出しの際に受信するデータレスポンスの例です。
"getZoneListResponse": {
      "requestId": "9524c84b-f5f2-46db-9e8c-bb70906c4ea1",
      "returnCode": 0,
      "returnMessage": "success",
       "zoneList": [
…]}

CLIコマンドの構造

Ncloud CLIはコマンド行でマルチパート構造を使います。この構造はncloudに対する基本呼び出しで始まり、各コマンドごとに実行する作業に関するサブコマンドがあります。CLIでオプションを追加する際、特定のパラメータをどのような順番で指定しても構いません。

$ncloud <command> <subcommand> [options and parameters]

CLIパラメータおよびオプションの指定

ほとんどのパラメータの値は簡単な文字列または数字です。その他にもMap, Listの形のパラメータを使うこともできます。Listは次のようなコマンドで使用します。Listパラメータは空白( )またはコンマ(,)、追加のパラメータ宣言などを利用して使えます。

$ncloud server getPublicIpInstanceList --publicIpInstanceNoList 573361,571968
$ncloud server getPublicIpInstanceList --publicIpInstanceNoList 573361,571968
$ncloud server getPublicIpInstanceList --publicIpInstanceNoList 573361 --publicIpInstanceNoList 571968

空白文字のない文字列はクォーテーションで結んだり結ばなかったりできます。しかし、Map形式の文字列はクォーテーションで結ばなければなりません。次の例に表示されているようにLinux, macOS, UnixおよびWindows PowerShellではシングルクォーテーション(')またはダブルクォーテーション('')を使用でき、Windowsコマンドプロンプトではダブルクォーテーション('')を使用します。

  • Windows PowerShell, Linux, macOS, Unix

    $ncloud loadbalancer createLoadBalancerInstance --loadBalancerName penguin --loadBalancerRuleList 'protocolTypeCode=HTTP,loadBalancerPort=80,serverPort=80,l7HealthCheckPath=/l7check.html,proxyProtocolUseYn=N'
    
  • Windowsコマンドプロンプト

    $ncloud loadbalancer createLoadBalancerInstance --loadBalancerName penguin --loadBalancerRuleList "protocolTypeCode=HTTP,loadBalancerPort=80,serverPort=80,l7HealthCheckPath=/l7check.html,proxyProtocolUseYn=N"
    

コマンド出力コントロール

Ncloud CLIは2種類の出力形式をサポートします。--outputオプションがない場合は基本のJSONフォーマットで出力されます。

  • JSON(json): 基本
  • XML(xml)

XMLで出力したい場合、次のように実行します。

$ ncloud server getZoneList --output xml

CLI実行シナリオ

CLIを利用して次のような簡単なテストシナリオを作成してみます。

  1. サーバイメージの照会
  2. サーバの作成(initスクリプトを設定してApacheをインストール、駆動し、touchコマンドを利用してl7Check.htmlファイルを作成)
  3. パブリックIPアドレスの作成および割り当て
  4. サーバ作成の確認

  5. サーバイメージCentOS 6.6(64bit)商品コード(productCode) SPSW0LINUX000044

    $ ./ncloud server getServerImageProductList  | grep CentOS 6.6(64bit)' -C 8
    

  6. サーバイメージCentOS 6.6(64bit)で最小の仕様のサーバインスタンスを作成(サーバインスタンス番号573385)

    $ ./ncloud server createServerInstances --serverImageProductCode 'SPSW0LINUX000044'
    --userData 'file:///mnt/c/Users/NAVER/Desktop/cli_linux/userData.sh'
    

    サーバ作成の際に実行するユーザーのファイル(userData.sh)

    #!/bin/sh
    yum install -y httpd
    echo 'Hello World' > /var/www/html/index.html
    chkconfig --level 2345 httpd on
    

  7. サーバにパブリックIPアドレスを作成および割り当て(49.236.145.185)

    $./ncloud server createPublicIpInstance --serverInstanceNo '573385'
    

  8. コンソールで49.236.145.185パブリックIPアドレスに対する80番ポートACG許可設定(Server > ACG)

  9. ブラウザで結果を確認

に対する検索結果は~件です。 ""

    に対する検索結果がありません。 ""

    処理中...