マイナー・マイナー

隠れた名作の発掘が生きがい。

AWSのAPI GatewayとLambdaでサーバレスな環境を構築


スポンサードリンク

今更ながらサーバレスアーキテクチャという言葉を知ってときめいてます。これはさっそく試してみるしかない!そんなわけで、AWSでサーバレスな環境構築を試してみました。API GatewayとLambdaを用いて構築です。

初期設定

AWSアカウントの作成
・MFA(Multi-Factor Authentication)の設定
・IAMユーザーの作成
このあたりは下記を参考に設定。

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく

API Gatewayの構築

マネジメントコンソールのサービスからAmazon API Gatewayを選択し、「今すぐ始める」をクリック。

f:id:yosinoo:20170412211844p:plain
API名を適当に入れて「APIの作成」をクリック。


f:id:yosinoo:20170412211859p:plain
リソースを選択し、アクションのプルダウンから「メソッドの作成」を選択。


f:id:yosinoo:20170412211908p:plain
Getを選択し、チェックマークをクリック。


f:id:yosinoo:20170412211919p:plain
まだLambda関数を作っていないので、作成できず…

Lambda関数の作成

先の画面から「Lambda 関数を作成します」をクリック。

f:id:yosinoo:20170412211932p:plain
プルダウンよりNode.js 6.10を選択し、候補に出てきた「ブランク関数」を選択。


f:id:yosinoo:20170412212149p:plain
トリガーにAPI Gatewayを選択。


f:id:yosinoo:20170412211953p:plain
API名、デプロイされるステージ、セキュリティを適当に設定。


f:id:yosinoo:20170412212003p:plain
名前を適当に入力し、ランタイムはNode.js 6.10を選択。コードは、handlerが”JOJO”の文字を返すように記述。


f:id:yosinoo:20170412212124p:plain
ハンドラ、ロール、ロール名を適当に設定。

再びAPI Gatewayの構築

GETのセットアップをリロード。

f:id:yosinoo:20170412212202p:plain
先ほど作成したLambda関数が選択できるようになっているので、選択して保存。


f:id:yosinoo:20170412212212p:plain
APIの実行経路みたいなのができる。


f:id:yosinoo:20170412212223p:plain
アクションからAPIのデプロイを選択。


f:id:yosinoo:20170412212233p:plain
新しいステージを選択し、ステージ名を適当に入力してデプロイ。すると、URLができる。このURLにアクセスすると”JOJO”の文字が取得できた!

まとめ

すごい簡単。APIやアプリに複雑な機能がないのであれば、サーバレスアーキテクチャを検討しても良いかも。