ご利用の前に

Q. NAVERクラウドプラットフォームのInit-Scriptとは、何ですか?

  • Init-Scriptとは、ユーザーが予め作成しておいたScriptをサーバの構築の際に自動的に実行させる機能として、サーバの初期環境の構築の際に活用することができます。

Q. Init-Scriptの作成方法及び利用方法は何ですか?

  • コンソールに接続した後、次の手順に沿って簡単にInit-Scriptを作成及び利用することができます。

step

  1. コンソールへの接続:NAVERクラウドプラットフォームから提供するコンソールに接続します。
  2. Scriptの作成:作成しようとするScript名、OSの選択、Scriptの作成を行った後、立ち上げます。
  3. 修正及び削除:作成したScriptを修正及び削除することができます。
  4. サーバの構築の際にInit-Scriptの利用:作成したScriptは、サーバの構築の際に適用して実行させます。但し、サーバイメージや類似サーバでサーバを構築する場合には、Init-Scriptを利用することができません。

Q. Init-Scriptの主な特徴は、何ですか?

  1. ユーザー定義のscriptを管理コンソールで簡単に作成及び管理します。
  2. サーバの構築の際にscriptを簡単に選択及び適用することができます。
  3. 管理コンソールだけでなく、RESTful APIとしても提供され、開発時に様々な場面で活用することができます。
  4. 様々なscript言語に対応します。
    • Linux系列:Python、Perl、Shell script
    • Windows系列:Visual Basic script
  5. サーバを初めて起動する際、パッケージのインストール及び環境の設定において使うことができるため便利です。

Q. どんな時にInit-Scriptを使いますか?

  • 同じ用途のサーバを複数台一括で構築するとき:ユーザースクリプトを作成した後、複数台のサーバの構築の際に当該scriptを一括適用します。
  • 同じ環境のサーバを周期的に構築するとき:ユーザスクリプトを作成して保存した後、サーバの構築の際に当該scriptを選択して適用します。
  • 用途別にサーバの初期環境の管理が必要なとき:用途別に様々なscriptを作成して保存した後、サーバーの構築の際に必要に応じて選択して使います。

Scriptを作成する

Step 1. コンソールに接続

コンソールに接続します。

① 初期には作成されたScriptがないことを確認します。上段メニューから+Scriptを作成するをクリックしてScriptを作成することができます。

Step 2. Scriptを作成

新規のScriptを作成します。

サーバの構築の際に自動的に実行されるScriptをユーザーが直接作成することができます。
ユーザースクリプトによるインフラエラーの発生時に、NAVERクラウドプラットフォームではサポートいたしません。

① 作成するScript名を入力します。

② OSタイプを選択します。OS別に使えるscriptのタイプが異なります。

③ Scriptを作成します。

  • Linuxは、Python/Perl/Shellなどのscriptを使うことができます。但し、冒頭に#!/bin/bash、#!/usr/bin/env python、#!/bin/perlなどのような形式で実行しようとするscriptルートを指定して実行する必要があります。
  • Windowは、Visual Basic scriptのみを作成することができます。
  • scriptの内容は、英語で作成する必要があり、ハングル語や注釈などは含まれません。
  • scriptの内容にセキュリティの侵害になり得る内容は含めてはならず、それにより発生する問題に対する責めに帰すべき事由になりますので、ご注意ください。

④ メモ形式で説明を入力しておきます。(選択)

Scriptを作成するをクリックします。

Scriptを管理する

修正

作成したScriptを修正することができます。

① リストから修正するScriptを選択します。

修正するをクリックします。

③ Script名を除くOSタイプ及びScriptを修正することができます。その後、+Scriptを修正するをクリックします。

削除

作成したScriptを削除することができます。

① リストから削除するScriptを選択します。

削除するをクリックします。削除すると、リストからも削除されます。

サーバ構築の際にScriptを利用する

サーバ構築の際、予め作成しておいたScriptを選択して適用することができます。

① サーバのサーバを構築するをクリックします。

② サーバの構築プロセスのうち、 サーバ構築ガイド > Step 2. サーバの設定段階を確認します。

③ ‘Scriptを選択する’項目からInit-Scriptメニューで作成したScriptリストが表示されます。適用するScriptを選択し、‘サーバの構築’が完了すると、指定したscriptが実行されます。サーバが運用中の状態でscriptのインストールが実行中の場合もあります。

  • インストール完了を確認するためには、進行状況に対するロギングが必要です。
    • Linuxは、/var/log/ncloud-init.log
    • Windowsは、C:\Program Files(X86)\NBP\ncloud-init\logsをご参考にしてください。

Script Sample

Linux系列の場合

Apache HTTP Serverのインストール

Perl script sample
#!/usr/bin/perl –w

$result = `yum update-to httpd`;

if ($result =~ /but not installed/) {
  print "http available\n";
  if ($result =~ /httpd available/) {
    print "http not installed\n";
    $iresult = `yum -y install httpd`;
    if ($iresult =~ /Complete/) {
      print "http installed\n";
      open (WP, ">/var/www/html/index.html") || die "cannot open index.html\n";
      print WP `ifconfig eth0 | grep "inet addr" | awk \'{print \$2}\'`;
      close(WP);
      `chkconfig --level 345 httpd on`;
      `service httpd restart`;
    }
  }
  else {
    print "http NOT available\n";
  }
}
else {
  print "http already installed\n";
}
Shell script sample
#!/bin/sh

result=`yum update-to httpd`

if [[ $result =~ *"but not installed"* ]]
then
   if [[ $result =~ *"httpd available"* ]]
   then
      echo 'http available'
      echo 'http not installed'

      $iresult=`yum -y install httpd`

      if [[ $iresult =~ *"Complete"* ]]
      then
         echo 'http installed'
         echo 'test' >> /var/www/html/index.html

         /sbin/chkconfig --level 345 httpd on
         /sbin/service httpd restart
      fi
   else
      echo 'http Not available'
   fi
else
   echo 'http already installed'
fi

Windows系列の場合

Java JDKのインストール

Visual Basic script sample
LOG_DIRECTORY = "C:\Windows\Temp"
DEFAULT_LOG_FILE_PATH = LOG_DIRECTORY + "\init-install.log"

Set ws = CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")

' logging (file & stdout)
Function logInfo(str)
    WScript.Echo CStr(Now()) + " [INFO]: " + str
    Set objFile = objFSO.OpenTextFile(DEFAULT_LOG_FILE_PATH, 8, True)
    objFile.WriteLine CStr(Now()) + " [INFO]: " + str
    objFile.Close
End Function

tmp_jdk_download_path="C:\Windows\Temp\jdk.exe"
jdk_installer_url="http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-windows-x64.exe"

cmd="wget --no-check-certificate --no-cookies --header ""Cookie: oraclelicense=accept-securebackup-cookie"" " + jdk_installer_url + " -O " + tmp_jdk_download_path + " -c"


' download jdk
ws.Run cmd,,TRUE

WScript.Sleep 5000

javaInstallCmdStr = "C:\Windows\Temp\jdk.exe /s /L C:\Windows\Temp\jdk-install.log"
Set oExec1 = ws.Exec(javaInstallCmdStr)

Do While oExec1.Status = 0
    loginfo "Info: Wait for install JDK to finish."
    WScript.Sleep 10000
Loop

関連情報へ

下のガイドから関連情報をご確認いただけます。

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

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

    処理中...