AWS、何から勉強したらいい?に対する俺の答え – Qiita

AWS、何から勉強したらいい?に対する俺の答え – Qiita. このツイートがわりと好評だったので解説。 <blockquote class=”twitter-tweet” data-lang=”ja”><p lang=”ja” dir=”ltr”>「AWS、何から勉強したらいい?」に対する俺が考… 記事を読む. この記事へのコメント( 記事に関するツイートを自動収集しています ). Ajax loader. 続きを読む

【材料】ユニリタ—LIVE UNIVERSEがAPN Partner of the Year 2017 Japanを受賞

ユニリタ<3800>が提供するフル動画教育・人材育成サービス「LIVE UNIVERSE」が、2月28日開催された「AWS Partner Network Award 2017」にて、 … この賞は、AWSのSaaSビジネスに大きく貢献し、市場に大きな影響を与えた企業に贈られ、同社の最新のアーキテクチャの活用やAIを用いたサービス展開が評価された。 続きを読む

年末のJAWS-UG名古屋はre:Inventの振り返りLT(ただしLong Talk)

年末のビッグイベントであるAWS re:Inventからしばらく、各地のJAWS-UG勉強会はre:Inventの振り返りで盛り上がる。筆者はそのひとつ、JAWS-UG名古屋の勉強会に行ってきた。いや、ラスベガスに行ってきたと言って過言ではないだろう。それくらい、re:Inventで発表された新サービスを網羅したLTを聞いた。Lightening Talk … 続きを読む

テラスカイ−小安い オートバックスセブンのSAPをAWSに移行支援

テラスカイ−小安い オートバックスセブンのSAPをAWSに移行支援. テラスカイ<3915.T>が小安い。同社は2月26日大引け後に、グループ会社であるBeeX(東京都中央区)が、オートバックスセブン(9832)の「SAP」会計システムを、オンプレミスからAWS上へ移行する支援を行ったと発表した。 データ移行には、セキュアな … 続きを読む

カテゴリー 未分類 | タグ

テラスカイ-小安い オートバックスセブンのSAPをAWSに移行支援

テラスカイ<3915>が小安い。同社は2月26日大引け後に、グループ会社であるBeeX(東京都中央区)が、オートバックスセブン(9832)の「SAP」会計システムを、オンプレミスからAWS上へ移行する支援を行ったと発表した。 データ移行には、セキュアなアプライアンスを使用したペタバイト規模のデータ転送ソリューション「AWS … 続きを読む

カテゴリー 未分類 | タグ

【材料】テクマトは朝安スタートも切り返す、AWSを活用したコンタクトセンターサービスを提供開始

テクマトリックス<3762>は朝安でスタートしたものの切り返し4日続伸となっている。この日の午前中に、連結子会社クロス・ヘッドが、アマゾン ウェブ サービス(AWS)が提供するクラウド型コンタクトセンターサービス「Amazon Connect」を活用したコンタクトセンターサービス「Managed Connect Service」(MCS)の提供を … 続きを読む

カテゴリー 未分類 | タグ

懇親会

概要. JAWS DAYS 2018の40を超える全セッションが終わり、いっぱいインプットができたと思います。 そこで最後に、参加者だけでなく、スタッフも登壇者もみんな一緒に、懇親を図っていくための企画です。 今回の懇親会では、3つのセクションを設けています。 Keynote登壇者へのインタビュー; AWS Samuraiの発表; LT大会 … 続きを読む

ACCESS-続伸 「AWS IoTコンピテンシーパートナー」に認定

ACCESS-続伸 「AWS IoTコンピテンシーパートナー」に認定. ACCESS<4813.T>が続伸。同社は16日に、同社のビーコンプラットフォームサービス「ACCESS Beacon Framework」の提供において、Amazon Web Services(米国ワシントン州)のクラウドコンピューティングサービスであるアマゾン ウェブサービス( … 続きを読む

この熱気こそニュース!聖地神戸で「Alexa Day 2018」なう

その他、Alexa Skill kitやAVS(Alexa Voice Service)の解説、バックエンドを構成するAmazon Machine Learningの説明、デバイス管理に向けたAWSソリューションなどを解説するセッションが行なわれたほか、LT形式によるAlexaのスキルコンテスト、Alexaを含めたIoT、AI、サーバーレスなどのテクノロジーにエンジニアは … 続きを読む

ローカルでLambdaのテストをする環境を作ったメモ

何?

Lambdaをテストする際、いちいちUPしてCloudWatchを確認して・・・とテストするのは辛いのでローカルでテストする環境を作る。
作ったメモ

検証環境

Mac: macOS Sierra
awscli: aws-cli/1.14.32 Python/2.7.13 Darwin/16.7.0 botocore/1.8.36
nodejs: v9.4.0
npm: 5.6.0
docker: Version 17.06.2-ce-mac27

ディレクトリ構成

.
├── docker-compose.yml
├── event.json
├── index.js
├── package.json
└── template.yml

aws-sam-localのインストール

npm i aws-sam-local -g

私はこいつはグローバルインストールしている

手順

作業ディレクトリの作成と移動

コマンド
mkdir test
cd test

npm install

npm init -y
npm i aws-sam-local aws-sdk --save-dev

sam-localが使用するYAMLの作成

template.yml
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
  lambdaFunction:
    Type: AWS::Serverless::Function
    Properties:
      Handler: index.handler
      Runtime: nodejs6.10

localstack用のYAMLファイル作成

docker-compose.yml
version: '2.1'
services:
  localstack:
    image: localstack/localstack
    ports:
      - 4567-4583:4567-4583
      - 8080:8080

スクリプトの用意

index.js
'use strict';

const AWS = require('aws-sdk');
const S3 = new AWS.S3({endpoint: 'http://<ローカル端末のIP>:4572', s3ForcePathStyle: true});


exports.handler = (event, context, callback) => {
    console.log(`EVENT is ${event}`);
    uploads3().then(() => {
        callback()
    });
};

const uploads3 = () => {
    return new Promise((resolve, reject) => {
        let param = {
            Bucket: "xxxxxxxxxxxxxbbb",
            Key: "test2.txt",
            Body: "fugafuga"
        };
        console.log(param);

        S3.putObject(param, (err, data) => {
            if (err) {
                console.log(err, err.stack);
            } else {
                console.log(data);
            }
            resolve();
        });
    });
};

ダミーイベント作成

コマンド
sam local generate-event dynamodb > event.json

local-stackの起動(バックグラウンド起動)

コマンド
docker-compose up -d

lambdaのローカル実行

コマンド
sam local invoke lambdaFunction -e event.json 
  • アップロード用のS3バケットのダミーは最初に作っておくこと。
  • samが呼んでくるlambda動かすdockerからlocalstackへのネットワーク疎通が通らなかったからEndpointは端末のIP指定している。

ローカルでCLI使ってlocalstackは疎通出来るのに、docker上で動いてるLambdaスクリプトから接続ができなくてすっごいハマった。

参考

[新ツール]AWS SAMをローカル環境で実行できるSAM Localがベータリリース

AWS SAM Local と LocalStack を使って ローカルでAWS Lambdaのコードを動かす

続きを読む