AWS DevDay Japan 2022 で登壇した際の資料です
この記事は Tech KAYAC Advent Calendar 2021 の20日目の記事です。 こんにちは、バックエンドエンジニアの @commojun です。今年のTech KAYAC Advent Calendarは3度めの参戦です!よろしくお願いいたします! 本日の記事は、昨年の記事の続きで、Amazon EC2のプロダクトをAmazon ECS構成へと乗り換えた話になります! techblog.kayac.com 目次 目次 背景 Amazon Linuxのサポート終了 ついでにPerlのバージョンもあげた 苦労したポイント 1,デプロイ方法がめっちゃ変わる デプロイのために都度コンテナイメージを焼く 2階建て作戦 2,batchサーバどうするの問題 sqsjfr + SQS + sqsjkr 作戦 3,泥臭い戦い ecspressoの存在 非エンジニアにもわかってもらおう 「
コンサル部のtobachi(@toda_kk)です。 先日、Docker ComposeによるAmazon ECS対応がGAになりました! AWSによるアナウンス Dockerによるアナウンス 本ブログでも過去に記事がでていましたが、Dockerでは以前からAmazon ECS対応が進んでおりdocker ecsというコマンドがベータ版として提供されていました。 何ができるのか 今回は装いを新たにdocker composeというコマンドで、Amazon ECSでクラスターを作成しコンテナを実行できるようになったようです。 $ docker context create ecs ${context-name} $ docker context use ${context-name} $ docker compose up これだけです。もちろん事前にAWSアカウントの認証情報を用意しておく
今回は Digdag と Embulk を用いて分析基盤を作ったことについて書きます。 意外とハマりポイントが多く、ネット上に知見もそこまで多くなかったため Tips や解決策を書きます。 実行時の環境は以下になります。 背景 社内では Redash を用いて様々な部署の方がデータの分析をしています。 Redash からアクセス可能なデータの中には秘匿情報も含まれるため、権限管理で分析基盤へのアクセスを厳しく制限する形をとっていました。そこで、社内でより分析をしやすい状態を目指し、秘匿情報をマスキングすることで社員なら誰でもアクセスして問題ない状態を作ることにしました。 このような仕組みを作ると何かしらの情報漏洩が発生するリスクを限りなく小さくできるので、サイトのみならず、会社の信頼性に繋がります。やったね。 今回はワークフローエンジンの Digdag とバルクデータローダーの Embul
Introduction Why Containers? What is a container? What is Docker? Benefits of containers ECS Overview Cluster Task Definitions Tasks and Scheduling Services Fargate Service Discovery Start the workshop ...on your own Create an AWS account ...at an AWS event AWS Workshop Portal Create a Workspace Deploying Microservices to ECS Install and Configure Tools Clone the Service Repos Platform Build the P
本記事はDevDay Day1のセッションレポートとなります。 資料についてもすでに公開済みですので合わせてそちらもご確認ください。 セッション概要 AWSのオフィシャルツールを筆頭に、各種OSSを使用したFargateへのコンテナデプロイを考察する。 登壇者 原 康紘 様(アマゾン ウェブ サービス ジャパン株式会社) セッションの対象と目的 Fargateの利用を検討している方 デプロイツールの特徴を知りたい方 デプロイメントやパイプラインの構築、改善を行いたい方 AWS Fargateとは Dockerコンテナをデプロイする際にツールがないとEC2インスタンスに対してSSH接続してDockerの構築が必要になる この問題を解決するためにECSがサービスとして登場した EC2インスタンス群にDockerコンテナを自動的に構築してくれる EC2インスタンス上で動いているので、OSが動いて
タスク定義は、タスクファミリー、AWS Identity and Access Management (IAM) タスクロール、ネットワークモード、コンテナ定義、ボリューム、タスク配置の制約、起動タイプの各部分に分かれています。ファミリとコンテナの定義は、タスク定義の必須項目です。これに対して、タスクロール、ネットワークモード、ボリューム、タスク配置の制約、起動タイプは省略することができます。 これらのパラメータを JSON ファイルで使用し、タスク定義を設定できます。 以下に示すのは、各タスク定義パラメータのより詳細な説明です。 ファミリー family 型: 文字列 必須: はい タスク定義を登録するときに、ファミリー (複数バージョンのタスク定義の名前のようなもの) を指定する必要があります。登録したタスク定義には、リビジョン番号が与えられます。特定のファミリーに登録した最初のタスク
前提 全体的な流れ 現在のECSタスク定義を取得する 現在のECSタスク定義をベースに、新しいタスク定義を作成する 新しく作成したタスク定義をAWS上に登録する 新タスク定義を使うよう、ECSを更新をする デプロイの最終確認をする まとめ ecs-deploy というデプロイツールがあり、これを使うと簡単に Amazon ECS へデプロイができる。 github.com Dockerイメージを更新するだけであれば以下のように、コマンド一発でデプロイをいい感じにやってくれる。 $ ecs-deploy --cluster my-cluster --service-name my-service --image registry.gitlab.com/mogulla3/ecs-sample-app:xxe93fce82a4e787dc81427a4a469debaa07dbb4 ecs-de
【コンテナのデプロイを簡単にしませんか?】ECSのデプロイツールである「ecspresso」を触ってみた こんにちわ、札幌のヨシエです。 先日のAWS DevDay Tokyo 2019は自分も参加出来て本当に勉強になりました。 今回は発表された複数セッションで度々登場した「ecspresso」が気になったので使用感を知りたく触ってみました。 ecspressoとは? 面白法人カヤック様から提供されているGo製のECSデプロイツールです。 kayac/ecspresso 読み方は「エスプレッソ」というようです。 インストール方法(macOSのみ) brew install kayac/tap/ecspresso 確認バージョン % ecspresso version ecspresso v0.11.1 ECSサービスのコードエクスポート 最初にやることとしてecspressoで管理出来る設
RailsのECS移行事例なんて既に山ほどあるので、特に書くつもりは無かったのですが、実際にやってみると 時代が進んで、より便利なものが出てきている デプロイどうするのよ、となったときに各自が最強のECSデプロイツールを作っていて、参考にならない といった体験をしたので、最近やったECS移行の話を書くことにしました。 社内Qiitaに書いたポエムです pic.twitter.com/yDlWGhhkF1— wata (@wata727_) 2017年8月31日 もちろん、この記事も古くなると何の役にも立たないと思うので、古くなったら、みなさん頑張って調べてください。 ECS移行で考えるべきこと まず前提として、移行対象はシンプルなRailsアプリで、WebサーバとWorkerからなります。デプロイはCapistranoなどのいわゆる「Push型」で行っていたものとします。Railsに限定し
2018年11月28日、クックパッド株式会社が主催するイベント「Cookpad Tech Kitchen」が開催されました。第20回となる今回のテーマは「クックパッドのマイクロサービスプラットフォーム現状」。クックパッドが開発を行っているマイクロサービスプラットフォームの今と、その仕組みについて解説します。プレゼンテーション「Amazon ECS の安定運用のために」に登壇したのは、鈴木康平氏。クックパッドにおけるAmazon ECSの運用事例と工夫していることについて解説します。講演資料はこちら Amazon ECSの安定運用 鈴木康平氏:「Amazon ECSの安定運用」というタイトルで発表したいと思います。今回のアウトラインとしては、「ECSをどう使うか」みたいな話ではなくて、そのECSを運用していく上でこんなことやっていますよということを話していければなと思います。 内容としては、
はじめに この記事はCON333 Best practices for CI/CD using AWS Fargate and Amazon ECSのレポートです。 動画はこちらで公開されています。 セッション概要 CI/CD techniques enable teams to increase agility and quickly release a high-quality product. In this talk, we walk you through the best practices for building CI/CD workflows to enable you to manage your containerized applications. We cover infrastructure as code application models with the
Amazon Web Services ブログ AWS CodeDeploy による AWS Fargate と Amazon ECS でのBlue/Greenデプロイメントの実装 AWS Fargate と Amazon Elastic Container Service (Amazon ECS) 上で稼働するサービスでの Blue/Green デプロイメントがサポートされます。 AWS CodeDeploy を利用し、 Blue/Green デプロイメントを行うことでアプリケーションの更新時のダウンタイムを最小限に抑えることが出来るようになります。 Blue/Green デプロイメントは、古いバージョンと新しいバージョンのアプリケーションを同時に起動し、新しいバージョンをテストしてからトラフィックをルーティングします。デプロイ状況を監視し、問題が発生した場合はすぐにロールバックすること
こんにちは、かたいなかです。 以前、ECSがCodeDeployによるBlue/Greenデプロイに対応したことをお伝えしました。 今回は、CodePipelineからECS+CodeDeployへのデプロイを行うことで、CodeBuildでDockerイメージをビルドし、ビルドしたイメージをもとにタスク定義の新しいリビジョンを登録、ECSのサービスを更新するといった一連の流れを自動で行えるようにする方法をご紹介します。 構築するパイプラインの概要 今回は、以下のようなパイプラインを構成します。 GitHubの特定のブランチを変更を契機に処理を開始します。CodeBuildでイメージをビルドし、ECRにプッシュします。そして、最後にCodeDeploy + ECSを使用してデプロイを行うという流れです。 手順 では、実際にやっていきましょう。 設定としては以下の流れで進めます。 CodeD
こんにちは、かたいなかです。 先日のre:InventにてECSに対してCodeDeployを使用してBlue/Green Deploymentを行う機能が発表されました。 AWS CodeDeploy/AWS CodePipelineでAWS Fargate/Amazon ECSのCI/CDがサポートされました! #reinvent 個人的にワクワクが止まらくなってしまい、ラスベガスに行ってもないのに早速試してみましたので、内容を紹介します。 今回の記事では、デプロイ後に本番トラフィックを向ける前に本番環境内で動作を確認し、動作確認後リリースを行う、という流れを実装していきます。 Blue/Green Deploymentとは Blue/Green Deploymentはデプロイの一つのパターンです。 本番環境内に2つの環境を用意し、トラフィックを片方だけに向けておきます。新しいバージョ
こんにちは、Misoca開発チームの黒曜です。 先日シャニマスの1stライブで会場限定CDを入手したので、作業用BGMにヘビロテしています。 甜花ちゃんのアルストロメリアが特にお気に入りです。 真面目な近況としては、Rails Developer Meetup 2019に登壇するので発表準備をしてます。 railsdm.github.io 以前@lulu-ululが記事にしていたビジュアルリグレッションテストについて、構成やその後などを掘り下げてお話する予定です。 もしご興味があればセッションにお越しください。 tech.misoca.jp 🐳 環境のDocker化 Misocaのローカル開発環境はDockerで立ち上げられるように整備されているのですが、デプロイ先の環境はEC2になっていました。 これでも問題なく運用できていたのですが、以下のような課題がありました。 逐次更新を積み重ね
はじめに 仕事でChatBotを使ってDigdagコマンドを叩きたいっていう案件があって、あまりAWS触ったことなかったので、以下のような構成のものを作りました 案件を満たすだけであれば、ECSとかDockerとか必要なくて、Lambdaで出来そうだったんですけど、勉強のために使いました 今回の記事ではDigdag関連は全て省いてます HubotのDockerfileを用意 FROM node LABEL maintainer="kurosame" RUN npm install -g yo generator-hubot && \ useradd bot && \ mkdir /home/bot && \ chown bot:bot /home/bot USER bot WORKDIR /home/bot RUN yo hubot --defaults && \ npm install
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く