タグ

awsに関するkorooooonのブックマーク (36)

  • サーバーレスパターン

    やりたいこと(ユースケース)から利用パターンへ到達できるように、ユースケース主導で紹介。利用するサービスのすべての機能をを覚えなくてもやりたいこと/部分からスタートできます。実際、類似するアーキテクチャの実例が多くあることがわかります。 パターン別のテンプレートから始めてみよう!  チュートリアルで体感しよう! - いくつかのパターンはテンプレート/雛形から始めることができます。それぞれのパターンの「Template」「Sample」「Solution」のリンク先を参照ください。 - 実際に作って動かせるチュートリアルに「Tutorial」「Workshop」リンクからアクセスできます。ちょっとしたトライに費用が気にならないのもサーバーレスの良いところ。 - 各パターンの特性に合わせたエラーハンドリングの記事を拡充中。それぞれのパターンの「エラーハンドリング」リンクからご確認ください。 -

    サーバーレスパターン
  • VPC内のLambdaからインターネットにアクセスする - Qiita

    VPC内にLambdaを配置すると、VPC内のサービスへの接続はとても簡単だけど、インターネットに疎通させようとした時に一手間必要だったので、そのメモ。 手順 以下の手順を踏むことになります。 Lambdaに「AWSLambdaVPCAccessExecutionRole」の権限をアタッチしたIAMロールを割り当てる プライベートサブネットとパブリックサブネットを作成する パブリックサブネット内でNATゲートウェイを作成する NAT/インターネットゲートウェイを各サブネットのルートテーブルで割り当てる Lambdaをプライベートサブネットに配置する 出来上がる構成はこんな感じになります。(あんまり自信ないけどこうなるはず) インターネットアクセスの先として、DynamoDBをとりあえず考えた場合の構成になってます。 一つずつ内容を残しておきます。 Lambdaに「AWSLambdaVPCA

    VPC内のLambdaからインターネットにアクセスする - Qiita
    korooooon
    korooooon 2017/06/12
    lambdaからインターネットに接続
  • AWSでジョブWorkerを構成するベストプラクティス 〜 Beanstalk worker tierの巻 | DevelopersIO

    よく訓練されたアップル信者、都元です。先日、AWSでジョブWorkerを構成するベストプラクティス 〜 SQSの巻として、SQSを使ったスケーラブルなジョブWorkerアーキテクチャをご紹介しました。人間相手のHTTPリクエストの間に完了させるには長すぎるジョブを実行したい場合は、とりあえずSQSに投げて非同期に処理させよう、という仕組みです。 投げる側は、Javaであればこんな感じですね。キュー毎にURLがあるのでそれを指定して適当なメッセージ(来はJSONなんかが良いんだと思います)を投げ込みます。 sqs.sendMessage(new SendMessageRequest(QUEUE_URL, "foobar")); Worker側としては、こんな感じでメッセージを受信しては処理して削除、というのを繰り返せばよいです。 while (true) { ReceiveMessageR

    AWSでジョブWorkerを構成するベストプラクティス 〜 Beanstalk worker tierの巻 | DevelopersIO
  • AWSでジョブWorkerを構成するベストプラクティス 〜 Brianの巻 | DevelopersIO

    よく訓練されたアップル信者、都元です。ここまで「AWSでジョブWorkerを構成するベストプラクティス」と題して2の記事を書いてまいりました。SQSの巻では、バックグラウンドジョブの実行にはSQSを使ってスケーラビリティを確保しようという、下図中の中段の話をしました。続いてBeanstalk worker tierの巻では、Workerの実装方法として、図中の下段の話をしました。今回は、上段の話です。 ジョブスケジューリング ここまでの話では「ジョブは、ユーザからのWebサーバへのリクエストに伴って発生する」という暗黙の前提で進めてきました。具体的には動画のエンコーディングや、少々時間の掛かる集計処理等をイメージして頂いたと思います。 しかし、ジョブというのは「ユーザのリクエスト」に起因して発生するばかりではありません。ユーザからのリクエストに関わらず「定期的な繰り返し」という、スケジュ

    AWSでジョブWorkerを構成するベストプラクティス 〜 Brianの巻 | DevelopersIO
    korooooon
    korooooon 2017/03/17
    worker
  • 0から始めるAWS入門③:ELB編 - Qiita

    この設定の動作を要約すると、ELBが5秒間隔でEC2インスタンスへHTTPアクセスし、200okが返ってくるようであれば正常とみなす。 レスポンスとして40xや50xが2回連続で返ってくれば、異常とみなし対象のEC2インスタンスは自動で切り離される。 再度、5回連続で200okが返るようになれば、再度対象EC2インスタンスを繋ぎ直す。 サブネット このELBが担当するサブネットを設定する。 現時点ではVPC内にSubnetを1つしか作成していないため、該当サブネットをAdd(+マーク)する。 VPC内に複数のSubnetが存在し、それらSubnetを跨るELBを作成する場合は、別途それらSubnetを含めるようにする。 セキュリティグループ 前回は、EC2インスタンス向けのセキュリティーグループを作成したが、今回はELB向けのセキュリティグループを設定する。 [Assign a secur

    0から始めるAWS入門③:ELB編 - Qiita
  • Amazon VPCを使ったミニマム構成のサーバ環境を構築する | DevelopersIO

    よく訓練されたアップル信者、都元です。AWSにおいては、ネットワーク環境をあまり気にせず、数クリックで簡単にサーバを構築できるのは一つのメリットだと言えます。しかし、格的に運用するシステムに関しては、ネットワーク環境をコントロールする需要も出てきます。AWS Virtual Private Cloud (VPC)を使えば、AWS上に仮想ネットワークを定義し、その上に各種サーバを配置することができます。 深く考えずに非VPC環境に構築してしまったAWSサーバ環境は、簡単にはVPC環境に移行することはできません。従って弊社では、小さなシステムであっても、最初からVPC環境にシステムを構築することを推奨しています。「非VPCが許されるのは小学生までだよねー」とボスが申しておりました。かといって、ネットワークの構成をゼロから考えて構築するのもひと苦労であるため、エントリーでは、システムの初期段

    Amazon VPCを使ったミニマム構成のサーバ環境を構築する | DevelopersIO
  • AWSの障害情報を効率的に収集する方法 | DevelopersIO

    こんにちは、城内です。 全然ブログが書けていなくて、大変申し訳ない気持ちでいっぱいな今日この頃です。 はじめに AWS上のシステムを運用している人たちは、日々AWSに関するいろいろな情報をチェックしていることと思います。はっと思った人は、こんなエントリーを参考にしてくださいね。 【備忘録】AWSの最新情報が公開される場所をまとめてみた AWSの各サービスの稼働状況について 上記のエントリーにも記載がありますが、基的にはAWS Service Health Dashboardを見れば各サービスの稼働状況は分かります。 ただ、やっぱりいちいち見に行くのは面倒なので、RSSリーダーとかを使って更新情報を見れるようにしたいですよね。まあ、RSSフィードがあるのでそれを登録すればよいのですが・・・。 RSSリーダーへの登録 AWS Service Health Dashboardを見てもらえれば分

    AWSの障害情報を効率的に収集する方法 | DevelopersIO
  • AWS ElasticCacheのRedisをDefault設定で使ったときのConnection Leakの解決方法 - Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)

    現在、弊社にて提供しているサービスのほぼ全てにおいてAWS(Amazon Web Service)を利用しており、その中でも頻繁にアクセスが必要なデータについてはElasticCacheのRedis/Memcachedを利用しています。今回は、そのElasticCacheでRedisを利用する場合において、弊社の運用で発生してしまったトラブルと対応方法について紹介させていただきたいと思います。 TL;DR AWS ElasticCacheのRedis ServerのDefaultのパラメータ設定では、Connection Timeoutの設定がされていないので、そのまま放置するとConnection数が溜まり続けて危険ですので、ConnectionのTimeout設定を行いましょうというお話になります。 今回発生した問題 Blue-Green Deploymentを多用して何度もデプロイを

    AWS ElasticCacheのRedisをDefault設定で使ったときのConnection Leakの解決方法 - Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)
  • Amazon ELBでSSL設定をしてみる

    SSL証明書も取得したので、HTTPS通信できるようにしたい!! でっ、AWSの場合どうするのか。 ELBのSSL設定という題にしたにもかかわらず、どんな仕組みかあまり理解していないので一緒にお勉強しましょう。 ELBのSSL Terminationのサポートって何がすごいの? AWS Elastic Load BalancingによるSSL Terminationのサポートを発表 通常の場合、WEBサーバにSSL証明書をアップロードする必要がある。 複数台サーバ使う場合も、それぞれのインスタンスで暗号化、復号化処理をしているので、各々負荷がかかる。 つまり、EC2を複数スケールアウトする場合、EC2それぞれにSSL証明書をアップしないといけなかった。 しかし、ELBでSSL Termination(HTTPSの暗号化と復号化のプロセス)の設定をすると、各インスタンスにSSL証明書をアップ

    Amazon ELBでSSL設定をしてみる
  • AWSのELBにSSLを設定する(Nginx) - Qiita

    AWSでELBを利用していて、Nginxでサーバ構築している場合の設定方法です。 参考 SSLストア 1,050円でRapidSSLをnginxに簡単導入! AWSに適切なSSL証明書の購入を考える SSLについて SSLは通信の暗号化 サブドメインでも利用する場合「ワイルドカード」対応のものを選択 SSLについて分からない場合でもAWSのELBへの設置であれば以下の手順でOKです。 CSRの作成 証明書購入後のアクティベートで必要となるもの。事前に作成しておく。今回のAWS・ELBへのSSL設定の場合、ローカルで作成しても問題なかった。その他の環境の場合はサーバ側での作成が必須となるかもしれない?(Keyがサーバ側にあるかどうかだと思う、AWSではELBにアップロードするので。)。 Amazon ELB 用に、パスフレーズなしのCSRを作成する手順 AWSのELBに設置する場合は、パスフ

    AWSのELBにSSLを設定する(Nginx) - Qiita
  • Pre-warming した複数の ELB を Route 53 で DNS ラウンドロビンする – I'm Sei.

    Pre-warming 状態の ELB でも、想定するトラフィック等によっては 1 つでは対応しきれないことがあります! (Pre-warming については 大量同時アクセスに備えて ELB を Pre-warming 状態にしておく を参照) そういう場合は、Route 53 で DNS ラウンドロビンを設定して、複数の ELB にトラフィックを分散させるようにしておきます。 手順はそれほど難しくないのですが、忘れそうなので公開メモっておきます。 rr-sample.uniba.jp というホストに 2 つ ELB をもたせたいという気持ちでいきます! まずは、ELB を作ります。 つぎに、Route 53 にうつり、ELB の数だけ A レコードを作成します。 Alias の Yes を選択することで、ターゲットが入力できるようになります。 フォーカスをあわせると、S3 のバケットや

    Pre-warming した複数の ELB を Route 53 で DNS ラウンドロビンする – I'm Sei.
    korooooon
    korooooon 2014/10/16
    ロードバランサ
  • 大規模トラフィックを捌くための CloudFront 以外の選択肢 – I'm Sei.

    〜 大晦日に秒間 1 万ユーザを捌くためにやったこと (ロードバランサー編) 〜今回、ロードバランサーは全面的に AWS の Elastic Load Balancing (ELB) を使用しました。 Web API を提供するシステムにはもともと ELB を使う予定だったのですが、静的ファイルの配信などは ClouldFront + S3 という構成でいこうと思っていました。 が、最終的には静的ファイルを配信するシステムも ELB + EC2 という構成になりました。 そのへんの経緯とか、AWS を使うときのシステムのフロント周りの負荷分散にはどういう選択肢があるのかとか、軽くまとめてみようと思います。 静的ファイルの配信には CloudFront を使ったほうがいいのかCloudFront は S3 と併用することで、静的なファイルの配信のことはほとんど考えなくていい、というくらい簡単

    大規模トラフィックを捌くための CloudFront 以外の選択肢 – I'm Sei.
    korooooon
    korooooon 2014/10/16
    ロードバランサ
  • 「特定のS3バケットのみ操作可能+アカウント内の他のバケットは見れない」ユーザーとバケット設定 - Qiita

    用途 ファイルのアップロード先としてS3バケットを多数作成しているが、 バケット毎に使用する人が違うため、IAMユーザーで権限管理する。 IAMポリシーとS3バケットポリシーの2つを設定しなければならない。 IAMポリシー { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:*", "Resource": "arn:aws:s3:::s3bucket-name" } ] } { "Version": "2008-10-17", "Statement": [ { "Sid": "PublicReadForGetBucketObjects", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::AWSアカウントID:user/IAMユー

    「特定のS3バケットのみ操作可能+アカウント内の他のバケットは見れない」ユーザーとバケット設定 - Qiita
  • awsのs3を操作する為のaccess keyとsecret keyを取得する(IAM) – joppot

    概要 皆さんこんにちはcandleです。今回はrailsphpからS3にファイルをアップロードしたりする権限を取得する方法を紹介します。一般にS3にファイルをアップロードしたり削除するにはアクセスキーとシークレットキーをIAMから取得する必要があります。 興味深いのはS3に限らないのですが、aws環境ではそれぞれのサービスに例えばS3やRDSに外部からアクセスする権限を管理するのがそれぞれのサービスではなくてIAMというサービスになります。 故にS3を操作する場合でも権限関連はIAMで作成します。 逆に言えば、このアクセスキーとシークレットキーがあればどこからでもS3にアクセスしてファイルを編集したり、削除できたりできます。別の記事にあるように、自宅のMacPCからもS3にアクセスできるようになります。 図にすると、下の様になります。 前提 awsのアカウントを持っていて割と自由に使える

    awsのs3を操作する為のaccess keyとsecret keyを取得する(IAM) – joppot
  • EC2を停止して開始した時はELBに再登録する | DevelopersIO

    こんにちは、虎塚です。 今日は、ELBに紐づけたEC2を停止・開始した時に、EC2をELBに再登録する必要があることについて書きます。 これはELBを使い始めるとすぐに遭遇する問題のため、お客様からのお問い合わせが多い話題です。今月(2014年9月)すでに2件の問い合わせがあったので、書いておくことにしました。 現象 ELBと紐づけたEC2が、ELBから正しく認識されていて、リクエストを分配できる状態の時、ELBのステータスは「In Service」となります。ELBにEC2を紐づけてすぐの状態だと「Out of Service」ですが、数分たつと「In Service」になりますね。 ところが、ELBと紐づけたEC2を停止して、一定時間後に開始した後、「Out of Service」のままになることがあります。 公式ドキュメントによる解説 公式ドキュメントでは、この件について次のように書

    EC2を停止して開始した時はELBに再登録する | DevelopersIO
  • nginxを用いてX-Forwarded ヘッダー付のSSL通信が行える環境を構築してみる | DevelopersIO

    はじめに 番はELBへのアクセスをHTTPS通信を行い、開発等では通常のHTTPで構築をすると言ったケースもあるかと思います。 そういった場合においてELBからアプリケーションへの転送をHTTPとして構築した場合、 アプリケーションをELB配下に持っていた際にも動く事を意識して開発を進める必要が有ります。 ただ、そういったケースにおいて、アプリケーションを実装を確認するにはどうすればよいでしょうか。 AWSを用いて環境を立ち上げるのも手ですが、 確認したいのはELB配下にHTTPで通信を待っているアプリの挙動を確認するといった際に、 ちょっと大げさな話になってしまいます。 そういったケースにおいて手元で確認したいと言った際に、以下の方法で試す事が可能です。 ELB配下のアプリケーションはELBにきたHTTPSアクセスを認識することができるのか? ELBのフロントエンドをHTTPSとしバッ

    nginxを用いてX-Forwarded ヘッダー付のSSL通信が行える環境を構築してみる | DevelopersIO
  • Amazon EC2から負荷テストを行うときの落とし穴と対策 | DevelopersIO

    ども、大瀧です。 ここのところ新機能を追いかける記事ばかりだったので、今回は少し毛色の異なるノウハウ系を書いてみます。 負荷テストの前置き(読み飛ばし可) 「Webサイトがテレビ番組で紹介されることになった!大幅なアクセス増がやってくる!」という場合に、ロードバランササービスのElastic Load Balancing(ELB)やCDNのCloudFrontなどスケールするサービスを組み合わせ乗り切るというのは、クラウドらしい柔軟性の高さを活かせる典型な例かと思います。実際、弊社の事例でも多くのお客様に提供し、ご好評をいただいています。 これらのサービスを構成するにあたり、実際のアクセス増に耐えられるか試すため負荷テストを実施することも多いと思いますが、大規模なケースになってくると難しいのが負荷テストを実施するマシンの確保です。これについてもAmazon EC2であれば、Auto Sca

    Amazon EC2から負荷テストを行うときの落とし穴と対策 | DevelopersIO
  • Amazon EC2(Linux)のネットワーク設定でハマったときに見るメモ | DevelopersIO

    ども、大瀧です。 LinuxのEC2インスタンスでちょっと変わったネットワーク設定をしようとすると、思う通りに動かなかったり設定が見えなかったりと、オンプレミスとは雰囲気の異なる振る舞いをすることがあります(質的にはオンプレミスとなんら変わらないのですが)。自身で経験したケースをメモ書きとして残しておきます。 想定するLinux OS : Amazon Linux, CentOS 6.x, RHEL 6.xなどRed Hat系ディストリビューション /etc/resolv.confを変更したのになぜか元に戻ってしまう DHCPクライアントによるものです。DHCPクライアントは定期的にIPアドレス更新の問い合わせをDHCPサーバーに行いますが、そのときに付随するDNSの情報を元にデフォルトで/etc/resolv.confファイルを上書きします。これを無効にするためにNICの設定ファイル/

    Amazon EC2(Linux)のネットワーク設定でハマったときに見るメモ | DevelopersIO
  • Amazon LinuxのmotdにEC2のName Tagを表示する | DevelopersIO

    こんにちは。望月です。 今日はEC2をちょっと便利に使うための小ネタです。 Message of the Day(motd) message of the day(motd)とは、Linuxサーバにログインした時に表示されるバナーのことです。 Amazon Linuxだと、↓のような画面が表示されることでおなじみですね。 このmotdに、「今どのサーバにログインしたのか」を表示するのは結構一般的なのではないでしょうか。サーバ名を表示するために/etc/motd直接編集したことがある方もいると思います。 ですが、Amazon Linuxではmotdに関する落とし穴があります。cron.dailyにてupdate-motdというプログラムが実行され、日次で/etc/motdの内容が書き換わります。Amazon Linuxの最新パッケージの情報などが常に表示されているのは、このupdate-mo

    Amazon LinuxのmotdにEC2のName Tagを表示する | DevelopersIO
  • Amazon Route 53でドメインを購入する | DevelopersIO

    ども、大瀧です。 昨日、Amazon Route 53の大規模アップデートがあり、以下2つの新機能と値下げが発表されました。 ドメイン登録(Gandi SASとの提携)・管理機能の追加 地理情報によるレスポンス機能の追加 問い合わせ課金の20%値下げ こちらの記事では、ドメイン登録機能について概要と手順をご紹介します。 概要 従来、Route 53を利用するためには事前にレジストラで用意する必要がありました。今回のアップデートでRoute 53の管理画面およびAPIでドメインが購入/移管できるようになりましたので、ドメインの手配からDNSレコードの設定までのDNSの一連の管理をRoute 53がワンストップで提供できるようになりました。 登録手順 では、登録手順を追って行きます。まずはAWS Management ConsoleでRoute 53の管理画面を表示します。今回のアップデート

    Amazon Route 53でドメインを購入する | DevelopersIO