Last active
          December 7, 2019 15:52 
        
      - 
      
 - 
        
Save ysaotome/f5a2b0e5babda027d990 to your computer and use it in GitHub Desktop.  
    ニフティクラウドのCLIツール( http://cloud.nifty.com/api/cli/ )を自動セットアップするスクリプトと使用例
  
        
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | #!/bin/bash | |
| # setup NIFTY Cloud API Tools | |
| ( | |
| USER=${USER} | |
| HOME=${HOME} | |
| ARC=$(/bin/uname -m) | |
| ## OpenJDKセットアップ | |
| /usr/bin/yum -y install java-1.6.0-openjdk.${ARC} | |
| ## NIFTY Cloud API Tools の設定 | |
| /usr/bin/wget -P ${HOME} 'http://cloud.nifty.com/api/sdk/NIFTY_Cloud_api-tools.zip' | |
| /usr/bin/unzip -d ${HOME} ${HOME}/NIFTY_Cloud_api-tools.zip | |
| /bin/rm -rf ${HOME}/NIFTY_Cloud_api-tools.zip | |
| /bin/rm -rf ${HOME}/NIFTY_Cloud_api-tools/bin/*.cmd | |
| /bin/chown -R ${USER}:${USER} ${HOME}/NIFTY_Cloud_api-tools/ | |
| /bin/chmod 755 ${HOME}/NIFTY_Cloud_api-tools/bin/* | |
| /bin/cat << _NCSSCONF_ >> ${HOME}/.bashrc | |
| ## NIFTY Cloud API Settings | |
| export NIFTY_CLOUD_HOME=${HOME}/NIFTY_Cloud_api-tools/ | |
| export PATH=\${PATH}:\${NIFTY_CLOUD_HOME}/bin | |
| export JAVA_HOME=/usr/lib/jvm/jre | |
| export JAVA_OPTS=-Duser.language=ja | |
| _NCSSCONF_ | |
| source ${HOME}/.bashrc | |
| ) 2>&1 | /usr/bin/tee /var/log/niftycloud-api-tools-installer.log | 
今のバージョンだと .bashrc に下記を追記する必要がありました。
export NIFTY_CLOUD_URL=https://west-1.cp.cloud.nifty.com/api/これをしないと org.apache.http.client.ClientProtocolException: URI does not specify a valid host name エラーが発生します。
また、URL は http://cloud.nifty.com/api/endpoint.htm を参考に、使っているリージョンと同じものを指定する必要があります。
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment
  
            
コマンド利用例
--headersリージョンの一覧を取得する
ゾーンの一覧を取得する
ファイアウォールグループの設定情報を取得したい
全ての情報を取得
ファイアウォールグループ名「SSHxWEB」配下のルールを取得
ファイアウォールグループを追加したい
ゾーン「east-13」へ、ファイアウォールグループ名「SSHxWEB」を追加する
ファイアウォールルールを追加したい
※ルールを追加する前に事前にグループを作成しておく必要があります
イメージの一覧が取得したい
全てのイメージを取得する
自分が作成したイメージ(プライベート(バックアップ))一覧を取得する
イメージを指定してサーバを作成する
※イメージを指定するために事前にサーバ情報内の「ImageID」を取得しておく必要があります。
※SSHキーを指定するために事前に設定するSSHキー名を取得しておく必要があります。
プライベートイメージ「Ubuntu1310x8664」からサーバを作成する(コピーする)
「Ubuntu1310x8664」の 「ImageID」を取得
* 以下の実行結果からイメージ「Ubuntu1310x8664」の「ImageID」は「16378」である事が判る
SSHキーの一覧を取得する
「ImageID」が「16378」のプライベートイメージ「Ubuntu1310x8664 」をコピーする
--instance-id作成するサーバー名--group所属するファイアウォールグループ--key設定するSSHキー名--instance-type作成するサーバタイプmini | small | small2 | small4 | small8 | medium | medium4 | medium8 | medium16 | large | large8 | large16 | large24 | large32 | extra-large16 | extra-large24 | extra-large32 | double-large32 | double-large48 | double-large64--accounting-type課金タイプ1 (月額課金) | 2 (従量課金)--availability-zone作成するゾーン名--disable-api-terminationAPIからのサーバー削除の可否true (削除不可) | false (削除可)サーバの作成状況を確認