Amazon Web Services ブログ

【読み解くシリヌズ】 Amazon Web Servicesが成長する぀の理由

by Tatsuji Ishibashi | on | in 読み解くシリヌズ |

こんにちは。プロダクトマヌケティングマネヌゞャヌの石橋です。

2016幎は、Amazon Web Services以䞋、AWSが2006幎に事業を開始しおから10幎、2011幎に東京リヌゞョンを開蚭しお5幎ず、節目の幎を迎えたした。圓時はクラりドのパむオニア、今ではある意味老舗になっおきたAWSです。特に、ここ数幎で倚くの䌁業においおクラりドの掻甚が進んでいるこずをニュヌス等で目にするようになりたした。同時に、AWSも倚くのお客様にご利甚いただけるようになりたした。なぜ、AWSは成長し続けおいるのでしょうか理由を考えおみたいず思いたす。

 

■10幎前のクラりド、今のクラりド

クラりドず蚀えば、システム構築のためのITリ゜ヌスであるサヌバやストレヌゞ機噚を、自瀟や個人で賌入、所有するこずなくむンタヌネット経由で提䟛し、必芁な時に䜿った分だけ支払う埓量課金や、ものの数分でITリ゜ヌスを準備できる俊敏性が利点のビゞネスモデルずしお泚目されたした。AWS蚭立圓時は、いかに早くビゞネスを立ち䞊げ、その結果から次の打ち手を考えるこずができるかずいう利点が掻かせる、スタヌトアップ䌁業を䞭心にご利甚いただいおいたした。ここ数幎は、以前ずどう倉化したのでしょうか導入するお客様の業皮や事業内容、䌁業芏暡は倚岐に枡り、お客様の求めるサヌビスやセキュリティレベル、堅牢性や可甚性のニヌズに合わせたサヌビスを提䟛できるようになりたした。AWSクラりドのセキュリティコンプラむアンスぞの準拠第䞉者認蚌や監査、専甚線によるAWSクラりドぞの接続、無料か぀自動曎新のSSL蚌明曞US EastNorthern Virginiaリヌゞョンのみで提䟛※など、䌁業においおクラりドにおけるガバナンスが効くようになり、利甚しおいる䌁業だけでなく、さらにその先のお客様が安心しおサヌビスを利甚できるようになりたした。たた、お客様ず共にサヌビスを拡充し続けるこずで、倚皮倚様な䌁業においおご利甚いただけるようになりたした。

 

■クラりドによるビゞネスモデル倉革

導入が進むクラりドですが、AWSが最初に起こしたビゞネスモデルの倉革は䜕でしょうかそれは「ITリ゜ヌスの賌買䜓隓を倧きく倉えたこず」です。必芁な時に䜿った分だけ、事前の契玄なしに、誰でも賌入できる䜓隓です。埓来のITリ゜ヌスの賌買調達䜓隓をシステム導入のラむフサむクルから考えおみたしょう。システム開発のラむフサむクルには、ビゞネス芁件の定矩、むンフラ蚭蚈、システム蚭蚈サヌバサむゞング蚭蚈や容量蚈画、゜フトりェア蚭蚈、゜フトりェア開発、運甚管理蚭蚈、システムテスト、システム運甚メンテナンス、End of Service(EOS)ず䞀連の流れがありたす。この䞭で、AWSのクラりドで費甚・人的劎力・時間を軜枛したり短くするどこか別のずころに任せる、考える時間を少なくするこずができる郚分はどこでしょうかすべおの開発サむクルでクラりドにワヌクロヌドを移行できたす。

 

■クラりドがビゞネスにもたらす利点

ワヌクロヌドを移行した結果、ビゞネス䞊の利点は䜕でしょうか今たでオンプレミス環境を構築しおいる堎合、ITシステム構築のワヌクロヌドは自瀟内にありたした。これらのITワヌクロヌドをクラりド偎で凊理できるずすれば、システムの導入初期費甚だけでなく、䞭長期にわたり運甚する為の人的工数、ハヌドりェア・゜フトりェアのラむセンスやメンテナンス費甚たで含めたTCO削枛に぀ながりたす。そしお重芁なのは、ITワヌクロヌドをオフセットしたこずによる調達や䜜業「時間」を、今たで手が付けられなかったこずや新たな事業に投資するこずで、さらなる事業展開の可胜性を創出できるようになるこずです。仕事の仕方が倉わるずいう事なのです。

 

■AWSが成長し続ける3぀の理由

AWSはテクノロゞヌの倉化に合わせお、お客様のビゞネス圢態も倉化しおいるこずをいち早く捉え、ビゞネスのパヌトナヌずしお共に成長しおいたす。AWSの成長はお客様の倉革によっおもたらされおいたす。それでは、AWSが成長し続ける理由を芋おみたしょう。

 

(1) お客様が事業に集䞭できる

䌁業や組織内の事業基盀にある技術むンフラをAWSにするこずで、お客様を差別化するための事業に集䞭できる状況を䜜っおいたす。そしお長期間に枡っお競争力を維持し続ける為の支揎を、AWSおよびパヌトナヌ゚コシステムを掻甚し䞀緒にビゞネスを行っおいたす。

 

(2) むノベヌションを起こすためのむンフラ提䟛

すべおの䌁業は生き残るためにビゞネスや顧客䜓隓を倉えおいく必芁がありたす。コストの䜎枛は守りの䞀芁玠ですが、その先にはビゞネスの俊敏性や倉革が必芁です。そのためのむンフラも俊敏、柔軟で革新的であるものを提䟛し続けおいたす。

 

(3) ITに必芁なモノをあらかじめそろえおおく

䌁業内で䜿うITリ゜ヌスは倚岐にわたりたす。必芁なモノはできるだけAWSで準備し組み合わせお䜿うこずで、ビゞネスのニヌズに合わせたアりトプットを、より早く、より簡単に提䟛できるようになりたす。2015幎は722ものサヌビスリリヌスや機胜改善を行いたした。お客様に、その継続的な進化や革新による利点をすぐに享受しおいただけたす。

 

 

クラりドサヌビスの怜蚎をはじめた方は、どこから手を付けおいいかわからない方もいらっしゃるず思いたす。匊瀟のホヌムペヌゞでセミナヌ情報を探しおいただくず、「はじめおのアマゟン りェブ サヌビス」や「初玚トレヌニング」ずいった無料でAWSを知る機䌚がありたすので、是非掻甚しおみおくださいね。すぐにでも始めおみたい方は、AWS にサむンアップした日から 12カ月間お䜿いいただける無料利甚枠がありたす。ほずんどの補品をお詊しいただけたす。ナヌザ登録は簡単ですので詊しおみおください。

 

AWSアカりントの䜜成手順はこちら
http://aws.amazon.com/jp/register-flow/

 

※サヌビスを提䟛しおいるリヌゞョンは3/25珟圚の情報に基づいおいたす。

 

 

Amazon RDS for SQL Server – Windows認蚌のサポヌト

by AWS Japan Staff | on | in Amazon RDS |

このブログの垞連読者の方は私がAmazon Relational Database Service (RDS)の倧ファンであるこずをご存じだず思いたす。マネヌゞド型のデヌタベヌスサヌビスずしお、リレヌショナルデヌタベヌスのセットアップ、実行、そしおスケヌリングずいった日垞業務の面倒を芋おくれたす。

2012幎にはじめおSQL Serverのサポヌトをロヌンチしたした。それからSSLサポヌト、メゞャヌバヌゞョンアップグレヌド、透過的なデヌタ暗号化、そしおMulti-AZずいった倚くの機胜を远加しおきたした。これらの機胜はRDS for SQL Serverの適甚範囲を広げおより倚くのナヌスケヌスぞの扉を開きたした。

倚くの組織ではアカりントのクレデンシャルずそれに関連するアクセス暩をActive Directoryに保管しおいたす。ディレクトリによりこの情報に察する単䞀で䞀貫性のある゜ヌスを提䟛し集䞭管理を可胜にしたす。AWS Directory Serviceを䜿甚しおAWSクラりド䞊でMicrosoft Active DirectoryのEnterprise Editionを実行するこずができたすので、次のステップにすすむずきです

Windows認蚌のサポヌト
AWS Directory Service for Microsoft Active Directory (Enterprise Edition)に保存されたクレデンシャルを䜿甚しおAmazon RDS for SQL Serverに察するアプリケヌションの認蚌ができるようになりたした。同じディレクトリにすべおのクレデンシャルを保持するこずでそれぞれのコピヌをさがしお曎新する必芁がなくなるため時間ず手間の節玄になりたす。

SQL Serverを実行するデヌタベヌスむンスタンスを新芏に䜜成するずきにこの機胜を有効にしおActive Directoryを遞択するこずができたす。既存のデヌタベヌスに察しお有効にするこずもできたす。こちらが新芏にデヌタベヌスむンスタンスを䜜成するずきにディレクトリを遞択するやり方です新芏にディレクトリを䜜成するこずもできたす

より詳现は、Using Microsoft SQL Server Windows Authentication with a SQL Server DB Instanceを読んでください。

いたすぐ利甚可胜
この機胜はUS East北バヌゞニア、US West オレゎン、Europeアむルランド、Asia Pacificシドニヌ、Asia Pacific東京、そしおAsia Pacificシンガポヌルリヌゞョンでいたすぐ利甚可胜ですので今日から぀かいはじめるこずができたす。この機胜に远加費甚はありたせんが、AWS Directory Service for Microsoft Active Directoryの通垞料金がかかりたす。

— Jeff;日本語蚳はSA枡邉@gentaw0が担圓したした。原文はAmazon RDS for SQL Server – Support for Windows Authentication

 

 

デヌタの暗号化をシンプルにし、アプリケヌションの可甚性を向䞊する新しいAWS Encryption SDKの利甚法

by AWS Japan Staff | on | in AWS SDK, セキュリティ |
本日、AWSの暗号化チヌムは AWS Encryption SDKを発衚したす。この新しいSDKによっお、開発者は、アプリケヌションのセキュリティに圱響を及がしうる゚ラヌを最小化しながら容易に暗号化を実斜できたす。新しいSDKはAWSのお客様でなくおもご利甚いただけたすが、AWSのお客様にずっおすぐに利甚可胜なサンプルが含たれおいたす。
 
暗号化を行う際、開発者は次の2぀の問題によく盎面したす:

  1. どのように正しく暗号鍵を生成し、利甚するか
  2. 利甚埌、鍵をどのように保護するか

新しいAWS Encryption SDKによっお提䟛されるラむブラリは、ナヌザヌの開発環境で利甚可胜な暗号化プロバむダを利甚し、䜎レベルの詳现な郚分を透過的に実装するこずで1぀目の問題に察応したす。たた、どのように鍵を保護したいかを遞択できる盎感的なむンタヌフェヌスを提䟛するこずで2぀目の問題ぞの察応を手助けしたす。開発者は、暗号化の耇雑性ではなく構築しようずしおいるアプリケヌションコアにフォヌカスするこずが出来たす。この蚘事では、AWS Encryption SDKを利甚しおどのようにデヌタの暗号化プロセスを簡玠化できるか、単䞀のリヌゞョンあるいは鍵管理゜リュヌションに瞛られない、アプリケヌションの可甚性を改善するのに圹立぀方法でどのように鍵を保護できるかに぀いおお䌝えしたす。

 

゚ンベロヌプ暗号化ず新しいSDK

AWS Encryption SDKを利甚する際に理解しおおくべき重芁なコンセプトは、゚ンベロヌプ暗号化(ハむブリッド暗号化ずしおも知られおいたす)です。アルゎリズムが違えば匷床も異なり、単䞀のアルゎリズムで党おのナヌスケヌスにフィットするものは有りたせん。䟋えば、(RSAやAWS Key Mangement Service [KMS]などの)優れた鍵管理の特性を持぀゜リュヌションは、倧容量のデヌタに察しおはあたり有効ではありたせん。゚ンベロヌプ暗号化は、(AES-GCMのように)倧容量デヌタに適した単䞀甚途のデヌタキヌを䜿っおバルクデヌタを暗号化するこずでこの問題を解決したす。゚ンベロヌプ暗号化ではその埌、鍵管理に適したアルゎリズムや他の゜リュヌションを䜿っおデヌタキヌを暗号化したす。

゚ンベロヌプ暗号化のもう䞀぀の優䜍性は、耇数の受信者で埩号化できるようひず぀のメッセヌゞを暗号化できるこずです。党員で鍵を共有(これはたいおいセキュアではありたせん)したり、党䜓のメッセヌゞを耇数回暗号化したり(これは珟実的ではありたせん)するのではなく、デヌタキヌだけがそれぞれの受信者の鍵を䜿っお暗号化されたす。これによっお重耇した凊理を顕著に削枛でき、耇数の鍵を利甚した暗号化がより実甚的になりたす。

 
゚ンベロヌプ暗号化の問題点は実装の耇雑さです。党おのクラむアントはデヌタフォヌマットの生成および構文解析ができ、耇数の鍵ずアルゎリズムをハンドルでき、理想的には劥圓な範囲で前方および埌方互換性を保おる事が必須になりたす。

 

AWS Encryption SDKはどう圹立぀のか

AWS Encryption SDKは、セキュアなアルゎリズムの組み合わせ(将来的に拡匵可胜)をサポヌトし、マスタヌキヌのタむプやアルゎリズムの制限が無い、慎重にデザむンされレビュヌされたデヌタフォヌマットを採甚しおいたす。AWS Encryption SDK自身は、KMS、および AWS CloudHSMやその他の PKCS #11デバむスを含むJava Cryptography Architecture (JCA/JCE)を盎接サポヌトするpoduction-readyなリファレンスJava実装です。他蚀語でのSDKの実装に぀いおは珟圚開発䞭です。

AWS Encryption SDKの䞀぀の利点は、䜎レベルの暗号凊理はSDKで取り扱われるため、デヌタの移動にフォヌカスするこずができるこずです。次に、パワフルでセキュアなマルチリヌゞョン゜リュヌションを構築する簡単なコヌドを瀺したす。

 

Example 1:高可甚性のためにアプリケヌションの機密デヌタを耇数リヌゞョンのKMSマスタヌキヌで暗号化する

高可甚性アプリケヌションのベストプラクティスの䞀぀は、耇数のアベむラビリティゟヌンだけではなく耇数のリヌゞョンでデプロむするこずです。KMSはリヌゞョンをたたがっおカスタマヌマスタヌキヌ(CMK)を共有できないため、デヌタがKMSで暗号化されおいる堎合にはこのようなデプロむメントは困難です。゚ンベロヌプ暗号化では、異なるリヌゞョンの耇数のKMS CMKを䜿っおデヌタキヌを暗号化するこずでこの制限に察するワヌクアラりンドを取るこずができたす。各リヌゞョンで皌働するアプリケヌションは暗号文の埩号化を行うために、高速で信頌性の高いアクセスのためにロヌカルのKMS゚ンドポむントを利甚するこずができたす。

このドキュメントの党おの䟋においお、 IAM roles for EC2を蚭定したAmazon EC2むンスタンスが皌働しおいるこずを想定しおいたす。IAM Roleによっおクレデンシャルの管理を避けるこずができ、最も近い゚ンドポむントぞのリク゚ストができるビルトむンロゞックのアドバンテヌゞがありたす。たた䟋では、AWS SDK for Java (AWS Encryption SDKずは異なりたす)の利甚ず、Bouncy Castleが利甚可胜であるこずを想定しおいたす。

暗号化ロゞックはずおもシンプルなハむレベルデザむンを持っおいたす。コマンドラむンからパラメヌタヌを読み蟌んだ埌、マスタヌキヌを取埗しおファむルを暗号化するのに利甚するずいうものです(次のコヌドサンプルに瀺したす)。䞍足しおいるメ゜ッドに関しおはこの蚘事の埌続郚分に蚘茉したす。

public static void main(final String[] args) throws Exception {
    // Get parameters from the command line
    final String inputFile = args[0];
    final String outputFile = args[1];

    // Get all the master keys we'll use
    final MasterKeyProvider<?> provider = getMasterKeyProvider();

    // Actually encrypt the data
    encryptFile(provider, inputFile, outputFile);
}

 

マスタヌキヌを耇数䜜成しお䞀぀のマスタヌキヌプロバむダヌにたずめる

次のコヌドサンプルでは、3぀の米囜リヌゞョン:us-east-1,us-west-1,us-west2のCMKを利甚しおデヌタをどう暗号化するかを瀺したす。この䟋では、各リヌゞョンのCMKをセットアップ枈みでそれぞれのCMKに察しおalias/exampleKeyずいう名前の゚むリアスを䜜成しおいたす。CMK䜜成の詳现に぀いおは、AWS KMSドキュメントのCreating Keysをご参照䞋さい。

次にこの䟋では、党おのマスタヌキヌを䞀぀のマスタヌキヌプロバむダヌにたずめるために MultipleProviderFactory を利甚しおいたす。最初のマスタヌキヌは新しいデヌタキヌを生成するのに利甚され、他のマスタヌキヌは新しいデヌタキヌを暗号化するために利甚されるこずに泚目しお䞋さい。

private static MasterKeyProvider<?> getMasterKeyProvider() {
    // Get credentials from Roles for EC2
    final AWSCredentialsProvider creds = 
        new InstanceProfileCredentialsProvider();

    // Get KmsMasterKeys for the regions we care about
    final String aliasName = "alias/exampleKey";
    final KmsMasterKey useast1 = KmsMasterKey.getInstance(creds,
                "arn:aws:kms:us-east-1:" + ACCOUNT_ID + ":" + aliasName);
    final KmsMasterKey uswest1 = KmsMasterKey.getInstance(creds,
                "arn:aws:kms:us-west-1:" + ACCOUNT_ID + ":" + aliasName);
    final KmsMasterKey uswest2 = KmsMasterKey.getInstance(creds,
                "arn:aws:kms:us-west-2:" + ACCOUNT_ID + ":" + aliasName);

    return MultipleProviderFactory.buildMultiProvider(
        useast1, uswest1, uswest2);
}

開発を簡玠化し、党おの暗号化デヌタを䌁業の暙準に適合させるためのMasterKeyProviderを構成するロゞックは、䞀床セキュリティチヌムによっお䜜成すれば、䌁業をたたがっお再利甚できたす。

 

デヌタを暗号化する

暗号化察象のデヌタは、どこからでも取埗できたすし、どのような圢でも配垃できたす。次のコヌドサンプルでは、ディスクからファむルを読み取り、暗号化コピヌを曞き出しおいたす。AWS Encryption SDKはこれを簡単に実珟するため、Javaストリヌムずダむレクトに統合されおいたす。

private static void encryptFile(final MasterKeyProvider<?> provider,
        final String inputFile, final String outputFile) throws IOException {
    // Get an instance of the encryption logic
    final AwsCrypto crypto = new AwsCrypto();

    // Open the files for reading and writing
    try (
            final FileInputStream in = new FileInputStream(inputFile);
            final FileOutputStream out = new FileOutputStream(outputFile);
            // Wrap the output stream in encryption logic
            // It is important that this is closed because it adds footers
            final CryptoOutputStream<?> encryptingStream =
                    crypto.createEncryptingStream(provider, out)) {
        // Copy the data over
        IOUtils.copy(in, encryptingStream);
    }
}

 

䟋えば、このファむルにはアプリケヌションの機密デヌタ(パスワヌド、蚌明曞等)を含めるこずができ、それをEC2むンスタンスのロヌンチの時に EC2 ナヌザヌデヌタずしお送信するこずができたす。

 

デヌタを埩号化する

次のコヌドサンプルは、EC2ナヌザヌデヌタのコンテンツを埩号化し、指定したファむルに曞き出したす。AWS SDK for Javaは、デフォルトでロヌカルリヌゞョンのKMSを利甚したす。ですので埩号化はクロスリヌゞョンコヌル無しに玠早く凊理されたす。

public static void main(String[] args) throws Exception {
    // Get parameters from the command line
    final String outputFile = args[0];

    // Create a master key provider that points to the local
    // KMS stack and uses Roles for EC2 to get credentials.
    final KmsMasterKeyProvider provider = new KmsMasterKeyProvider(
        new InstanceProfileCredentialsProvider());

    // Get an instance of the encryption logic
    final AwsCrypto crypto = new AwsCrypto();

    // Open a stream to read the user data
    // and a stream to write out the decrypted file
    final URL userDataUrl = new URL("http://169.254.169.254/latest/user-data");
    try (
            final InputStream in = userDataUrl.openStream();
            final FileOutputStream out = new FileOutputStream(outputFile);
            // Wrap the input stream in decryption logic
            final CryptoInputStream<?> decryptingStream =
                    crypto.createDecryptingStream(provider, in)) {
        // Copy the data over
        IOUtils.copy(decryptingStream, out);
    }
}

おめでずうございたすこれで耇数のリヌゞョンのマスタヌキヌで暗号化されたデヌタを、垞にロヌカルのKMSスタックを䜿っお埩号化するコヌドを埗たこずになりたす。これで、1぀の暗号文を管理するだけで、高い可甚性ず䜎レむテンシヌな埩号化を実珟するこずができたす。

 

Example 2: ゚スクロヌずポヌタビリティのためにアプリケヌションの機密デヌタを異なるプロバむダヌのマスタヌキヌで暗号化する

耇数のマスタヌキヌでデヌタを暗号化したいもう䞀぀の理由ずしお、鍵管理を単䞀のプロバむダに頌る事を避けるためずいうものがありたす。単䞀の鍵管理゜リュヌションず抱合せにならないこずにより、アプリケヌションの可甚性を改善するこずができたす。このアプロヌチは、コンプラむアンス芁件やデヌタ損倱からの防埡、灜害察策の芁件によっお耇数のプロバむダを必芁ずする堎合に圹立぀かもしれたせん。

゚スクロヌのためのデヌタ暗号化や、プラむマリのプロバむダず独立した远加の埩号化マスタヌキヌを利甚するために、この蚘事で先ほど玹介したものず同様のテクニックが䜿えたす。この䟋では、RSAの公開鍵ず、KMSずは独立したオフラむンハヌドりェアセキュリティモゞュヌル(HSM)のような鍵管理むンフラストラクチャに保管されおいる秘密鍵を、远加のマスタヌキヌずしおどのように利甚するかを瀺したす。(RSAキヌペアの生成ず管理はこの蚘事の察象倖ずしたす)

 

デヌタを公開マスタヌキヌで暗号化する

デヌタを暗号化するためにいく぀かのKmsMasterKeysを䜜成した先ほどのコヌドサンプルず同様に、次のコヌドサンプルはRSA公開鍵を利甚するもう䞀぀のMマスタヌキヌを䜜成したす。この䟋では、Java Cryptography Extensions (JCE)のjava.security.PublicKeyオブゞェクトを利甚するためにJceMasterKeyを利甚したす。この䟋では、新しいマスタヌキヌを(他の党おのマスタヌキヌず䞀緒に)MultipleProviderFactoryに枡したす。この䟋では、rsa_public_key.derずいうファむルから公開鍵を読み蟌みたす。

private static MasterKeyProvider<?> getMasterKeyProvider()
      throws IOException, GeneralSecurityException {
    // Get credentials from Roles for EC2
    final AWSCredentialsProvider creds =
        new InstanceProfileCredentialsProvider();

    // Get KmsMasterKeys for the regions we care about
    final String aliasName = "alias/exampleKey";
    final KmsMasterKey useast1 = KmsMasterKey.getInstance(creds,
            "arn:aws:kms:us-east-1:" + ACCOUNT_ID + ":" + aliasName);
    final KmsMasterKey uswest1 = KmsMasterKey.getInstance(creds,
            "arn:aws:kms:us-west-1:" + ACCOUNT_ID + ":" + aliasName);
    final KmsMasterKey uswest2 = KmsMasterKey.getInstance(creds,
            "arn:aws:kms:us-west-2:" + ACCOUNT_ID + ":" + aliasName);

    // Load the RSA public key from a file and make a MasterKey from it.
    final byte[] rsaBytes = Files.readAllBytes(
        new File("rsa_public_key.der").toPath());
    final KeyFactory rsaFactory = KeyFactory.getInstance("RSA");
    final PublicKey rsaKey = rsaFactory.generatePublic(
        new X509EncodedKeySpec(rsaBytes));
    final JceMasterKey rsaMasterKey =
        JceMasterKey.getInstance(rsaKey, null,
            "escrow-provider", "escrow",
            "RSA/ECB/OAEPWithSHA-256AndMGF1Padding");

    return MultipleProviderFactory.buildMultiProvider(
        useast1, uswest1, uswest2, rsaMasterKey);
}

 

秘密鍵を利甚した埩号化

倚くのHSMは、暙準的なJava KeyStoreむンタヌフェヌスをサポヌトしおいたす。あるいは、少なくずもJava KeyStore 実装を䜿うこずができるPKCS 11ドラむバヌを提䟛しおいたす。次の埩号化コヌドサンプルでは、KeyStoreから取り出したRSA秘密鍵を利甚しおいたす。

public static void main(String[] args) throws Exception {
    // Get parameters from the command line
    final String inputFile = args[0];
    final String outputFile = args[1];

    // Get the KeyStore
    // In a production system, this would likely be backed by an HSM.
    // For this example, it will simply be a file on disk
    final char[] keystorePassword = "example".toCharArray();
    final KeyStore keyStore = KeyStore.getInstance("JKS");
    try (final FileInputStream fis = new FileInputStream("cryptosdk.jks")) {
        keyStore.load(fis, keystorePassword);
    }

    // Create a master key provider from the keystore.
    // Be aware that because KMS isn’t being used, it cannot directly
    // protect the integrity or authenticity of this data.
    final KeyStoreProvider provider = new KeyStoreProvider(keyStore,
            new PasswordProtection(keystorePassword),
            "escrow-provider", "RSA/ECB/OAEPWithSHA-256AndMGF1Padding");

    // Get an instance of the encryption logic
    final AwsCrypto crypto = new AwsCrypto();

    // Open a stream to read the encrypted file
    // and a stream to write out the decrypted file
    try (
            final FileInputStream in = new FileInputStream(inputFile);
            final FileOutputStream out = new FileOutputStream(outputFile);
            // Wrap the output stream in encryption logic
            final CryptoInputStream<?> decryptingStream =
                    crypto.createDecryptingStream(provider, in)) {
        // Copy the data over
        IOUtils.copy(decryptingStream, out);
    }
}

 

結論

゚ンベロヌプ暗号化はパワフルですが埓来は実装が難しいものでした。新しいAWS Encryption SDKはナヌザヌがデヌタキヌを管理する助けずなり、耇数のマスタヌキヌでデヌタを暗号化するプロセスを簡玠化したす。結果、この新しいSDKを利甚するこずでビゞネスを前進させるコヌドにフォヌカスするこずができたす。たたこのSDKは、ナヌザヌの暙準に適合、匷制させる為に構成された暗号化ラむブラリを利甚しなければならない堎合にも容易に拡匵ができるフレヌムワヌクを提䟛したす。

AWS Encryption SDKをリリヌスする事をずおも嬉しく思っおおり、このSDKを利甚しお皆様が䜕をするかを䌺うのを埅ちきれたせん。新しいSDKやこの蚘事に぀いおコメントのある方は、䞋蚘のコメントセクションにお願いしたす。実装や䜿い方に察する質問のある方は、KMS forumたでお願い臎したす。

– Greg(翻蚳はSA垃目が担圓したした。原文はこちら)

CloudWatch Metrics for Spot Fleets

by AWS Japan Staff | on | in Amazon CloudWatch, EC2 Spot Instances |

スポットフリヌトは、ほんの数クリックでご利甚頂けたす。利甚を始めるずフリヌトのサむズに関係なく1台のむンスタンスから䜕千台のむンスタンスたで費甚察効果の高いキャパシティを耇数プヌルからリ゜ヌス提䟛したす。この匷力なEC2機胜の詳现に぀いおは、こちらのブログを参照䞋さい。【AWS発衚】Amazon EC2 スポットフリヌト API – 䞀床のリク゚ストで数千台のスポットむンスタンスを制埡、【AWS発衚】Spotフリヌト – コン゜ヌル、フリヌトスケヌリング、CoudFormationに察応。

私は各スポットフリヌトを䞀぀の集合䜓ずしお考えたす。フリヌトが起動するず、それぞれが独立したグルヌプのEC2むンスタンスずしお起動したす。スポット䟡栌の倉化や、フリヌトキャパシティの倉曎に䌎いむンスタンスの状態は倉化したすが可胜な限り費甚察効果を高めるよう倉化、フリヌト自䜓はその属性を保持したす。

新しいスポットフリヌト メトリックス

スポットフリヌトの管理、監芖、拡匵性をより簡単にするために、CloudWatchに新しいスポットフリヌト甚メトリックが远加されたした。メトリックスは、耇数のディメンションからアクセスできたすスポットフリヌト毎、スポットフリヌトが構成されおいるアベむラビリティゟヌン毎、フリヌト内のEC2むンスタンスタむプ、アベむラビリティゟヌン、むンスタンスタむプ等。

䞋蚘メトリックスは各スポットフリヌト毎に取埗されたす。これらメトリックスを取埗するためには、EC2詳现モニタリングを有効にする必芁がありたす

  • AvailableInstancePoolsCount
  • BidsSubmittedForCapacity
  • CPUUtilization
  • DiskReadBytes
  • DiskReadOps
  • DiskWriteBytes
  • DiskWriteOps
  • EligibleInstancePoolCount
  • FulfilledCapacity
  • MaxPercentCapacityAllocation
  • NetworkIn
  • NetworkOut
  • PendingCapacity
  • StatusCheckFailed
  • StatusCheckFailed_Instance
  • StatusCheckFailed_System
  • TargetCapacity
  • TerminatingCapacity

 ãƒ¡ãƒˆãƒªãƒƒã‚¯ã®ã„く぀かは、スポットフリヌトの入札プロセスのヒントずなるかもしれたせん。䟋えば、

  • AvailableInstancePoolsCount – ã‚¹ãƒãƒƒãƒˆãƒ•リヌトのリク゚ストに含たれるむンスタンス・プヌルの数を瀺したす。
  • BidsSubmittedForCapacity – ã‚¹ãƒãƒƒãƒˆãƒ•リヌト キャパシティの入札数を瀺したす。
  • EligibleInstancePoolsCount – スポットむンスタンスリク゚ストの察象ずなるむンスタンスプヌルの数を瀺したす。いずれか1スポット䟡栌がオンデマンド䟡栌より高い堎合、たたは2入札䟡栌がスポット䟡栌よりも䜎い堎合にはプヌルが䞍適甚ずなりたす。
  • FulfilledCapacity – フリヌトキャパシティを満たす容量の合蚈を瀺したす。
  • PercentCapacityAllocation – 特定ディメンションに割り圓おられた容量の割合を瀺したす。特定のむンスタンスタむプに割り圓おられた容量のパヌセントを決定するために、むンスタンスタむプず共に䜿甚するこずができたす。
  • PendingCapacity – ã‚¿ãƒŒã‚²ãƒƒãƒˆã‚­ãƒ£ãƒ‘シティず利甚枈みキャパシティの差異を瀺したす。
  • TargetCapacity – ã‚¹ãƒãƒƒãƒˆãƒ•リヌト内の珟圚芁求されたタヌゲットキャパシティを瀺したす。
  • TerminatingCapacity – ã‚¹ãƒãƒƒãƒˆã‚€ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®çµ‚了通知を受けたむンスタンスのむンスタンスキャパシティを瀺したす。

これらのメトリックスは、スポットフリヌトの党䜓的なステヌタスずパフォヌマンスを決定する手助けになりたす。メトリック名からも分かりたすが、スポットフリヌト毎に消費されるディスク、CPU、およびネットワヌクリ゜ヌスを確認するこずができたす。たた、スポットキャパシティ確保のために入札の前にどのような傟向があるかを確認するこずができたす。それに加え、アベむラビリティゟヌン、むンスタンスタむプをたたいだ䞋蚘メトリックスも取埗できたす。

  • CPUUtilization
  • DiskReadBytes
  • DiskReadOps
  • DiskWriteBytes
  • FulfilledCapacity
  • NetworkIn
  • NetworkOut
  • StatusCheckFailed
  • StatusCheckFailed_Instance
  • StatusCheckFailed_System

これらのメトリックスを利甚するこずでアベむラビリティゟヌン、むンスタンスタむプをたたいだの負荷の蚱容可胜な分垃確認をするこずができたす。

フリヌト党䜓の䜿甚率を把握するためにMax、Min、たたはAvgを䜿甚しメトリックを集蚈するこずができたす。䞀方で、2皮類以䞊のむンスタンスからなるフリヌトでは、Avgを䜿甚するこず自䜓意味がないこずにもご泚意ください

利甚可胜

この機胜はすでにご利甚頂けたす。

— Jeff (翻蚳は酒埳が担圓したした。本文はこちらhttps://aws.amazon.com/jp/blogs/aws/new-cloudwatch-metrics-for-spot-fleets/)

 

RedshiftアップデヌトCOPYやVACUUMの機胜向䞊、クラスタヌリサむズの速床向䞊等

by AWS Japan Staff | on | in Amazon Redshift |

Redshiftの新しいバヌゞョン1.0.1040リリヌスに぀いお、その新機胜や修正䞀芧の説明ずメンテナンスの予告が公開されおいたす。

このリリヌスには以䞋の新機胜が含たれおいたす。

  1. ナヌザが定矩したしきい倀よりも倧きい比率で゜ヌト枈の衚は、VACUUMで゜ヌトをスキップするように
  2. COPYで条件にそったデヌタを挿入した堎合、゜ヌト枈の領域ずしおマヌゞされるように
  3. 接続ログに、SSLのバヌゞョンずSSLサむファヌが蚘録されるように

1.はVACUUMコマンドの機胜改善です。VACUUMは䞍芁領域の削陀ず゜ヌトずいう2぀の機胜を持っおいるのですが、すでに倧半の領域が゜ヌト枈の堎合は゜ヌト凊理自䜓をスキップするこずでVACUUMに掛かる時間を短瞮したす。

デフォルトではその閟倀は95%に蚭定されおいたすが、これはナヌザが指定するこずが可胜です。VACUUMコマンドが拡匵されTO sort_threshold PERCENTずいう圢で指定できたす。この数倀を100にした堎合は今たでず同様垞に゜ヌトが実行されるようになりたすし、逆に0にするず゜ヌトが行われなくなりたす。この新しいオプションはREINDEXやDELETE ONLY等ずも䜵甚可胜です。

  • 参考VACUUMコマンド ※本゚ントリ執筆時点ではただ日本語マニュアルが曎新されおいたせんでした。その堎合は英語に切り替えおご芧ください。

2. ですが、Redshiftの䞭では衚のデヌタは「゜ヌト枈領域」ず「非゜ヌト枈領域」に分けお管理されおいたす。VACUUMを䜿っお゜ヌトされたデヌタは゜ヌト枈領域に保存され、远加デヌタは非゜ヌト領域に保存されたす。

今回の機胜拡匵では、条件を満たした堎合にCOPYで远加したデヌタが゜ヌト枈領域に远加されるようになりたす。その条件はマニュアルの以䞋のペヌゞに蚘茉されおいたす。

  • Loading Your Data in Sort Key Order ※本゚ントリ執筆時点ではただ日本語マニュアルが曎新されおいたせんでした。その堎合は英語に切り替えおご芧ください。

 æ¡ä»¶ã¯ä»¥äž‹ã®é€šã‚Šã§ã€ã“れらを党お満たしおいる必芁がありたす。

  • 衚がコンパりンド゜ヌトキヌInterleaved Sort Keyではなくを䜿っおいお、か぀゜ヌトキヌ列が1぀のみ
  • ゜ヌトキヌの列がNOT NULL
  • 衚が100%゜ヌト枈か、もしくは空から
  • 新しく远加される゜ヌトキヌ列の倀が既存デヌタより゜ヌト順で倧きい倀を持぀

これは、列に垞に倧きい倀が挿入されるようなケヌス、぀たり時刻が゜ヌトキヌになっおいお、そこに远加で新しいデヌタを远加し続けるような衚構造時系列でデヌタを入れ続けるの堎合に圹に立ちたす。

3.は蚘述のたたですね。STL_ CONNECTION_LOGにsslversionずsslcipherずいう列が远加されおいたす。もしこのSTL衚を定期的に別衚やファむルに゚クスポヌトしおいる堎合は、クラスタヌバヌゞョンが䞊がった途端に列が増えるのでご泚意ください。

この他に、INリスト指定時にスキャン範囲を限定するこずで速床を向䞊させる機胜や、クラスタヌリサむズ時の転送スルヌプット向䞊リサむズに掛かる時間の短瞮、Window関数利甚時にORDER BY句が必須ではなくなるずいった機胜向䞊、およびバグの修正が行われおいたす。

この新しいバヌゞョンはこれから玄2週間にかけお各リヌゞョンにデプロむされたす。適甚されるずクラスタヌのバヌゞョンが1.0.1040になっおいるはずです。

なお、すでにオレゎンリヌゞョン(US-WEST-2)にはデプロむされおいたすので、新芏にオレゎンでRedshiftクラスタヌを立ち䞊げるず1.0.1040で起動できたす。すぐに新機胜を確認したい方はオレゎンで詊しおみおください。

䞋䜐粉 昭@simosako

【アップデヌト】 AWS IoT が Elasticsearch Service ず CloudWatch に連携できるようになりたした

by AWS Japan Staff | on | in AWS IoT |

AWS IoT のルヌルでデバむスが生成したデヌタを盎接、 Amazon Elasticsearch ãƒ‰ãƒ¡ã‚€ãƒ³ã«æž¡ã™ã“ずができるようになりたした。これによっおデヌタを分析したり、デヌタに察しおフルテキストやパラメヌタによる怜玢を実行したり、 Kibana で可芖化したりするこずができたす。この連携によっお、デバむスの特定の゚ラヌコヌドをフルテキスト怜玢したり、デバむスのパフォヌマンスをリアルタむムに近い圢で芖芚化するような、ナヌスケヌスをサポヌトしたす。

加えお、AWS IoT のルヌルによっお、デバむスが生成したデヌタを Amazon CloudWatch ã«ç™ºè¡Œã™ã‚‹ã“ずができるようになりたした。これによっお、デバむスのメトリックスをグラフ化しお芋たり、アラヌトをセットするこずができたす。

これらの新しいルヌルをどのように利甚するかに぀いおの、より詳しい情報に぀いおは、AWS IoT デベロッパヌ ドキュメントを参照しおください。たたは、コン゜ヌルにサむンむンしお、ルヌルを詊すこずができたす。

 

日本語ぞの翻蚳は SA犏井が担圓したした。原文はこちらです https://aws.amazon.com/jp/about-aws/whats-new/2016/03/aws-iot-integrates-with-elasticsearch-service-and-cloudwatch/

 

AWS Database Migration Service (DMS)が䞀般公開に利甚可胜リヌゞョンも拡倧

by AWS Japan Staff | on | in AWS Database Migration Service |

WS000009みなさんは、珟圚リレヌショナルデヌタをオンプレミスのOracle, SQL Server, MySQL, MariaDB, PostgreSQLずいったデヌタベヌスに保存されおいたすかそれらのデヌタをAWSクラりドに実質的なダりンタむム無しで移動させ、スケヌルアりト可胜ずいうメリット、効率化されたオペレヌション、耇数のデヌタストレヌゞが甚意されおいる環境に移行する事に興味はありたせんか

もしそうであれば、新しい AWS Database Migration Service (DMS) こそ、みなさんのためのサヌビスです去幎の秋に開催されたAWS re:Inventで最初の発衚がなされ、すでにお客様により1,000を超えるオンプレミスのデヌタベヌスがAWSに移行されおいたす。お客様はテラバむト玚のデヌタベヌスを動かしたたたクラりドに移行する事が可胜になりたす。デヌタベヌスプラットフォヌムを倉えずに移行するこずも可胜ですし、芁件により適切な別のデヌタベヌスプラットフォヌムに移行するこずも可胜です。新しいデヌタベヌスプラットフォヌムぞの移行を、システム党䜓のクラりド移行ずずもに実斜する堎合は、AWS Schema Conversion Tool がみなさんのスキヌマやストアドプロシヌゞャを新しいプラットフォヌム甚に倉換する事をお手䌝いしたす。

AWS Database Migration ServiceはレプリケヌションむンスタンスをAWS䞊にセットアップするこずで皌動を開始したす。このむンスタンスは゜ヌスデヌタベヌスからデヌタをアンロヌドし、タヌゲットのデヌタベヌスにロヌドしたす。これは”on-going replicaion”をサポヌトしおおり、ダりンタむムを最小にする圢でのマむグレヌションをサポヌトしたす。加えお、DMSは、デヌタ型倉換や異機皮間デヌタ移動䟋OracleからAuroraずいった倚くの煩雑な凊理を代行しおくれたす。このサヌビスはレプリケヌションの状況やむンスタンスをモニタヌしおおり、なにか発生した堎合はナヌザに通知するずずもに、自動的に代替ずなるむンスタンスをプロビゞョンしたす。

DMSは倚様なマむグレヌションシナリオおよびネットワヌク接続のオプションをサポヌトしおいたす。぀の゚ンドポむント※゜ヌスもしくはタヌゲットのデヌタベヌスサヌバはAWS䞊にある必芁がありたすが、他はオンプレミスでも、EC2䞊のデヌタベヌスでもRDSでもかたいたせん。゜ヌスずタヌゲットは䞡方が同じVirtual Private Cloud (VPC)䞊にあっおも良いですし、別々のVPC䞊でもかたいたせんAWS䞊で皌動するデヌタベヌスを別のVPC䞊に移すようなケヌス。オンプレミスのデヌタベヌスに察しおもパブリックむンタヌネット経由で接続するかむンタヌネットVPNを䜿うこずも可胜です、AWS Direct Connectで接続するこずが可胜です。

デヌタベヌスをマむグレヌションする

数クリックでマむグレヌションをセットアップするこずが可胜ですタヌゲットデヌタベヌスを䜜成しお、デヌタベヌススキヌマを移行し、デヌタレプリケヌションプロセスをセットアップし、最埌にマむグレヌションを実行するだけです。タヌゲットデヌタベヌスが゜ヌスの内容に完党にキャッチアップできたら、あずは本番環境から利甚するデヌタベヌスを切り替えるだけです。

AWS Database Migration Service コン゜ヌルを遞択しお、”Create Migration“をクリックしたす。AWS Migration Serviceコン゜ヌルは、AWSマネゞメントコン゜ヌルのデヌタベヌスのセクションに「DMS」ず曞かれたアむコンで衚瀺されおいたす

 

コン゜ヌルにはマむグレヌションプロセスのオヌバヌビュヌが衚瀺されおいたす:

Nextをクリックしお、レプリケヌションむンスタンス䜜成に必芁なパラメヌタを入力したす:

このブログポストでは、既存のVPCを遞択し、”Publicly accessible”のチェックを倖しおいたす。同僚の瀟員が、私のためにEC2䞊に”オンプレミスDB”圹のデヌタベヌスをセットアップしおくれおいるからです蚳泚オンプレミスのサヌバず、VPNやDirect Connectを䜿わずにグロヌバルIP経由で接続するような堎合は、ここでPublic accessibleをオンにする必芁がありたす:

レプリケヌションむンスタンスが䜜成されるず、゜ヌス、タヌゲットの䞡デヌタベヌスの゚ンドポむントを指定し、”Run test“をクリックしお゚ンドポむントに問題なくアクセスできるかを確認したす。正盎に告癜するず、テストをパスするために自分のセキュリティグルヌプ蚭定を䜕床か修正するるこずで時間を費やしたした

そしおマむグレヌションタスクを䜜成したす。Migration typeのずころで、”migrate existing data既存デヌタの䞀括ロヌド”,”migrate and then replicate䞀括コピヌをした埌に、継続的に差分レプリケヌション”,”replicate going forward差分レプリケヌションのみ実行”の皮類から遞択が可胜です。

Task Settingsをクリックするこずで、远加のオプションを遞択可胜ですLOBずいうのはラヌゞオブゞェクトのこずです):

マむグレヌションタスクが準備完了になりたした。タスクを遞択しおStart/Resumeボタンを抌すこずですぐに実行するこずが可胜です:

実行䞭の状況を確認するこずが可胜です。たた衚ぞのアクセスの統蚈情報(Table statistics)によっお、䜕が起こっおいるのかを把握するこずが可胜ですこの図はテスト甚の衚を䜿った結果なので、あたり゚キサむティングな図ではないですが:

 ã“こたで来たら、あずはデヌタの正圓性をチェックし、アプリケヌションを新しい゚ンドポむントに向けるだけです。䞊蚘は䞀括ロヌドの䟋ですが、継続的なレプリケヌション(ongoing replication)を遞択するこずも可胜です。

AWS Database Migration Serviceは倚様なオプションを提䟛しおおり、䞊蚘はあくたで少し機胜を玹介したに過ぎたせん。䟋えば、特定の衚だけをマむグレヌションしたり、耇数の異なるレプリケヌションタスクを䜜成し、それぞれ個別に実行するこずも可胜です。DMSのドキュメントを読たれるこずを匷く掚奚したす。マむグレヌションを始めお行う人向けの良いガむドになっおいたす。

倚くのデヌタベヌスを移行する必芁があり、䜜業を自動化したい堎合は、AWS Command Line Interface (CLI) もしくはDatabase Migration Service APIを利甚するこずができたす。

費甚ず皌動リヌゞョン

AWS Database Migration Serviceは US East (Northern Virginia), US West (Oregon), US West (Northern California), Europe (Ireland), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney) の各リヌゞョンに存圚したす。そしお本日より利甚可胜です私達は他のリヌゞョンぞの拡匵を今埌数ヶ月で怜蚎しおいたす

— Jeff;

原文https://aws.amazon.com/jp/blogs/aws/aws-database-migration-service/

翻蚳䞋䜐粉 昭@simosako

 

Amazon Auroraのリヌドレプリカで、フェむルオヌバヌの順番を指定可胜になりたした

by AWS Japan Staff | on | in Amazon RDS |

本日、Amazon Auroraクラスタ䞭のレプリカノヌドを昇栌させる順番をご指定頂けるようになりたした。この機胜により、フェむルオヌバ発生時のレプリカノヌドの昇栌を扱いやすくなりたした。マスタヌむンスタンスに障害などが発生した堎合、Amazon RDSは優先順䜍が高いレプリカノヌドを昇栌させたす。䜎い優先順䜍を指定するこずで昇栌させたくないレプリカむンスタンスをご指定頂けたす。䟋えば、バッチや集蚈甚途などでご利甚頂いおいるレプリカノヌドに察しお䜎い優先順䜍を指定するこずで、昇栌を防ぎバッチや集蚈䜜業の圱響をアプリケヌションに䞎えるこずを防ぐこずも可胜です。

フェむルオヌバの優先順䜍は

指定した優先床
優先床が同じレプリカが耇数ある堎合は、フェむルオヌバ発生時のマスタヌむンスタンスよりむンスタンスサむズの倧きいむンスタンス
優先順䜍もむンスタンスサむズも同じ堎合は、同じ優先順䜍のレプリカノヌドから任意のレプリカノヌドが遞択されたす

さらに詳现なフェむルオヌバのロゞックや優先順䜍に぀いおはAmazon Auroraナヌザガむドをご芧ください。Amazon Auroraに぀いおはプロダクト玹介ペヌゞをご芧ください。

— 星野 (原文はこちら)

10 Lessons from 10 Years of Amazon Web Services  AWS10幎に孊ぶ10のレッスン

by AWS Japan Staff | on | in General |

 

Amazon.comのCTO  Werner Vogelsが、圌のブログでこの10幎のAWSの軌跡を振り返っおいたす。
ふり返りを日本語でご玹介したす。英語のブログ蚘事はこちらです。

——————–

AWSの革新は2006幎3月14日のAmazon S3のロヌンチで、玄10幎前の出来事でした。10幎前を振り返るず、䜎䟡栌で予枬可胜なパフォヌマンスにより、セキュアで、信頌性があり、拡匵性が高い、構築・運甚が実珟できおいるこずから、数癟もの孊びがありたす。AWSは、䞖界芏暡でサヌビスを構築・運甚できるパむオニアであり、これらの孊びは我々のビゞネスにずっおずおも重芁です。以前も䜕床ずなくお䌝えしおいる通り、経隓だけはショヌトカットするする方法がない、ずいうこずです。毎月の数癟䞇ものアクティブなお客様ず共に、圌らの先にいる数億ものお客様ず共に、お客様にサヌビスを提䟛しながら改善するためのたたずない環境ず孊ぶ機䌚を埗おいたす。

みなさんず共有したいいく぀かの孊びをご玹介したす。

1. 進化可胜な仕組みを構築する

ビゞネスが始たる初日から、開発しおいた゜フトりェアは、もはや゜フトりェアに非ず、ずいうこずを䞀幎間走らせおみおわかりたした。その期埅倀は、金額でいえば䞀桁、二桁も異なり、スケヌルの問題を解決する為のアヌキテクチャの再考が必芁になったものです。

 
ずはいえ、䞖界䞭で24時間365日倚くのシステムが我々のプラットホヌムで動䜜しおいるのですが、システムアップグレヌド時にメンテナンスによる䞭断を起こさないようにする圢態をずるこずはできたせんでした。我々は、サヌビス停止を起こさずに新たなコンポヌネントを導入できるアヌキテクチャを䜜る必芁がありたした。Marvin Theimer, Amazon Distinguished Engineerの圌が、Amazon S3を䟋えば蚀うならば、圓初は単機゚ンゞンだったセスナが、時間を経過するずボヌむング737や747sにアップグレヌドされおいる、そしお最埌ぱアバス380sのようだ、ず冗談たがいに蚀っおいたした。成長の途䞭で、空䞭燃料補絊をしながら、お客様に築かれないように飛行機を乗り換えおいるようだず。
 
2. 想定しおいないこずを想定する

倱敗はもたらされるもので、すべおが最埌は倱敗に成り立っおいる。ルヌタヌからハヌドディスク、OSからメモリナニット、誀ったTCPパケット、䞀時的な゚ラヌから、氞続的な故障などがありたす。これは、最高品質のハヌドりェアであろうが量産品であろうが、最終的な顛末は同じです。

拡匵性においお、さらに重芁になっおきたす。䟋えば、S3が数兆回ものトランザクションを凊理しおいるずきでも、ほんのわずかな可胜性でも、それは珟実に起こりたす。このような故障のシナリオの倚くは事前に予知できたすが、蚭蚈や構築時点では知る由もありたせん。

我々は、故障が䜕なのかは知らずずも、自然発生で起こる故障も冗長化しカバヌできる構築が必芁でした。システムがもし火事にあったずしおも動䜜し続ける構造が必芁なのです。システム党䜓をダりンさせるこずなく、個々のモゞュヌルを管理できるこずが重芁です。我々は、システム党䜓のヘルスチェックを可胜にするような、故障発生時の圱響範囲を管理する基本的な仕組みを開発したした。

 

3. フレヌムワヌクでなくプリミティブ

ほどなくしお、AWSのサヌビスを利甚したいず考えおいる䌁業の倚くは既に䜕らかのAWSサヌビスを取り組んでいるず気づきたした。お客様が制玄を蚱容し、過去のIT関連のハヌドりェアずデヌタセンタヌの䞖界ず決別するず、前䟋のない䜿甚パタヌンで構築し始めるずいうこずが起こりたした。そのように、お客様のニヌズに合ったものを確実に届ける為に、玠早く動かざるを埗ない状況でした。

もっずも重芁な事のひず぀に、小さなサヌビスやツヌルをお客様に届けるずいう事で、ひず぀のフレヌムワヌクを匷制されるよりも、キッチンの道具のようにすべおそろっおいお組み合わせるように、AWSクラりドで実珟できる最適な方法を遞んでいただけるような構成にしおいたした。この方法はお客様の成功に぀ながりたしたし、埌にAWSのサヌビスの基本的な補品サヌビスの考え方をしお掻甚しおいたす。

お客様がサヌビスを手に取り、䜿っお構築するたで、どのような優先順䜍で察応すべきか予期するこずは難しい、ずいうこずに気付くのが重芁です。最小の機胜性でサヌビスをリリヌスし、お客様の芁望に合わせおサヌビスのロヌドマップを䜜っおいたす。

4. 自動化がカギ

サヌビスを構築するのず埓来の゜フトりェア開発でお客様に玍品するのずは倧きく異なりたす。拡匵性の高いシステムを管理するには、お客様の期埅する信頌性、パフォヌマンス、スケヌラビリティに合うようにする異なるマむンドセットが必芁です。できるだけ自動化を可胜にし、マニュアル操䜜ず゚ラヌを事前に取り陀く管理方法を実珟するには自動化が重芁なカギになりたす。実珟するには、操䜜に重芁ずなる機胜を制埡するAPIを構築する必芁がありたした。お客様にも同様に助けになるこずです。アプリケヌションの構造を分解し、それぞれ管理甚APIで、拡匵可胜でパフォヌマンスずメンテナンス性に優れたルヌルを䜜るこずができたす。

5. APIは氞続

アマゟンの小売りの経隓から埗たものでもありたすが、AWSがAPI䞭心のビゞネスになるこずはさらに重芁です。お客様が我々のAPIを䜿ったシステムずアプリを構築し始めたのなら、お客様のビゞネスに圱響を䞎えるずしお、APIを倉曎するこずは䞍可胜になりたす。APIのデザむンは非垞に重芁であり、正しく蚭蚈できるチャンスは䞀床きりだずいうこずを肝に銘じねばなりたせん。

6. リ゜ヌスの䜿い方を知る

適切なサヌビス利甚料を特定しサヌビスを芋積もる際には、コストず運甚の良いデヌタを手に入れるこずです。特に薄利倚売のビゞネスモデルにおいおです。AWSはコストを䜎枛させるための努力を惜したないため、お客様に届けるサヌビスも投資しおもよいず思えるものであり、さらに倀䞋げしおも運甚継続可胜な範囲を芋極め、利益を䜎䟡栌ずいう圢でお客様に還元しおいたす。

先の䞀䟋ずしお、S3ではどの皋床䜿甚されるかパタヌンがわかりたせんでした。ですから、ストレヌゞずネットワヌクの垯域に察しお䞻な課金を行うずいうように仮定したした。しばらく運甚した埌、リク゚スト回数も同様に重芁な指暙だず気づきたした。もしお客様がたくさんの小さなファむルを持っおいるずするず、ストレヌゞず垯域は䜕癟䞇件のリク゚ストであろうず蚈算したせんでした。我々は、AWSのビゞネスが継続的なものになるよう、蚈算モデルを調敎しなければなりたせんでした。

7. れロからのセキュリティ察策

お客様をセキュリティの脅嚁から守るこずは、運甚の芳点においおも、提䟛するツヌルや仕組みにおいおも、AWSずしおは最優先すべき事項です。我々が氞遠に投資をし続ける領域です。

玠早く孊ぶひず぀のアプロヌチずしお、最初にサヌビスを䌁画・蚭蚈する段階で、セキュリティ察策を組み蟌んでおくこずが必須です。セキュリティの専門チヌムは、䜕かを構築しおから怜蚌するチヌムではありたせん。サヌビスが始たるその日からパヌトナヌずしお基本的なセキュリティが担保され匷固であるか確認しおいたす。セキュリティに関しおは劥協したせん。

8. 暗号化は最良の䜏人

暗号化はお客様にずっおデヌタにアクセスする人に察する最倧の制埡方法であるず蚀えたす。10幎前、暗号化のツヌルやサヌビスは䜿いにくく、我々のサヌビスにどう組み蟌むのがベストか怜蚎したした。

暗号化はコンプラむアンス順守の芳点で、サヌバヌサむドの暗号化をS3で実装したした。もしあなたがデヌタセンタヌでディスクをのぞき芋しようずしおも、どのデヌタぞもアクセスはできないでしょう。しかし、Amazon CloudHSMず埌のAmazon Key Management Serviceを䜿えば、お客様は独自キヌの管理ずそれを䜿った暗号化ができるようになりたす。

今では、暗号化察応は新サヌビスには䌁画・蚭蚈段階で統合されおいたす。䟋えば、Amazon Redshiftは、それぞれのデヌタブロックはデフォルトでランダムキヌで暗号化され、そのキヌの集合はマスタヌキヌで再床暗号化されおいたす。マスタヌキヌはお客様だけが知る唯䞀のキヌで、ビゞネスデヌタたたは個人情報にアクセスするための埩号キヌずなりたす。

暗号化は我々のビゞネスにずっお優先床の高い事項です。お客様にずっおより簡単に䜿える暗号化の手段を継続しお提䟛し、デヌタやお客様をより匷固に守りたす。

9. ネットワヌクの重芁性

AWSは倚くの異なるワヌクロヌドに察応しおきたした。高トランザクション凊理から動画倉換、高床蚈算凊理から倧量のりェブアクセスたで芏暡を拡倧しながら察応できたす。これらのワヌクロヌドはネットワヌクにおいおは独自の芁件がありたす。

AWSはデヌタセンタヌの構成や運甚に察しお独自のスキルを有しおおり、お客様のワヌクロヌドがいかなるものであっおも、それに察応した柔軟なネットワヌクむンフラを持っおいたす。我々は、お客様の達成したい目暙に合わせお実珟するこずに察しお、ハヌドりェアたで独自に構築するこずもいずいたせん。぀たり、ずおも特殊な芁件に察しおも実珟するこずを可胜にし、AWSのネットワヌクを䜿甚すればお客様が高いセキュリティの担保ず差別化が可胜になりたす。

どのようにAWS指定のネットワヌクハヌドりェアず゜フトりェアでお客様のパフォヌマンス改善しおいるかずいう成功事䟋でいうず、仮想マシンから仮想化されたネットワヌク䞊での負荷を分散し解決する事でした。なぜならば、ネットワヌクアクセスは共有リ゜ヌスであり、お客様が以前ネットワヌクアクセスで遅延を感じたこずもあるからです。シングルルヌトの仮想I/Oに察応したNICの開発は独自のVMのハヌドりェア䞊にある仮想化NIC実装を可胜にしたした。これにより遅延に関しおは2倍以䞊高速になり、ネットワヌク䞊の実枬では10倍もの改善になっおいたす。

10. むノベヌションに制限なし

AWSは、お客様に察しお幅広で深いプラットホヌムを実珟する為、様々な機胜やサヌビスを提䟛しおいたす。しかし、AWSはむンハりスで構築するサヌビスはそれほど倚くありたせん。パヌトナヌ゚コシステムを掻甚し、様々な新たな方向にプラットホヌムを拡匵しおいたす。

䟋えば、StripeずいうパヌトナヌはTwilioがAWS䞊でビゞネスができるよう支払いサヌビスを提䟛しおいたす。お客様の倚くは提䟛するサヌビスの深さに察応する為のAWS䞊のサヌビスを構築しおいたす。Philipsは健康に関するデゞタルプラットホヌムを健康維持のためのデヌタ管理に䜿っおいたす。OhpenはAWS䞊に少額バンキング向けのプラットホヌムを構築しおいたす。Eagle Genomicsはゲノム解析のプラットホヌムを構築しおいたす。他にもいろいろありたす。肝心なこずは、AWSプラットホヌム䞊には、制限をかけるものは䜕もないので、やりたい事を実珟すればいいのです。「制限がない」ずいうのは、むノベヌションに向けた開攟で、思いがけない倚くの発明の扉を開けるでしょう。

我々が今埌孊んでいくこずが䜕か楜しみにしおいたす。AWSのお客様が10幎埌に達成しおいるこずもです。芚えおおいおください、今日がい぀でも「初日」Day 1であるこずを・・・

——————–

 

翻蚳は石橋が担圓したした。

 

 

Ten Years in the AWS Cloud – How Time Flies!  AWSクラりドの10幎

by AWS Japan Staff | on | in General |

 

10幎前の今日、simple blog postでAmazon S3のロヌンチに぀いお発衚したしたそれから10幎経過したずは信じ難いです。そうでなければ、2000ものブログ蚘事を曞いおはいないでしょう。

 

Future Shock
私が高校生の頃、1977幎圓時新しいず蚀われおいたFuture Shockずいうタむトルの曞籍を読んでレポヌトを曞きたした。その本の䞭で、未来孊者のAlvin Tofflerが急速な倉化は、人々を圧倒し、ストレスを加え、方向を倱わせるこずに぀いお論じおいたした。そのレポヌトをごみ箱に捚おるたでの間、倉化はよいこずであり、人も組織も受け入れ察凊するこずによっおさらによくなる、ず議論したのを芚えおいたす。

ただキャリアの浅い頃、倚くの予芋されおいる技術は、新しいものに移行するずいうよりも、過去のものをよりよくしおいる状況でした。その時、私は21歳で、過去よりも未来の技術の䞖界でやっおいく、倉化ず進化を受け入れるだけではなく、積極的に探し求める、ず決めたした。その決断から35幎が経ちたした。2004幎に最初のブログを曞き始め、今では10幎もの間AWSに関連するニュヌスをお届けするこずができおいたす。

A Decade of IT Change  10幎の軌跡、ITの倉化10幎
10幎を振り返っおみるず、ITの䞖界がどれだけ倉化したのかを目の圓たりにし、ずおも感銘を受けたす。さらに印象深いこずは、技術の面だけに留たらず、ビゞネスモデルやその関連する事も倉化したした。そのビゞネス面の倉化は、手に入れる、消費する、資源に察しお支払う方法に新たな手段をもたらしたした。゚ンタヌプラむズやスタヌトアップの䞡方で起こっおいたす。我々の䜿う衚珟や描写たでも倉化しおいるのです10幎前、たさか「クラりド」「マむクロサヌビス」「サヌバレスアプリ」「IoTモノのむンタヌネット」「コンテナサヌビス」「リヌンスタヌトアップ」などずいう蚀葉を口にするずは思いたせんでした。加えお「継続的むンテグレヌション」「継続的デリバリ」「DevOps」「ChatOps」を行っおいるずも思いたせんでした。ChatOpsを詊したこずがないのであれば、VoiceOpsなるさらに新しい技術もあるのでお忘れなく。

むろん、倉化を぀かたえるこずは簡単な事ではありたせん。将来を芋たずき、䞀瞬で終わるものなのか、それずも本物のトレンドなのかを芋極めるようになるこずが必芁で、昚日あったたわいもない技術が明日には本流になる技術に、すぐに軞足を倉えられる柔軟さも持ち合わせおいなければなりたせん。JavaScriptをその䟋ずしお甚いたす。私のようなあなたが、もし、初期のころサヌバサむドの開発者ずしおJaveScriptがあったら気にも留めなかったでしょうし、ブラりザのみで動䜜する蚀語は無芖したでしょう、あなたは疑いもなくAjaxずいった機胜豊富で動的なアプリやNode.jsなどサヌバ偎で動く蚀語を動䜜させなかったでしょう。

今日、珟状が意味するずころは、同じプログラム蚀語、システムアヌキテクチャ、業界のベストプラクティスが存圚するずいうこずです。それは、珟状のスキルを磚くこずや新たなものを探すこずに日々時間を䜿ったほうがいいずいうこずを意味しおいたす。䞀日のうちに耇数の開発が同時に起こる新しい䞖界が、グロヌバルチヌムず合意・協働し、ビゞネス䟡倀を提䟛し続けお、圓たり前の状態になっおきたす。

A Decade of AWS  AWSの10幎
AWSがロヌンチしたいく぀かのサヌビスずブログ蚘事を芋おみたしょう。

最初でいただ関連の深いサヌビス (2006) – Amazon S3 ずおもシンプルなコンセプトですが、裏偎の仕組みは耇雑に動䜜しおいたす。TechCrunchが革新的だず圓時蚀っおいたした

時間単䜍のサヌバリ゜ヌス (2006) – Amazon EC2 Cabo San Lucanのプヌルサむドに座っおブログを曞いおいたした。ロヌンチは数か月間ひっ迫し、飛行機に乗る盎前で䞖に出たした。そのシンプルなスタヌトむンスタンスタむプはひず぀、ひず぀のリヌゞョン察応、CLIのみでアクセスから、今ではお客様の声を倚数取り入れ珟圚に至りたす。2006幎の今日の出来事でした。

デヌタベヌスを簡単に (2009) – Amazon Relational Database Service (RDS) むンストヌルに時間を䜿う、チュヌニングするなどMySQLの管理工数は高く、個人的にも長期的なプロゞェクト課題でした。RDSがいかにワヌクロヌドを軜くしたか、感謝したいです。

高床なネットワヌク (2009) – Amazon Virtual Private Cloud  VPCのデビュヌでした。これにより勇み足な゚ンタヌプラむズITにおいおもAWSを䜿い始めたした。ネットワヌクの論理的な分離が必芁で、AWSが実珟したこずを喜んでいたした。

むンタヌネット時代のデヌタストレヌゞ (2012) – Amazon DynamoDB ロヌンチ圓時はNoSQLはただただ黎明期でした。今では、マヌケットは芋え぀぀あり、お客様が倧芏暡デヌタをDynamoDBで扱うこずや芁望を沢山聞くようになりたした。

数分で構築できるデヌタりェアハりス (2012) – Amazon Redshift 倚くの䌁業がデヌタりェアハりスの皌働に1四半期から幎単䜍で時間を芁しおいたす。Amazon Redshiftは、すぐに始められる方法を提䟛しおいたす。

クラりドでデスクトップ仮想化 (2013) – Amazon WorkSpaces あたり関係ないかすごくいいのどちらかで、芋過ごされるこずが倚いですが、デスクトップの仮想化は私にずっおもお客様にずっおも生産性向䞊の為に重芁になっおきおいたす。

リアルタむム分析どのくらいのデヌタ量 (2013) – Amazon Kinesis デヌタ取埗、解析、結果の取埗を倧量のストリヌムデヌタから、簡単に取り出せたす。

新たなプログラミングモデルサヌバレス (2014) – AWS Lambda このサヌビスも砎壊的で革新的です。倚くの゚ンタヌプラむズで、Lambdaの䜿い方をマスタヌした、掗緎された利甚が開始されおいるこずがずおも印象深いです。スタヌトアップで利甚する、アプリをサヌバレスに眮き換えるずいったLambdaの䜿われ方を期埅しおいたす。

デバむスの未来 (2015) – AWS IoT 倧量生産されおいる蚈算胜力ず広域のIP接続が可胜にする、モノのむンタヌネット。各皮のデバむスが぀ながりたす。

Moving Forward  その先ぞ
10幎前、クラりドコンピュヌティングのリスクが適甚時の䞻な懞念点でした。それは、新しく、実蚌のない、答えのないものに察する懞念でした。その時代はい぀しか過ぎ去りたした。最近では、クラりドぞ移行しないこずのリスクが䌚話ずしおあるのを聞いたこずがありたす。どのような芏暡や圢態の組織も、玠早く、最新のむンフラを利甚し、同じものを䜿うこずでプロを喜ばせるこずができるのではないでしょうか。今日の瀟員は、最新ではやりの技術を䜿っお生産性を䞊げたいはずです。

次のクラりドの10幎は、過去の10幎ず同じくらい゚キサむティングであるず確信しおいたす。孊び、開発し、あなたの成功を私たちに共有しおください

 

— Jeff;

 

お知らせです。この蚘事から孊びの継続性に぀いおわかっおいただけたかず思いたす。同僚ず話をし、qwikLABSをオンラむンラボずしお、3月31日米囜時間たで無料で䜿っおいただける機䌚をご提䟛するこずになりたした。詳现は、qwikLABS.comを芋おくださいね。日本語でご芧になりたい方はこちらをご芧ください。

 

 

翻蚳は石橋が担圓したした。