月曜日, 11月 23, 2009

Eclipse 3.5 Galileo Mac版の日本語化

MacのEclipseを英語版のまま使っていましたが、打ち合わせで使いそうだったので、遅らせばながら日本語化してみました。
せっかくなんで、Eclipseをダウンロードするとこから始めます。

環境は以下になります。

  • Mac OS X 10.6.2
  • Eclipse 3.5Galileo Java EE版

まずはEclipseのダウンロード

  1. ダウンロードページに移動してJava EEの「Mac Cocoa 32bit」を選択します。

  1. ページ遷移後ダウンロードします。 


次に日本語化する為のEclipseプラグインである「Pleiades」をダウンロードします。

  1. ダウンロードページに移動して最新版を選択します。


  1. ページ遷移後ダウンロードします。 

次にEclipseにPleiadesをセットアップします。

  1.  PleiadesのプラグインファイルをEclipseコピーします。具体的には以下になります。
  •  (1)  Pleiadesのfeaturesの中身をEclipseのfeaturesへコピーします。
  •  (2)  Pleiadesのpluginsの中身をEclipseのpluginsへコピーします。
  1. Eclipseのiniファイルを設定します。
  •  (1)  まずはEclipse.appを右クリックし「パッケージの内容を表示」を選択します。

    • (2) iniファイルの場所へ移動します。Contents-MacOSの配下になります。

     
     
    • (3) iniファイルをテキストエディタで開きます。
     
    • (4) 最後の行に以下を追記します。
      「-javaagent:../../../plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar」
    もし、起動しない場合はiniファイルに -cleanオプションを指定して起動してみて下さい。
    起動したら、-cleanオプションは削除して下さい。
    これで終了です。

    ではEclipseを起動してみましょう。最初は少々時間がかかります。

     

    できました! 簡単ですね。

    Leia Mais…

    月曜日, 11月 02, 2009

    【Amazon RDS】DBインスタンスの作成(コマンド編)

    AmazonクラウドがAmazon Relational Database Serviceを開始しました。
    Amazonのスタートガイドを参考に試してみました。

    私の環境はMac OS X 10.6.1です。
    そこからAmazon Relational Database Serviceへコマンドを使用してインスタンスを作成します。
    その後、テーブルを作成してみます。

    まずはMac(ローカル)側のRDSコマンドの準備です。

    1. JAVAをインストールします。ダウンロードしてインストールして下さい。
      インストール済であれば、次へ進んでください。
    1. Amazon RDS Command Line ToolkitというRDSコマンドをセットアップします。
    • (1) ここからダウンロードし、適当なところへインストールします。
    • (2) ターミナルを起動してコマンドをインストールしたディレクトリへ移動後、lsコマンドでRDSコマンドフォルダであるRDSCli-1.0.001の中身を確認します。
      $ls 
      README.TXT THIRDPARTYLICENSE.TXT credential-file-path.template lib
      RELEASENOTES.TXT bin
    • (3) credential-file-path.templateをコピーしてcredential-file-path.txtを作成します。
      $ls 
      README.TXT THIRDPARTYLICENSE.TXT credential-file-path.template lib
      RELEASENOTES.TXT bin credential-file-path.txt
    • (4) credential-file-path.txtを編集します。
      (編集前)
      AWSAccessKeyId=<Write your AWS access ID> 
      AWSSecretKey=<Write your AWS secret key>
      (編集後)
      AWSAccessKeyId=xxxx 
      AWSSecretKey=yyyy
    • (5) credential-file-path.txtのパーミションを変更します。
      $chmod 600 credential-file-path.txt
      
    1. 次にJAVAとRDSコマンドが動作する為の環境変数を設定します。
      Macの場合、自分のアカウント直下のディレクトリ直下の.bash_profileを編集します。
      以下は編集後の状態です。
      $cat .bash_profile 
      # .bash_profile export AWS_RDS_HOME=~/EC2/RDSCli-1.0.001 ・・・・(a)
      export AWS_CREDENTIAL_FILE=$AWS_RDS_HOME/credential-file-path.txt・・・・(b)
      export PATH=$PATH:$AWS_RDS_HOME/bin・・・・(c)
      export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6./Home・(d)
      • (a) コマンドをインストールしたディレクトリを指定します。
      • (b) credential-fileを指定します。
      • (c) コマンドがどこのディレクトリからでも実行できるようにパスを通します。
      • (d) JAVAをインストールしたディレクトリを指定します。
    1. ターミナルを一旦クローズし再度オープン後、動作確認を行ないます。
    • (1) JAVAが動作するか確認します。
      $ java -version 
      java version "1.6.0_15" Java(TM) SE Runtime Environment (build 1.6.0_15-b03-219) Java HotSpot(TM) 64-Bit Server VM (build 14.1-b02-90, mixed mode)
      インストールしたにもかかわらず、JAVAのバージョンが表示されない場合、「JAVAインストールディレクトリ¥bin」にもパスを通してださい。
    • (2) RDSコマンドが動作するか確認します。
      $ rds -version 
      Relational Database Service CLI version 1.0.001 (API 2009-10-16)
      表示されなければ、環境変数の設定を再度、確認して下さい。
    1. 次にAmazon Relational Database Service上のインスタンスへ接続する為のツールをダウンロードします。AmazonのスタートガイドではMySQLモニタを使用していますが、今回はOracle SQL Developerを使用してみます。(Oracle SQL DeveloperはJDBC経由でOracle、MySQL、SQLServer、Sybaseと接続可能ないろいろと便利なツールです。OTNへの登録が前提になります。)
    • (1) Oracle SQL Developer 1.5.5をここからダウンロードします。
    • (2) ツーループリファレンスー拡張機能でMySQLJDBC Driverを追加してください。

    以上でRDSコマンドの準備ができました。

    さぁRDSコマンドを使ってDBインスタンスの準備を行ないま〜す!

    1. DBインスタンスを作成します。
      次のコマンドを実行します。
      $ rds-create-db-instance --db-instance-identifier myinstance --allocated-storage 20 --db-instance-class db.m1.xlarge --engine MySQL5.1 --master-username mymasteruser --master-user-password mymasterpass --db-name MyDatabase --headers  
      DBINSTANCE DBInstanceId Class Engine Storage Master Username Status Backup Retention
      DBINSTANCE myinstance db.m1.xlarge mysql5.1 20 mymasteruser creating 1 SECGROUP Name Status SECGROUP default active PARAMGRP Group Name Apply Status PARAMGRP default.mysql5.1 in-sync
      パラメータの意味は以下です。
      •  myinstance:DBインスタンス名
      •  20:割当てるストレージサイズ(単位:GByte) 5〜1024GByteの範囲で指定。
      •  db.m1.xlarge:メモリレベル
        • db.m1.small または db.m1.large または db.m1.xlarge または db.m2.2xlargeまたはdb.m2.4xlarge
      •  MySQL5.1:データベースエンジン。現状、MySQL5.1のみです。
      •  mymasteruser:ユーザ名(1〜16文字)
      •  mymasterpass:パスワード(4〜16文字)
      •  MyDatabase:データベース名

      ここで一つ注意ですが「rds-create-db-instance」は、デフォルトで自動バックアップ期間を1日で作成します。
      自動でバックアップしてくれるので、もちろん便利ですが、費用( $0.15 per GB-month)はかかります。
      バックアップが不要の場合は--backup-retention-period 0」というコマンドパラメータを追加して下さい。
    1. インスタンス状況を確認します。StatusがavailableであればOKです。
      表示されているEndpoint Addressは接続時に使用しますのでメモしておいて下さい。
      $ rds-describe-db-instances --headers 
      DBINSTANCE DBInstanceId Created Class Engine Storage Master Username Status Endpoint Address Port AZ Backup Retention
      DBINSTANCE myinstance 2009-10-30T07:43:14.153Z db.m1.xlarge mysql5.1 20 mymasteruser available myinstance.cm43wa9866cy.us-east-1.rds.amazonaws.com 3306 us-east-1d 1 SECGROUP Name Status SECGROUP default active PARAMGRP Group Name Apply Status PARAMGRP default.mysql5.1 in-sync
    1. 次にインスタンスへアクセスを許可するIPアドレスを設定します。
      次のコマンドを実行します。
    2. $ rds-authorize-db-security-group-ingress default --cidr-ip AAA.BBB.CCC.DDD/32 --headers  
      SECGROUP Name Description SECGROUP default default IP-RANGE IP Range Status IP-RANGE AAA.BBB.CCC.DDD/32 authorizing
      パラメータの意味は以下です。
      •  AAA.BBB.CCC.DDD/32:自分のIPアドレスを指定します。自分のIPアドレスはここで確認してください。
      間違えた場合は以下で取り消しできます。
      $rds-revoke-db-security-group-ingress default --cidr-ip AAA.BBB.CCC.DDD/32
      
      以上で準備完了です。

    さぁ、いよいよ、作成したDBインスタンスへアクセスします。
    Oracle SQL Developerを使用します。

    1. 新規接続を作成します。

    1. 以下の接続パラメータを設定し保存します。

      •  接続名:何でもいいです。
      •  ユーザ名:DBインスタンス作成時に指定したユーザ名
      •  パスワード:DBインスタンス作成時に指定したパスワード
      •  ホスト名:インスタンス状況を確認したEndpoint Addressを指定します。
      •  ポート名:3306
    1. 接続します。

    1. 接続できました。インスタンス作成時に指定したデータベース「MyDatabase」が作成されています。

    1. MyDatabaseにbook2というテーブルを作成してみます。
      以下のSQL文を書いてください。
      create table MyDatabase.book2(bookname char(10), kakaku int(10), zaiko int(5));

    1. SQLを実行します。赤枠のスクリプト実行を選択して下さい。

    1. 左の接続ペインのMyDatabaseー表ーbook2を選択して内容を確認してください。

    1. テーブルが出来たのでデータをインサートしてみます。
      以下のSQL文を書いて下さい。
      INSERT MyDatabase.book2 (bookname,kakaku,zaiko) VALUES ('book1',1000,10);

    1. データがインサートされたか確認します。

      あとは、いろいろSQL文を書いて試してみてください。
      ただし、稼働中のままだと料金がかかりますので注意して下さい。
      料金はこちらのPricingを見て下さい。
    1. 料金をおさえる為、スナップショットを保存して終了しておきます。
      $ rds-delete-db-instance myinstance --final-db-snapshot-identifier myfinalsnapshot 
      Once you begin deleting this database, it will no longer be able to accept connections. Are you sure you want to delete this database? [Ny]y
      DBINSTANCE  myinstance  2009-10-30T07:43:14.153Z  db.m1.xlarge mysql5.1  20 mymasteruser  deleting  us-east-1d 1 SECGROUP  default active PARAMGRP  default.mysql5.1 in-sync
      後でスナップショットから新しいインスタンスが作成できます。

    今回、参考したマニュアルは以下です。
    • スタートガイドはここにあります。
    • コマンドマニュアルはここにあります。

    Leia Mais…

    月曜日, 10月 26, 2009

    【Amazon EC2】自前のAMIの作成と保存方法 (Linux系OS編)

    インスタンスに必要なソフトをインストールしカスタマイズした場合、インスタンス終了(Terminate)後、再起動する為には自前のAMIとして保存しておく必要があります。
    今回はその方法です。

    これまでの操作は全て「AWS Management Console」というUIで操作可能でしたが、今回ばかりは、インスタンス上で「Amazon EC2 AMI Tools」というコマンドを実行する必要があります。
    ですので、若干、いろいろと行ないます。

    まずは準備から

    1. インスタンスへのJAVAのセットアップ
      「Amazon EC2 AMI Tools」がJAVAを使用している為、JAVAをインスタンスへインストールします。(手順は『【Amazon EC2】インスタンスへのJAVAのインストール方法』を参照してください。)
    1. 「Amazon EC2 AMI Tools」がインストールされていることをwhichコマンドで確認します。インストールされているディレクトリが表示されればOKです。

      # which ec2-bundle-vol
      /usr/local/bin/ec2-bundle-vol
      私が試したいくつかのAMIでは全てインストール済でした。
      もしもインストールされていない場合、ここからダウンロードしてインストールしてください。そのあと、JAVAと同じようにPATHを通してください。

    1. X.509証明書のAMIバンドルの準備
      自前AMIを作成する際、以下が必要になりますので、/mntへ転送します。
      (転送手順は『【Amazon EC2】SSH経由でのファイル転送方法』を参照してください。)

      • X.509証明書(cert-XXXXXX.pem)
      •  秘密鍵(pk-XXXXXX.pem)

      以上でインスタンス側の準備は終了です。

    1. 自前AMIの保存するS3の準備
      自前AMIの保存先をS3に作成します。保存先はBucket(バケット)と呼ばれるフォルダを作成することになります。S3Foxを使用します。  
      (S3Foxの準備は『【Amazon S3】S3のツールS3Foxのセットアップ方法』を参照してください。)
    • (1) 赤枠の「Create Bucket/Directory」を選択して下さい。



    • (2) Bucketを入力して、OKを選択。名前はあとでどのインスタンスを保存したか、わかりやす名前の方がいいですね。



    • (3) Bucketが作成されました。



    1. 最後に、自分のユーザNOを調べておきます。
    • (1) Your Acount-Account Activityを選択して下さい。



    • (2) Account Numberをメモしておきます。


      以上で、全て準備完了です。


    いよいよ実行です。

    1. 自前AMIのインスタンスをバンドルします。インスタンスログイン後、以下のコマンドを実行して下さい。
      (ログイン手順は『【Amazon EC2】SSH経由でTelnet』を参照してください。)
      少し、時間がかかります。

      cd /mnt
      ec2-bundle-vol -d /mnt --privatekey pk-XXXXXX.pem --cert cert-XXXXXX.pem --user XXXX-YYYY-ZZZZ -r i386

      それぞれのパラメータの意味は以下になります。
      • pk-XXXXXX.pem:準備3で転送した秘密鍵名を指定します。
      • cert-XXXXXX.pem:準備3で転送したX.509証明書名を指定します。
      • XXXX-YYYY-ZZZZ:準備5で調べたユーザNOを指定します。
      • i386:32ビット時;i386、64ビット時: x86_64 と指定します。

      (実行状況)
      Copying / into the image file /mnt/image...
      Excluding:
      /sys
      /proc
      /sys/fs/fuse/connections
      /dev/pts
      /proc/sys/fs/binfmt_misc
      /dev
      /media
      /mnt
      /proc
      /sys
      /mnt/image
      /mnt/img-mnt
      1+0 records in
      1+0 records out
      1048576 bytes (1.0 MB) copied, 0.0018 s, 583 MB/s
      mke2fs 1.40.4 (31-Dec-2007)
      NOTE: rsync with preservation of extended file attributes failed. Retrying rsync
      without attempting to preserve extended file attributes...
      NOTE: rsync seemed successful but exited with error code 23. This probably means
      that your version of rsync was built against a kernel with HAVE_LUTIMES defined,
      although the current kernel was not built with this option enabled. The bundling
      process will thus ignore the error and continue bundling.  If bundling completes
      successfully, your image should be perfectly usable. We, however, recommend that
      you install a version of rsync that handles this situation more elegantly.
      Bundling image file...
      Splitting /mnt/image.tar.gz.enc...
      Created image.part.00
      Created image.part.01
      Created image.part.02
      Created image.part.03
      Created image.part.04
      Created image.part.05
      Created image.part.06
      Created image.part.07
      Created image.part.08
      Created image.part.09
      Created image.part.10
      Created image.part.11
      Created image.part.12
      Created image.part.13
      Created image.part.14
      Created image.part.15
      Created image.part.16
      Created image.part.17
      Created image.part.18
      Created image.part.19
      Created image.part.20
      Created image.part.21
      Created image.part.22
      Created image.part.23
      Created image.part.24
      Created image.part.25
      Created image.part.26
      Created image.part.27
      Created image.part.28
      Created image.part.29
      Created image.part.30
      Created image.part.31
      Created image.part.32
      Generating digests for each part...
      Digests generated.
      Unable to read instance meta-data for product-codes
      Creating bundle manifest...
      ec2-bundle-vol complete.
    1. 次に出来上がったAMIイメージをS3へ転送します。
      ec2-upload-bundle --bucket fedora0001 --manifest image.manifest.xml --access-key XXXXXXXX --secret-key YYYYYYYY
      

      それぞれのパラメータの意味は以下になります。
      ・fedora0001:S3にさきほど作成したBucket名を指定します。
      ・image.manifest.xml:S3上に作成されるマニュフェストファイル名を指定します。何でもいいです。
      ・XXXXXXXX:『S3のツールS3Foxのセットアップ方法』で調べたAccess Key ID。
      ・YYYYYYYY:『S3のツールS3Foxのセットアップ方法』で調べたSecret Access Key。

      (実行状況)
      Uploading bundled image parts to the S3 bucket fedora0001 ...
      Uploaded image.part.00
      Uploaded image.part.01
      Uploaded image.part.02
      Uploaded image.part.03
      Uploaded image.part.04
      Uploaded image.part.05
      Uploaded image.part.06
      Uploaded image.part.07
      Uploaded image.part.08
      Uploaded image.part.09
      Uploaded image.part.10
      Uploaded image.part.11
      Uploaded image.part.12
      Uploaded image.part.13
      Uploaded image.part.14
      Uploaded image.part.15
      Uploaded image.part.16
      Uploaded image.part.17
      Uploaded image.part.18
      Uploaded image.part.19
      Uploaded image.part.20
      Uploaded image.part.21
      Uploaded image.part.22
      Uploaded image.part.23
      Uploaded image.part.24
      Uploaded image.part.25
      Uploaded image.part.26
      Uploaded image.part.27
      Uploaded image.part.28
      Uploaded image.part.29
      Uploaded image.part.30
      Uploaded image.part.31
      Uploaded image.part.32
      Uploading manifest ...
      Uploaded manifest.
      Bundle upload completed.
    1. S3FoxでS3に転送されたか確認します。

    1. 今度はAWS Management ConsoleでS3に作成されたAMIイメージを登録します。
    • (1) 左メニューのAMIsを選択しRegister New AMIを選択します。


    • (2)先ほどS3に作成したBucket/マニュフェストファイル名を指定しRegisterを選択します。


    • (3)登録が完了された旨、表示されたらCloseを選択します。

    • (4)自前AMIが登録されました。



      ちなみ、De-registerで登録を削除できます。


    1. 登録されたAMIを選択しLaunchを選択することで起動できます。


    以上になります。ちょっと今回はたいへんでした。


    今回の手順はAmazonにもマニュアルがあります。以下を参考にしてください。

    ◯AMI関連の操作マニュアルはここにあります。
    メニューからたどる場合、以下になります。
    ResourcesーDocumentationーAmazon Elastic Compute CloudーGetting Started Guide

    次に左メニューを以下のようにたどると参照できます。
    Getting Started with the Command Line ToolsーRunning an InstanceーLinux and UNIXーBundling an AMI

    ◯「Amazon EC2 AMI Tools」のコマンドマニュアルはここにあります。
    メニューからたどる場合、以下になります。ResourcesーDocumentationーAmazon Elastic Compute CloudーCommand Line Reference

    次に左メニューを以下のようにたどると参照できます。
    AMI Tools Referenceーec2-bundle-vol
    AMI Tools Referenceーec2-upload-bundle

    Leia Mais…

    水曜日, 10月 21, 2009

    【Amazon EC2】JAVAのインストール方法 (Linux編)

    今回はAmazon EC2のLinuxOSインスタンスへのJAVAのインストール方法です。
    Amazon EC2上でEC2のコマンドを実行する為に必要になります。

    以下の手順で行ないます。

    1. JAVAを自分のPCにダウンロード。今回が「JDK 6 Update 16」を。
    • (2) PlatformにLinuxを選択しライセンスに同意し「Continue」を選択。

    • (3) 自己解凍RPMファイルであるjdk-XXXX-linux-XXXX-rmp.binを選択。

    1. インスタンスにログイン。
      (手順は『【Amazon EC2】SSH経由でTelnet』を参照してください。)
    1. JAVAをインストールするディレクトリをインスタンスへ作成します。
      今回は/usr/javaというディレクトリを用意します。以下のコマンドを実行して下さい。

      # mkdir /usr/java
      
    1. 次にダウンロードした自己解凍RPMファイルを先ほどインスタンスに用意した/usr/javaへ転送します。(転送手順は『 【Amazon EC2】SSH経由でのファイル転送方法』を参照してください。)
    1. 次にJAVAをインストールします。/usr/javaで以下のコマンドを実行してください。
      (今回はjdk-6u16-linux-i586-rpm.binをダウンロードしたので、その例です。)

      # cd /usr/java
      # chmod a+x jdk-6u16-linux-i586-rpm.bin・・★自己解凍RPMファイルに実行する権限を与えます
      # ./jdk-6u16-linux-i586-rpm.bin ・・・・・★インストール実行
      


      インストールが始まると、
    • (1) たくさん表示されますがEnterを押し続け
    • (2)「Do you agree to the above license terms?」のライセンス同意の質問に同意後「yes」を入力
    • (3)「Press Enter to continue.」と表示されたらEnterを押下してください。
      (実行状況)


      Sun Microsystems, Inc. Binary Code License Agreement
      for the JAVA SE DEVELOPMENT KIT (JDK), VERSION 6
      SUN MICROSYSTEMS, INC. ("SUN") IS WILLING TO LICENSE THE
      SOFTWARE IDENTIFIED BELOW TO YOU ONLY UPON THE CONDITION
      THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS BINARY
      CODE LICENSE AGREEMENT AND SUPPLEMENTAL LICENSE TERMS
      (COLLECTIVELY "AGREEMENT"). PLEASE READ THE AGREEMENT
      CAREFULLY.  BY USING THE SOFTWARE YOU ACKNOWLEDGE THAT
      YOU HAVE READ THE TERMS AND AGREE TO THEM. IF YOU ARE 
      AGREEING TO THESE TERMS ON BEHALF OF A COMPANY OR OTHER 
      LEGAL ENTITY, YOU REPRESENT THAT YOU HAVE THE LEGAL 
      AUTHORITY TO BIND THE LEGAL ENTITY TO THESE TERMS. IF 
      YOU DO NOT HAVE SUCH AUTHORITY, OR IF YOU DO NOT WISH 
      TO BE BOUND BY THE TERMS, THEN YOU MUST NOT USE THE
      SOFTWARE ON THIS SITE OR ANY OTHER MEDIA ON WHICH THE 
      SOFTWARE IS CONTAINED.
      
      1. DEFINITIONS. "Software" means the identified above in
      binary form, any other machine readable materials
      (including, but not limited to, libraries, source files,
      header files, and data files), any updates or error
      corrections provided by Sun, and any user manuals,
      programming guides and other documentation provided to you
      by Sun under this Agreement.  "General Purpose Desktop
      Computers and Servers" means computers, including desktop
      and laptop computers, or servers, used for general
      computing functions under end user control (such as but not
      specifically limited to email, general purpose Internet
      browsing, and office suite productivity tools).
      The use of Software in systems and solutions that provide
      dedicated functionality (other than as mentioned above) or
      designed for use in embedded or function-specific software
      applications, for example but not limited to: Software
      embedded in or bundled with industrial control systems,
      wireless mobile telephones, wireless handheld devices,
      netbooks, kiosks, TV/STB, Blu-ray Disc devices, telematics 
      and network control switching equipment, printers and 
      storage management systems, and other related systems are 
      excluded from this definition and not licensed under this
      Agreement.  "Programs" means Java technology applets and
      applications intended to run on the Java Platform Standard
      Edition (Java SE) platform on Java-enabled General Purpose
      Desktop Computers and Servers.
      
      2. LICENSE TO USE. Subject to the terms and conditions of
      this Agreement, including, but not limited to the Java
      Technology Restrictions of the Supplemental License Terms,
      Sun grants you a non-exclusive, non-transferable, limited
      license without license fees to reproduce and use
      internally Software complete and unmodified for the sole
      purpose of running Programs. Additional licenses for
      developers and/or publishers are granted in the
      Supplemental License Terms.
      
      3. RESTRICTIONS. Software is confidential and copyrighted.
      Title to Software and all associated intellectual property
      rights is retained by Sun and/or its licensors. Unless
      enforcement is prohibited by applicable law, you may not
      modify, decompile, or reverse engineer Software. You
      acknowledge that Licensed Software is not designed or
      intended for use in the design, construction, operation or
      maintenance of any nuclear facility. Sun Microsystems, Inc.
      disclaims any express or implied warranty of fitness for
      such uses. No right, title or interest in or to any
      trademark, service mark, logo or trade name of Sun or its
      licensors is granted under this Agreement. Additional
      restrictions for developers and/or publishers licenses are
      set forth in the Supplemental License Terms.
      
      4. LIMITED WARRANTY. Sun warrants to you that for a period
      of ninety (90) days from the date of purchase, as evidenced
      by a copy of the receipt, the media on which Software is
      furnished (if any) will be free of defects in materials and
      workmanship under normal use. Except for the foregoing,
      Software is provided "AS IS". Your exclusive remedy and
      Sun's entire liability under this limited warranty will be
      at Sun's option to replace Software media or refund the fee
      paid for Software. Any implied warranties on the Software
      are limited to 90 days. Some states do not allow
      limitations on duration of an implied warranty, so the
      above may not apply to you. This limited warranty gives you
      specific legal rights. You may have others, which vary from
      state to state.
      
      5. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS
      AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS,
      REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED
      WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
      PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE
      EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY
      INVALID.
      
      6. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY
      LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
      ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT,
      CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
      CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT
      OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE,
      EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
      DAMAGES. In no event will Sun's liability to you, whether
      in contract, tort (including negligence), or otherwise,
      exceed the amount paid by you for Software under this
      Agreement. The foregoing limitations will apply even if the
      above stated warranty fails of its essential purpose. Some
      states do not allow the exclusion of incidental or
      consequential damages, so some of the terms above may not
      be applicable to you.
      
      7. TERMINATION. This Agreement is effective until
      terminated. You may terminate this Agreement at any time by
      destroying all copies of Software. This Agreement will
      terminate immediately without notice from Sun if you fail
      to comply with any provision of this Agreement. Either
      party may terminate this Agreement immediately should any
      Software become, or in either party's opinion be likely to
      become, the subject of a claim of infringement of any
      intellectual property right. Upon Termination, you must
      destroy all copies of Software.
      
      8. EXPORT REGULATIONS. All Software and technical data
      delivered under this Agreement are subject to US export
      control laws and may be subject to export or import
      regulations in other countries. You agree to comply
      strictly with all such laws and regulations and acknowledge
      that you have the responsibility to obtain such licenses to
      export, re-export, or import as may be required after
      delivery to you.
      
      9. TRADEMARKS AND LOGOS. You acknowledge and agree as
      between you and Sun that Sun owns the SUN, SOLARIS, JAVA,
      JINI, FORTE, and iPLANET trademarks and all SUN, SOLARIS,
      JAVA, JINI, FORTE, and iPLANET-related trademarks, service
      marks, logos and other brand designations ("Sun Marks"),
      and you agree to comply with the Sun Trademark and Logo
      Usage Requirements currently located at
      http://www.sun.com/policies/trademarks. Any use you make of
      the Sun Marks inures to Sun's benefit.
      
      10. U.S. GOVERNMENT RESTRICTED RIGHTS. If Software is being
      acquired by or on behalf of the U.S. Government or by a
      U.S. Government prime contractor or subcontractor (at any
      tier), then the Government's rights in Software and
      accompanying documentation will be only as set forth in
      this Agreement; this is in accordance with 48 CFR 227.7201
      through 227.7202-4 (for Department of Defense (DOD)
      acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD
      acquisitions).
      
      11. GOVERNING LAW. Any action related to this Agreement
      will be governed by California law and controlling U.S.
      federal law. No choice of law rules of any jurisdiction
      will apply.
      
      12. SEVERABILITY. If any provision of this Agreement is
      held to be unenforceable, this Agreement will remain in
      effect with the provision omitted, unless omission would
      frustrate the intent of the parties, in which case this
      Agreement will immediately terminate.
      
      13. INTEGRATION. This Agreement is the entire agreement
      between you and Sun relating to its subject matter. It
      supersedes all prior or contemporaneous oral or written
      communications, proposals, representations and warranties
      and prevails over any conflicting or additional terms of
      any quote, order, acknowledgment, or other communication
      between the parties relating to its subject matter during
      the term of this Agreement. No modification of this
      Agreement will be binding, unless in writing and signed by
      an authorized representative of each party.
      
      SUPPLEMENTAL LICENSE TERMS
      
      These Supplemental License Terms add to or modify the terms
      of the Binary Code License Agreement. Capitalized terms not
      defined in these Supplemental Terms shall have the same
      meanings ascribed to them in the Binary Code License
      Agreement . These Supplemental Terms shall supersede any
      inconsistent or conflicting terms in the Binary Code
      License Agreement, or in any license contained within the
      Software.
      
      A. Software Internal Use and Development License Grant.
      Subject to the terms and conditions of this Agreement and
      restrictions and exceptions set forth in the Software
      "README" file incorporated herein by reference, including,
      but not limited to the Java Technology Restrictions of
      these Supplemental Terms, Sun grants you a non-exclusive,
      non-transferable, limited license without fees to reproduce
      internally and use internally the Software complete and
      unmodified for the purpose of designing, developing, and
      testing your Programs.
      
      B. License to Distribute Software. Subject to the terms and
      conditions of this Agreement and restrictions and
      exceptions set forth in the Software README file,
      including, but not limited to the Java Technology
      Restrictions of these Supplemental Terms, Sun grants you a
      non-exclusive, non-transferable, limited license without
      fees to reproduce and distribute the Software, provided
      that (i) you distribute the Software complete and
      unmodified and only bundled as part of, and for the sole
      purpose of running, your Programs, (ii) the Programs add
      significant and primary functionality to the Software,
      (iii) you do not distribute additional software intended to
      replace any component(s) of the Software, (iv) you do not
      remove or alter any proprietary legends or notices
      contained in the Software, (v) you only distribute the
      Software subject to a license agreement that protects Sun's
      interests consistent with the terms contained in this
      Agreement, and (vi) you agree to defend and indemnify Sun
      and its licensors from and against any damages, costs,
      liabilities, settlement amounts and/or expenses (including
      attorneys' fees) incurred in connection with any claim,
      lawsuit or action by any third party that arises or results
      from the use or distribution of any and all Programs and/or
      Software.
      
      C. License to Distribute Redistributables. Subject to the
      terms and conditions of this Agreement and restrictions and
      exceptions set forth in the Software README file, including
      but not limited to the Java Technology Restrictions of
      these Supplemental Terms, Sun grants you a non-exclusive,
      non-transferable, limited license without fees to reproduce
      and distribute those files specifically identified as
      redistributable in the Software "README" file
      ("Redistributables") provided that: (i) you distribute the
      Redistributables complete and unmodified, and only bundled
      as part of Programs, (ii) the Programs add significant and
      primary functionality to the Redistributables, (iii) you do
      not distribute additional software intended to supersede
      any component(s) of the Redistributables (unless otherwise
      specified in the applicable README file), (iv) you do not
      remove or alter any proprietary legends or notices
      contained in or on the Redistributables, (v) you only
      distribute the Redistributables pursuant to a license
      agreement that protects Sun's interests consistent with the
      terms contained in the Agreement, (vi) you agree to defend
      and indemnify Sun and its licensors from and against any
      damages, costs, liabilities, settlement amounts and/or
      expenses (including attorneys' fees) incurred in connection
      with any claim, lawsuit or action by any third party that
      arises or results from the use or distribution of any and
      all Programs and/or Software.
      
      D. Java Technology Restrictions.  You may not create,
      modify, or change the behavior of, or authorize your
      licensees to create, modify, or change the behavior of,
      classes, interfaces, or subpackages that are in any way
      identified as "java", "javax", "sun" or similar convention
      as specified by Sun in any naming convention designation.
      
      E. Distribution by Publishers. This section pertains to
      your distribution of the Software with your printed book or
      magazine (as those terms are commonly used in the industry)
      relating to Java technology ("Publication"). Subject to and
      conditioned upon your compliance with the restrictions and
      obligations contained in the Agreement, in addition to the
      license granted in Paragraph 1 above, Sun hereby grants to
      you a non-exclusive, nontransferable limited right to
      reproduce complete and unmodified copies of the Software on
      electronic media (the "Media") for the sole purpose of
      inclusion and distribution with your Publication(s),
      subject to the following terms: (i) You may not distribute
      the Software on a stand-alone basis; it must be distributed
      with your Publication(s); (ii) You are responsible for
      downloading the Software from the applicable Sun web site;
      (iii) You must refer to the Software as JavaTM SE
      Development Kit 6; (iv) The Software must be reproduced in
      its entirety and without any modification whatsoever
      (including, without limitation, the Binary Code License and
      Supplemental License Terms accompanying the Software and
      proprietary rights notices contained in the Software);
      (v) The Media label shall include the following
      information: Copyright 2006, Sun Microsystems, Inc. All
      rights reserved. Use is subject to license terms. Sun, Sun
      Microsystems, the Sun logo, Solaris, Java, the Java Coffee
      Cup logo, J2SE, and all trademarks and logos based on Java
      are trademarks or registered trademarks of Sun
      Microsystems, Inc. in the U.S. and other countries. This
      information must be placed on the Media label in such a
      manner as to only apply to the Sun Software; (vi) You must
      clearly identify the Software as Sun's product on the Media
      holder or Media label, and you may not state or imply that
      Sun is responsible for any third-party software contained
      on the Media; (vii) You may not include any third party
      software on the Media which is intended to be a replacement
      or substitute for the Software; (viii) You shall indemnify
      Sun for all damages arising from your failure to comply
      with the requirements of this Agreement. In addition, you
      shall defend, at your expense, any and all claims brought
      against Sun by third parties, and shall pay all damages
      awarded by a court of competent jurisdiction, or such
      settlement amount negotiated by you, arising out of or in
      connection with your use, reproduction or distribution of
      the Software and/or the Publication. Your obligation to
      provide indemnification under this section shall arise
      provided that Sun: (a) provides you prompt notice of the
      claim; (b) gives you sole control of the defense and
      settlement of the claim; (c) provides you, at your expense,
      with all available information, assistance and authority to
      defend; and (d) has not compromised or settled such claim
      without your prior written consent; and (ix) You shall
      provide Sun with a written notice for each Publication;
      such notice shall include the following information: (1)
      title of Publication, (2) author(s), (3) date of
      Publication, and (4) ISBN or ISSN numbers. Such notice
      shall be sent to Sun Microsystems, Inc., 4150 Network
      Circle, M/S USCA12-110, Santa Clara, California 95054,
      U.S.A , Attention: Contracts Administration.
      
      F. Source Code. Software may contain source code that,
      unless expressly licensed for other purposes, is provided
      solely for reference purposes pursuant to the terms of this
      Agreement. Source code may not be redistributed unless
      expressly provided for in this Agreement.
      
      G. Third Party Code. Additional copyright notices and
      license terms applicable to portions of the Software are
      set forth in the THIRDPARTYLICENSEREADME.txt file. In
      addition to any terms and conditions of any third party
      opensource/freeware license identified in the
      THIRDPARTYLICENSEREADME.txt file, the disclaimer of
      warranty and limitation of liability provisions in
      paragraphs 5 and 6 of the  Binary Code License Agreement
      shall apply to all Software in this distribution.
      
      H. Termination for Infringement. Either party may terminate
      this Agreement immediately should any Software become, or
      in either party's opinion be likely to become, the subject
      of a claim of infringement of any intellectual property
      right.
      
      I. Installation and Auto-Update.  The Software's
      installation and auto-update processes transmit a limited
      amount of data to Sun (or its service provider) about those
      specific processes to help Sun understand and optimize
      them.  Sun does not associate the data with personally
      identifiable information.  You can find more information
      about the data Sun collects at http://java.com/data/.
      
      For inquiries please contact: Sun Microsystems, Inc., 4150
      Network Circle, Santa  Clara, California 95054, U.S.A.
      
      Please enter "yes" or "no".
      Do you agree to the above license terms? [yes or no]
      yes・・・・・・・・・・・・★ライセンス同意後yes入力
      Unpacking...
      Checksumming...
      Extracting...
      UnZipSFX 5.50 of 17 February 2002, by Info-ZIP (Zip-Bugs@lists.wku.edu).
        inflating: jdk-6u16-linux-i586.rpm  
        inflating: sun-javadb-common-10.4.2-1.1.i386.rpm  
        inflating: sun-javadb-core-10.4.2-1.1.i386.rpm  
        inflating: sun-javadb-client-10.4.2-1.1.i386.rpm  
        inflating: sun-javadb-demo-10.4.2-1.1.i386.rpm  
        inflating: sun-javadb-docs-10.4.2-1.1.i386.rpm  
        inflating: sun-javadb-javadoc-10.4.2-1.1.i386.rpm  
      Preparing...                ########################################### [100%]
         1:jdk                    ########################################### [100%]
      Unpacking JAR files...
          rt.jar...
          jsse.jar...
          charsets.jar...
          tools.jar...
          localedata.jar...
          plugin.jar...
          javaws.jar...
          deploy.jar...
      Installing JavaDB
      Preparing...                ########################################### [100%]
         1:sun-javadb-common      ########################################### [ 17%]
         2:sun-javadb-core        ########################################### [ 33%]
         3:sun-javadb-client      ########################################### [ 50%]
         4:sun-javadb-demo        ########################################### [ 67%]
         5:sun-javadb-docs        ########################################### [ 83%]
         6:sun-javadb-javadoc     ########################################### [100%]
      
      Java(TM) SE Development Kit 6 successfully installed.
      
      Product Registration is FREE and includes many benefits:
      * Notification of new versions, patches, and updates
      * Special offers on Sun products, services and training
      * Access to early releases and documentation
      
      Product and system data will be collected. If your configuration
      supports a browser, the Sun Product Registration form for 
      the JDK will be presented. If you do not register, none of
      this information will be saved. You may also register your
      JDK later by opening the register.html file (located in 
      the JDK installation directory) in a browser.
      
      For more information on what data Registration collects and 
      how it is managed and used, see:
      http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html
      
      Press Enter to continue.....・・・・・★Enter押下
      
      
      Done.
      

    1. JAVAがインストールされたかlsコマンドで確認します。

      # ls
      default
      latest sun-javadb-demo-10.4.2-1.1.i386.rpm
      jdk-6u16-linux-i586-rpm.bin  sun-javadb-client-10.4.2-1.1.i386.rpm  sun-javadb-docs-10.4.2-1.1.i386.rpm
      jdk-6u16-linux-i586.rpm      sun-javadb-common-10.4.2-1.1.i386.rpm  sun-javadb-javadoc-10.4.2-1.1.i386.rpm
      jdk1.6.0_16                  sun-javadb-core-10.4.2-1.1.i386.rpm
      
    1. インストールされたので自己解凍RPMファイルを削除します。

      # rm jdk-6u16-linux-i586-rpm.bin
      rm: remove regular file `jdk-6u16-linux-i586-rpm.bin'? y
      
    1. 解凍展開されたrmpファイルも不要なので削除します。

      # rm *.rpm
      rm: remove regular file `jdk-6u16-linux-i586.rpm'? y
      rm: remove regular file `sun-javadb-client-10.4.2-1.1.i386.rpm'? y
      rm: remove regular file `sun-javadb-common-10.4.2-1.1.i386.rpm'? y
      rm: remove regular file `sun-javadb-core-10.4.2-1.1.i386.rpm'? y
      rm: remove regular file `sun-javadb-demo-10.4.2-1.1.i386.rpm'? y
      rm: remove regular file `sun-javadb-docs-10.4.2-1.1.i386.rpm'? y
      rm: remove regular file `sun-javadb-javadoc-10.4.2-1.1.i386.rpm'? y
      
    1. 次にJAVAがどのディレクトリからも実行できるようにするための環境変数を設定します。
      シェルにより異なりますが、viエディタなどを使ってbashの場合、.bash_profileを編集します。

      (変更前)

      PATH=$PATH:$HOME/bin
      
      export PATH
      unset USERNAME
      

      (変更後)

      export JAVA_HOME=/usr/java/jdk1.6.0_16・・・★JAVA_HONEの設定
      PATH=$PATH:$HOME/bin:$JAVA_HOME/bin・・・・★JAVAへのPATH追加
      
      export PATH
      unset USERNAME
      
    1. 次にJAVAが実行できるか確認します。
      以下のコマンドを実行して下さい。

      # . .bash_profile ・・・★編集したbash_profileを有効化。(*1)
      # java -version ・・・・★JAVAのバージョンを確認。
      
      (*1 :再度、ログインしなおした場合、本操作は不要です。)

      バージョンが下記のように表示されればOKです。

      java version "1.6.0_16"
      Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
      Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode, sharing)
      
      以上でJAVAのセットアップは終了です。

    今回はEC2上のインスタンスへJAVAをインストーラしましたが、
    ローカルLinuxマシンへのインストール手順も同じです。

    Leia Mais…

    月曜日, 10月 19, 2009

    【Amazon S3】S3のツールS3Foxのセットアップ方法

    今回はAmazon Simple Storage Service(S3)のツール
    「Firefox Organizer for Amazon S3 and Amazon CloudFront(S3Fox)」
    のセットアップ方法についてです。

    S3はバックアップ用のストレージに利用される例がよく紹介されていますが
    もうひとつ大事な役割があります。

    EC2でインスタンスに必要なソフトをインストールしカスタマイズした場合、
    インスタンス終了(Terminate)後、再起動する為には自前のAMIとして保存しておく必要があります。
    その保存先がS3になります。

    S3を操作するのに便利なのがFireFoxのアドオンであるS3Foxです。

    S3Foxのセットアップは以下の手順になります。
    1. Firefoxをインストール。インストールされていなければ、ここからダウンロードして下さい。

    2. 次にS3Foxをインストール。以下の手順でダウンロードして下さい。
    他のツールも使うことがあると思いますので、あえてメニューからたどって説明します。

    (1) Resources-Other Developer Toolsを選択






    (2) 次にAmazon Simple Storage Serviceを選択





    (3) 次にFirefox Organizer for Amazon S3 and Amazon CloudFront (S3Fox)  を選択




       
    (4) 次に赤枠のURLを選択。




    (5) これで、やっとダウンロードページにたどりつきました。ダウンロードを選択。




    3. 次にAccess Key ID名とSecret Access Key名をメモします。二つともAmazonへのアカウント作成後に得られたものです。以下の手順で確認できます。

    (1)Your Account-Security Credentials へ移動




    (2) Access Key IDとSecret Access Keyをメモします。Secret Access KeyはShowクリックすると現れます。


    4 ツールーS3 OrganaizerでS3Foxを起動します。








    5. Amazon S3 Firefox OrganizerにAccess Key IDとSecret Access Keyを設定します。
    左上の「Manage Accounts」を選択して以下を入力してください。
    ・Account Name:何でもいいです
    ・Access Key:メモしたAccess Key ID
    ・Secret Key:メモしたSecret Access Key
       あとはAdd-CloseでOKです。



    上記でS3が操作ができようになりました。
    操作自体は簡単なので、いろいろ、さわってみましょう。
    ただし、料金はここでご確認しておいてください。

    Leia Mais…

    木曜日, 10月 15, 2009

    【Amazon EC2】インスタンス(AMI)の起動方法

    今回はEC2でのインスタンスの起動方法です。
    AMI(Amazon Machine Image)とインスタンスの言葉の使いわけですが
    AMIを選択し実際に起動したらインスタンス化されたということになります。

    1. まず、AWS Management ConsoleでLaunch Instancesボタンを選択します。



    2. AMI一覧が表示されますので必要なOSのAMIのselectボタンを選択します。今回はFedoraで。



    3. 選択したAMIが使用予定のポートパターンをもつSecurityGroupがまだ未作成の場合、新規作成を促すウィンドウがあらわれますので、作成します。
    ★ただし、ここで作成されるSecurityGroupはあくまでデフォルト設定ですので、インスタンス起動終了後に『【Amazon EC2】SSH経由で接続する為のインスタンスの準備』にあるSecurityGroupの設定を必ず行なってください。
    (既に同じポートパターンをもつSecurityGroupがあれば、このウィンドウは表示されません。)




    4. 次に起動するインスタンスのパラメータを設定します。
    ・Number of Instances :インスタンス数
    ・Instance Type : Small か High-CPU Medium (選択項目は選択したAMIによって異なります)
    ・Key Pair Name : 『【Amazon EC2】KeyPairの作成方法』で作成したKeyPair
    ・Security Groups : 該当のSecurity Group
    ・Monitoring : CloudWatchサービスを使用する場合、選択。これはインスタンス起動後も変更できます。



    5. 起動成功!になったらClose選択で終了です。
     EBS Volumes(インスタンスが使用できるディスク)とElastic IPs(グローバルIPアドレスの割当)は後で設定可能です。


    6. インスタンス起動を確認します。


    7. インスタンスに対する操作はInstances Actionsで指定できます。
    ・Reboot : インスタンスの再起動。
    ・Terminate : インスタンスの停止。(★注意)
    ・Connect : SSH経由でログインする手順が表示されます。
    ・Get System Log : システムログが参照できます。
    ・Launch More Like This : 同じAMIを追加で起動します。



    ★注意
    起動したインスタンスにいろんなものをインストールした後に、保存を行なわないでTerminateさせてしまうと、同じインスタンスイメージを再起動できませんので注意してください。
    同じインスタンスイメージ、つまり自前AMIの保存については別途、記載します。

    思い出したので ついでに補足です。
    AMIにOpenSolarisを選択した場合、インスタンスの保存処理でエラーになってしまいます。
    原因は調査中ですが、ひとまずOpenSolarisは選択しない方が無難かもしれません。

    Leia Mais…