月曜日, 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…

水曜日, 10月 14, 2009

【Amazon EC2】SSH経由でのファイル転送方法 (Windows編)その2

今回は起動したインスタンスにWindowsでファイルを転送する方法その2です
定番のWinSCPを使う方法です。

WinSCPの場合、TeraTermで使用しているOpenSSH形式のキーが使用できない為、WinSCPが使用するPutty形式に変換する必要があります。
手順は以下です。

1. PuTTYごった煮版をダウンロードし、インストール。
2. インストールされた中にあるputtygenを実行します。



3. 読込ボタンを選択し『【Amazon EC2】KeyPairの作成方法』で作成し保存したKeyPairを読み込ませます。


「秘密鍵の保存でPuTTY用の鍵保存してね」とウィンドウが表示されますのでOK選択。
 


4. 言われた通りに、秘密鍵の保存を選択すると「パスフレーズ未入力だけでいいの?」と警告ができましが、OK選択。


5. 最後に保存ファイル名を指定して終了。



次はWinSCPの使用方法です。

1. 起動して以下を指定し、ログインします。
・ホスト名:『【Amazon EC2】SSH経由で接続する為のAMIの準備』でメモしたpublicDNS
・ユーザ名:root
・秘密鍵:作成したPuTTY用の鍵



2. 最初だけワーニングがでますが、「はい」選択。
 

3. ログインできました。あとはドラック&ドロップでファイル移動が可能です。



簡単ですね。

Leia Mais…

火曜日, 10月 13, 2009

【Amazon EC2】SSH経由でのファイル転送方法 (Windows編)その1

今回は起動したインスタンスにWindowsでファイルを転送する方法です。

一番、手軽なのはTeraTermを使ってSCPでコピーする方法です。手順は以下になります。

1. TeraTermでログインする。
ログイン方法は【Amazon EC2】SSH経由でTelnet (Windows編)を参照して下さい。

2. ログイン後、ファイルーSSH SCPを選択。


3.送信ファイル選択ウィンドウがあらわれます。

 

4.上段のFromに送信ファイルを指定し、Sendボタンを選択して送信します。
送信先はホームディレクトリ固定になります。




5.送信されたか確認します。今回の例はOSがFedoraなのでlsコマンドで確認します。


     
簡単ですね。
次は定番のWinScpを使う場合です。

Leia Mais…

金曜日, 10月 09, 2009

【Amazon EC2】KeyPairの作成方法

前回、SSH経由でtelnetする際にKeyPairを使用しまたが、今回はその作成方法です。
(順番が逆になってしまいましたー。 (^^;ゞ)

手順は以下です。

1. AWS Management Consoleの左のメニューの「Key Pairs」を選択します。



2. 次に左上の「Create Key Pair」を選択するとポップアップウィンドウがあらわれますので
KeyPair名を入力して「Create」ボタンを選択して下さい。



3. KeyPairがダウンロードがされますので、安全なところに保存してください。
このKeyPairは「Amazon EC2へSSH経由でTelnet (Windows編)」で書きましたが
TeraTermに指定する秘密鍵となります。大切に保管してください。




 4. 「安全な場所に保管しといてね」とポップアップが表示されてますのでOKを選択します。
これで完了です。インスタンスを新しく作成する際に、どのキーを使うか指定しますので
ここであらかじめ作成したKeyPairを指定することになります。
また、WindowsからTeraTermを使用してSSH経由でTelnetする際もこのキーを使用します。



簡単ですね。

Leia Mais…

火曜日, 10月 06, 2009

【Amazon EC2】SSH経由でTelnet (Windows編)

前回、SSH経由でTelnetする為のインスタンスの設定が終わったので
今回はWindowsからSSH経由でTelnetする方法です。

  1. 以下を用意します。
  • (1) SSH2対応のTeraTermをダウンロード。
    TeraTermは私の好みなのですが、AWS Management Consoleで作成したKeyPairはOpenSSH形式で、TeraTermがサポートするのもOpenSSH形式をですので、そのまま使用することができます。(作成方法はこちら
  • (2) AWS Management ConsoleのKeyPairsで作成したKeyPair(XXX.pem)をTeraTermのRSAのデフォルトの秘密鍵名「id_rsa」にリネームしておきます。


  1. telnetは以下の手順です。
  • (2) 最初の接続時だけ以下のワーニングが出てきますが、Continueを選択して下さい。

  • (3) SSH接続認証ウィンドウが現れるので
    ユーザ名:root
    秘密鍵 :1で作成した「id_rsa」
    を指定してOKを選択。

  • (4) ログインできました。

簡単ですね。

Leia Mais…