LambdaからEC2を起動、終了してみたAWS特集Lambda2014年12月17日t.honda(143)25この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。はじめにt.hondaです。タイトル通り、LambdaからEC2を起動し、EC2での処理を完了後、EC2自体を終了させてみました。LambdaはAWS上のイベントにて処理を開始しますが、タイムアウト時間(現在は最大60秒)があります。Lambdaにてプログラムを書けるとはいえ、EC2内で実行した方がいい処理もあるかと思われます(ローカルストレージを使用したいなど)。前書きが長くなりましたが、今回行ってみたLambdaからのEC2の起動は以下のようなケースを想定しています。AWS上のイベントの発生により開始したいバッチ処理などで、時間が掛かるケースAWS上のイベントの発生により開始したいが、EC2の方が処理を実行し易いケースEC2をメインの処理中のみ動かすことで、インスタンスのコストを圧縮したいケース実装について処理の流れ処理の流れとしては、以下のようになります。以下、上述した処理の流れに沿って実装について書いていきます。1.ユーザがS3のバケットにファイルを配置することで、Lambdaが起動するS3にバケットを用意します。今回は「t-honda-lambda-ec2-start」という名前としました。Functionを起動するよう設定します。S3イベントを扱うを参考にしてください。タイムアウトは、30秒としました。Functionです。JavaScriptを使用し、EC2を起動しています。ec2Start();};3.EC2にて時間が掛かる処理を実行する(今回は単純なsleep処理)4.処理完了後、S3のバケットに処理終了を表すファイルを出力する上記2.にて起動するEC2に、以下のRubyを配置します。ここで実際は何らかの処理を行う。resultこのRubyを、Cronにてインスタンス起動時に実行されるよう設定します。バケット(「t-honda-lambda-ec2-stop」というバケット名)に処理終了を表すファイルを出力します。Functionが起動し、EC2を終了する最初とは別のバケットを用意します。今回は「t-honda-lambda-ec2-stop」という名前としました。Functionを呼び出すように設定します。ec2Stop();};実行してみる実際に処理を実行し、キャプチャを取ってみました。時系列に並べただけですが、処理の流れが分かるかと思います。SDKを呼ぶことができるので、AWS上のイベントからLambdaを起動し(現時点ではS3、Dynamodbなど限られますが)、別のサービスを呼び出すなど色々な使い方を想像できますね。今回の処理はLambdaの重複起動などは考慮しておりません。実際にはDynamoDBも使い、EC2の起動中・処理中も考慮すると、より良い構成になるかと思われます。1,438,343手を動かす(プログラムを組む)ことで技術を理解するプログラマです。ソースコードから理解する技術、について書いていきたいと思います。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。和樹25こんにちは植木和樹@上越オフィスです。Terminalの機能確定版がリリースされたので試してみました。CAFEの他、NTTデータとセブンイレブンの取り組みや、サインポスト、Zippinなどの各社と流通・小売業との連携を業界マップに作成してみました。川原征大4形態素解析の入門中で、ブログの内容の分析を試しています。作業効率化をしたという話。夏目祐樹395こんにちは、CX事業本部の夏目です。MacのタッチバーのタッチIDが非常に便利なのですが、Terminalでsudoを叩かないと行けないときに使えたらなぁと思ったので、情報を共有します。臼田佳祐295ワークフロー自動化OSSのn8nをAWS環境で建てて検証してみました。非常に期待できるサービスです。Fargateの勉強をしています。使ってみたい方は参考にしてください。洋介255SnowflakeがAWSの東京リージョン上で稼働するようになりました。データを日本に置けます。芳賀健233こんにちは!猫様の忠実なるしもべ、芳賀健です。Tokyoで開催されました。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。