メディア統括本部 サービスリライアビリティグループ(SRG)の鬼海雄太(@fat47)です。 #SRG(Service Reliability Group)は、主に弊社メディアサービスのインフラ周りを横断的にサポートしており、既存サービスの改善や新規立ち上げ、OSS貢献などを行っているグループです。 本記事は、Amaz
2023-10-01T00:00:00.000Z 3a1e28ee-19ba-3ae8-3af1-2a2ae2cf1a2b Task timed out after 300.49 seconds Lambda を実装する上では冪等性が重要で、このようにタイムアウトが発生したとしても次に開始される処理には影響がないようにすることが求められます。が、場合によっては上記のタイムアウト時の仕様が困ったことになる場合があります。当社で Lambda を使った処理を実装している上でも、Lambda 内のある処理がされないうちにタイムアウト時間に到達してしまうことで、運用上想定していない挙動が発生してしまうことがあり、頭を悩ませていました。 Lambda を graceful にシャットダウンさせたい Python にはデコレータ[1]という概念があり、これを使うことで関数の前後に任意の処理を追加するこ
2024年9月26日、Amazon AuroraのMySQL互換エディションに、Aurora Serverless v2とAuroraプロビジョニング済みデータベースインスタンス向けの再設計されたRDS Data APIのサポートが追加されました。 主なポイントは以下の通りです: セキュアなHTTPエンドポイントを通じて、データベースドライバーやコネクション管理なしでSQLステートメントを実行可能になりました。 以前はAurora Serverless v1の単一インスタンスクラスターのみで利用可能で、1秒あたり1,000リクエスト(RPS)の制限がありましたが、新設計ではこの制限が撤廃されました。 接続プーリングによりアプリケーションのスケーラビリティが向上しました。 AWS SDKとCLIを通じて利用可能で、AWS AppSync GraphQL APIを介したアクセスも可能です。 A
Amazon Aurora MySQL 互換エディションで、Aurora Serverless v2 および Aurora でプロビジョニングされたデータベースインスタンス用に再設計された RDS Data API がサポートされるようになりました。安全な HTTP エンドポイントを経由してこれらの Aurora クラスターにアクセスし、データベースドライバーを使用したり、接続を管理したりすることなく SQL ステートメントを実行できるようになりました。これは、昨年の Aurora Serverless v2 と Aurora でプロビジョニングされたデータベースインスタンス向けの Amazon Aurora PostgreSQL 互換エディション向け Data API のリリースに続くものです。 当初、Data API は、1 秒あたりのリクエスト数 (RPS) の上限が 1,000 件
はじめに 今回はCloudflare R2について今更ながら解説します。 この記事はHIKKYアドベントカレンダー3日目の記事です。 3日目の夜に書いてます。なんでや。 色々な記事が出る予定ですので是非ご覧ください。 2日目はSakamotoさんによるメタバースイベントサイト開発、Webアプリケーション開発、個人開発で得た、Nuxt3の「わがった!」と「わがんない」です。良ければこちらもご確認くださいませ また明日はFukuroさんによる「爆速デプロイ!?Cerebriumについて」についてです。こちらもお楽しみに。 Cloudflare R2について 要は「S3互換システム」のうちの一つで、Cloudflareがサービスを提供しているものです。S3互換システムを名乗っていることもあって、コマンドのほとんどの部分がS3クライアントと互換性があります。 小噺: 語源について Cloudfla
各方面でご好評をいただいている本講義資料ですが,この度増補・改訂のうえ書籍として出版することが決定いたしました! 書籍限定の書き下ろしの3章 (約100ページ分!)を新たに追加して,2021年9月27日に発売予定です. この資料を気に入っていただいた方は,手に取っていただけるとありがたいです. ここで公開している資料は引き続きオンラインで無料で読めますので,ご安心ください🙇
あしざわです。 現在開催されているAWS re:Inforce 2024 のKeynote にて、AWS IAMのrootユーザーおよびIAMユーザーのMFA(多要素認証)としてPasskeyのサポートが発表されました。 AWS What's newブログ、AWS Blogの両方で発表されています。 概要 本アップデートによって、AWSのrootユーザー、IAMユーザーのMFAデバイスとしてPasskeyが利用できるようになります! AWS側で発行したPasskeyをGoogleアカウントや1passwordなどのクラウドサービスに登録することで、MFA認証としてPasskeyを利用してAWSアカウントにログインできるようになります。 AWS Blogに以下のように記載があるため、初回のリリース時はPasskey+パスワード認証のみでパスワードの利用は必須であるようです。今後のリリースでP
はじめに イタンジのエンジニアリングマネージャーの田渕です。 イタンジで採用を検討しているDebeziumという技術では、(使い方によっては)MySQLのSystem Databaseの一つであるmysql.hostテーブルというテーブルにアクセスする必要があります。 先日、その検証をAmazon Aurora MySQLのとあるインスタンス上で行っていたところ、そのインスタンスのmysql.hostテーブルが破損していることが判明しました。 いろいろ試しましたが、自力では復旧することが不可能であり、最終的にはサポートの方に直していただきました。 めったに無いことかとは思いますが、同様の現象に陥った方の助けになればと思い、詳細を書いていきます。 現象 SHOW TABLESをした結果には、mysql.hostテーブルが存在しますが、SHOW CREATE TABLEをすると、テーブルが見つ
この記事について 本記事は、筆者が普段AWSの各種サービスを使って感じた感想・気づきをもとに、クラウドアーキの設計やサービスのより良い使い方Tipsを考察するシリーズです。 第二弾も第一弾に引き続きDynamoDBについてです。 DynamoDBはkey-value型のNoSQLであり、従来よく使われていたRDBとは異なるDB特性・クエリ特性を持っています。 そのためRDBを設計するときと同じようなノリでスキーマ設計・テーブル設計を行うと、後から「この操作をやらせるならDynamoDBじゃないほうが良かったんじゃないか?」ということが発覚しがちです。 本記事では筆者が遭遇した「DynamoDBでやらせてみたら苦労した・できなくて設計変更を強いられた」というユースケースをまとめることで、DynamoDBのクエリ特性や適性を考察することを目指します。 使用する環境・バージョン 2024/1/1
こんにちは、MackerelチームでSREをしている id:heleeen です。 2023年3月に実施したMackerelのメンテナンスでは、データベースをAmazon RDSからAmazon Auroraに移行しました。この記事ではAuroraを選択した背景や、移行で考慮したことについてお伝えします。 データベースのアップグレードを機に検討 Auroraへ移行することによるメリット パフォーマンスの改善 マイナーバージョンアップのダウンタイムが短く サイジングを適切にできリソース活用も効率的に リードレプリカの運用負荷も改善 Auroraのリードレプリカを利用した移行 RDSにAuroraのリードレプリカを作成する リードレプリカの昇格と切り替え 本番のAurora移行に向けて準備したこと 検証環境で移行して課題を確認 本番メンテナンス時のバックアッププランを用意 Mackerelのメ
AWS クラウドについて楽しく学ぶことができるマンガのコンテンツです。「クラウド技術を学びたいけど、何から始めていいかわからない」、「参考書を読み始めたけど、もっと楽しく学びたい」という方は、ぜひご一読ください。 やる気に満ち溢れた新米エンジニアが、知識ゼロから、AWS に出会ってクラウドを使いこなしていく成長日記。楽しいストーリーにのせて、WEB サーバー、統合開発環境、Web アプリケーション開発ツール、機械学習、ビジネスインテリジェンス、などの幅広い AWS クラウドのサービスを学ぶことができます。また AWS 認定資格やユーザーコミュニティ、AWS のコワーキングスペースやイベントについても知ることができます。 地方の中小企業を舞台にした、総務部員たちによる AWS クラウド奮闘記。デジタルトランスフォーメーション(DX)という大きな目標に向かって、IT に苦手意識を持つ主人公たち
概要 『実践Terraform』は、Terraform初級者から中級者向けの解説書です。 技術書典6とBOOTHで累計1,500部以上を販売した「Pragmatic Terraform on AWS」という同人誌をベースにしています。 もともと140ページの同人誌でしたが、商業誌化にあたり100ページ近く追記しています。 特に後半は大半が書き下ろしで、「中長期の運用」や「変更しやすいシステムにするための設計」に関する知見をたくさん詰め込みました。 構成 『実践Terraform』では、Terraformを使ってAWS上にシステムを構築するノウハウを紹介します。 200以上のサンプルコードを用意したので、手を動かしながら一緒に学びましょう。 第1章から第3章が「入門編」で、Terraformの基礎知識を一気に習得します。 第4章から第16章が「実践編」で、最初にシステム全体のアーキテクチャ設
昨日の「AWSのAZの割り当ては、アカウントごとに違うという話」で宿題として残した、マルチAZ構成で単一AZの障害の影響を受けるのは何故かという問題について考えてみます。キーワードはELBです。 前提としてのELBの実装(の予想) マルチAZ構成での障害発生原因を検討する前に、まずELBの実装について考えてみましょう。5年ほど前に書いたELBの挙動からみる内部構造の推測です。 blog.takuros.net 旧ELB(CLB)をもとに書いていますが、ALBでも大きく変わらないと思います。要点としては、ELB自体は、AWSが管理するEC2インスタンス上で稼働し、バランシング先のAZにそれぞれ配置されているということです。図ではELBインスタンス(仮称)として表しています。そして、ELBインスタンスへの振り分けはDNSの名前解決で実現している点です。このアーキテクチャは私の個人的な予想ですが
Amazon Web Services(以下AWS)は、SQL互換の新しい問い合わせ言語およびそのリファレンス実装である「PartiQL」をオープンソースとして公開したことを発表しました。 PartiQLはSQL互換の構文に最小限の拡張を施すことで、リレーショナル形式のデータベースだけでなく、KVSやJSONなどを含むNoSQLデータベースやCSVファイルなど、さまざまなデータソースに対して横断的に検索できる問い合わせ言語およびそのリファレンス実装です。 下記はPartiQLを発表したブログからの引用です。 Today we are happy to announce PartiQL, a SQL-compatible query language that makes it easy to efficiently query data, regardless of where or in
PayPayエンジニアが明かす「100億円キャンペーン」のシステムの舞台裏 数々の問題を解決するためにやったこと PayPay 100億円キャンペーンのシステム構築 #1/2 2019年6月12〜14日、幕張メッセにて「AWS Summit Tokyo 2019」が開催されました。アマゾンウェブサービス (AWS) に関する情報交換や、コラボレーションを目的として行われるこのカンファレンスでは、140社以上の利用企業による先進事例セッションをはじめ、数々のイベントを実施しました。プレゼンテーション「PayPay 100億円キャンペーンのシステム構築 」に登壇したのは、PayPay株式会社プロダクト本部の山本啓介氏とShilei Long氏。スマホ決済アプリとして新規参入した同社が展開し、日本中の話題をさらった「100億円キャンペーン」の技術的背景について語ります。前半パートとなる今回は、山
はじめに おはようございます、加藤です。Terraformを使ってEKSを作成してみました。 やってみた 解説 コードはGitHubにアップしています。すぐにデプロイしたい場合はクローンして使用してください。 vpc.tf data "aws_availability_zones" "available" {} resource "aws_vpc" "vpc" { cidr_block = "${var.vpc_cidr_block}" enable_dns_hostnames = true enable_dns_support = true tags = "${merge(local.default_tags, map("Name", "${local.base_name}-vpc"))}" } resource "aws_subnet" "subnet" { count = "${va
AWS SAMのサーバーレスアプリケーションを用意する 下記のサーバーレスアプリケーションを流用します。 電車の運行情報(遅延・運転見合・運休など)を毎朝Slackに通知してみた | Developers.IO Slackで「今の電車の運行情報」を自分だけに教えてくれるSlash commandsを作った | Developers.IO 今のWebhook URLの扱い template.yamlでLambdaの環境変数として定義しています。 Parameters: SlackWebhookUrl: Type: String Default: hoge Resources: NotifyPeriodicFunction: Type: AWS::Serverless::Function Properties: CodeUri: hello_world/ Handler: periodic.l
コンテナ。それは便利そうではあるが、面倒くさそうであり、積極的に取り入れるべきか微妙な存在。 個人的な感想としては、慣れるまでそれなりに大変・慣れれば楽しく便利。そう、つまり触ってみないと何もわからない、いつものヤツだ!細かいことはスッとばして、最低限の感触を掴むための構築手順を AWS + Terraform を用いて懇切丁寧に分解していくぞ! 目的 AWSはチョットデキルし、コンテナに触れてみたいんだけど、何から手を付けたらいいかよくわからない。くらいのコンテナ初心者向けの内容にしていきます。コンテナ感覚を得るための具体的な構築メインなので、細かい話は飛ばし気味にいくため、ド素人向けではないです。 今回、構築するのはよくあるWEBサイトのような形をした超簡易的なコード管理とコンテナ運用で、それをAWSで表現していきます。これがスタンダードな構成だ、というわけではなく、これを1つのベース
(通常の~/.ssh/configはこちら -> https://k-sasaki.net/2018/02/230/) AWSとかで踏み台サーバ経由する方法とかまぁよくある話なので、ProxyCommandで対応するメモ。(よく忘れる、てかキーを間違えるw) こんな感じの構成だとする。 local-machine -- step-server -- target-server 下記をlocal-machineの.ssh/configに書いておく # 踏み台サーバ Host step-server Hostname step-server.com User step-server-user Port 22 IdentityFile ~/.ssh/id_rsa_step_server # ターゲットサーバ Host target-server Hostname target-server.co
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く