Amazon Web Services ブログ

Category: DevOps

Amazon CodeGuru Reviewer アップデート : 新しい Java ディテクタと GitHub アクションと CI/CD の統合

Amazon CodeGuru では、コードレビューを自動化し、コード品質を向上させることができます。また、 4月に発表された新しい価格モデルにより、リポジトリのサイズ応じた、より低価格な月額固定料金で始めることができます。(最大で 90 % の低価格化)。CodeGuru Reviewer は、 AWS マネジメントコンソールや、AWS SDK、および AWSを使用して、Java および Python アプリケーションで見つけにくい潜在的な欠陥やバグを検出するのに役立ちます。 今回、 CodeGuru Reviewer がコードをパッケージ化してデプロイするために毎日使用するツールとネイティブに統合されていることをお知らせできることをうれしく思います。この新しいCI/CD エクスペリエンスにより、GitHub Actions を使用した構築プロセスのステップとしてコードの品質とセキュリティ分析をトリガーすることができます。

Read More

GitHub モノレポを AWS CodePipeline と統合して、プロジェクト固有の CI/CD パイプラインを実行する

(この記事は、Integrate GitHub monorepo with AWS CodePipeline to run project-specific CI/CD pipelines を翻訳したものです。) AWS CodePipeline は、ソフトウェアのリリースに必要なステップをモデル化、可視化、自動化できる継続的デリバリーサービスです。AWS CodePipeline を使用して、コードを構築し、稼働前の環境にデプロイし、アプリケーションをテストし、実稼働環境にリリースするまでの完全なリリースプロセスをモデル化できます。AWS CodePipeline は、コードが変更されるたびに定義されるワークフローに従って、アプリケーションを構築、テスト、デプロイします。多くの組織が GitHub をソースコードリポジトリとして使用しています。組織によっては、1 つの GitHub リポジトリに複数のアプリケーションまたはサービスをフォルダで分割して格納することを選択しています。リポジトリ内のソースコードをこのように整理する方法は、モノレポと呼ばれます。 この記事では、AWS Lambda で GitHub イベントペイロード(訳者注:GitHub 上でのアクティビティを元にトリガーされるイベント情報。詳細は GitHub イベントのドキュメントをご確認ください。)を読み取り、サービス固有のパイプラインを実行するようにカスタマイズする方法を示します。

Read More

AWS Chatbot を使って Slack チャネルで Amazon EventBridge イベントを監視

この記事は、Abhijit Barde 、Arnab Deka、Prabhakar Ganesamurthy による寄稿の Monitor Amazon EventBridge events in your Slack channels with AWS Chatbot を翻訳したものです。 DevOps チームは、Slack や Amazon Chime などのチャットコラボレーションプラットフォームを使用して、システムを監視し、イベントに応答します。AWS Chatbot は Slack や Chime と統合されているので、チャットチャネルから AWS リソースを監視および操作できるため、アプリケーション間でのコンテキスト切り替えを軽減できます。DevOps ユーザーは、 Amazon EventBridge を通じてチャットチャネルの 200 を超えるサービスイベントタイプから通知を受け取ることができるようになりました。このブログ投稿では、Amazon EventBridge ルールを設定し、Slack チャネルで通知を受信するように AWS Chatbot を設定する手順を説明します。

Read More

CodeGuru Profilerを用いたAmazonのアプリケーションのCPUとレイテンシーのパフォーマンス改善

(この記事は、 Improving the CPU and latency performance of Amazon applications using Amazon CodeGuru Profiler を翻訳したものです。) Amazon CodeGuru Profiler は機械学習を活用し、アプリケーションコードのボトルネックになっている部分の特定をサポートし、最適化のための推奨事項を提供してくれるデベロッパー用ツールです。Amazon CodeGuru Profilerを用いることによってアプリケーションのパフォーマンスの問題の特定、レイテンシーやCPU使用効率の問題を解決することができます。 CodeGuru Profilerは AWS Lambda, Amazon Elastic Compure Cloud (Amazon EC2), Amazon Elastic Container Service (Amazon ECS),Amazon Elastic Kubernetes Service (Amazon EKS), AWS Fargate, AWS Elastic Beanstalk, およびオンプレミスで稼働しているアプリケーションのパフォーマンスの問題解決に役立ちます。 本ブログではAmazonのリテールサービスが、どのようにCodeGuru Profilerを用いてCPUの使用率とレイテンシーを50%減らし、$100,000のコストを削減したかの大まかな概要について解説します。

Read More
Solutions Design diagram explaining how the solution is structured

Selenium, AWS Lambda, AWS Fargate, AWS Developer Tools を使ったサーバーレスなUIテスト

(この記事は、 Serverless UI testing using Selenium, AWS Lambda, AWS Fargate, and AWS Developer Tools を翻訳したものです。) 以前、Using AWS CodePipeline, AWS CodeBuild, and AWS Lambda for Serverless Automated UI Testing (日本語版 ) を公開してから、Chrome headless とFirefox headless が各ブラウザでネイティブにサポートされるようになったことで、事態は大きく変わりました。 AWS Lambda は今やコンテナイメージをサポートし、 AWS Step Functions はLambda と統合された Map state のサポートを追加し、AWS Fargate は完全にサーバーレスのテクノロジを利用した、UIテストを可能にしました。

Read More

AWS Cloud Development Kit v2 開発者プレビューのお知らせ

AWS Cloud Development Kit (AWS CDK) v2が開発者プレビューとして、TypeScript、Python、Java、C#、Go言語で利用できるようになりました。AWS CDKは、使い慣れたプログラミング言語を使ってクラウドアプリケーションのリソースをモデル化し、プロビジョニングするためのオープンソースのソフトウェア開発フレームワークです。AWS CDKを使用すると、インフラストラクチャをコードとして定義し、AWS CloudFormationを通じてプロビジョニングすることができます。AWS CDKは、実績のあるデフォルト値で事前に設定された高レベルなコンポーネントを提供しているため、専門家でなくてもクラウドアプリケーションを構築することができます。また、組織の要件を組み込んだ独自のカスタムコンポーネントを構成して共有することができるため、チームが新しいプロジェクトを迅速に開始することができます。 2019年7月には、TypeScriptとPython向けのAWS CDK v1の一般提供を発表しました。それ以降、JavaとC#の追加言語のサポートをリリースし、Go言語バインディングの開発者プレビューをリリースしました。今回はv2のプレビューリリースを発表します。このリリースによりAWS CDKをより簡単に利用できるようになり、また今後のバージョンアップに対応することがより容易になります。 AWS CDK v1アプリケーションの最新マイナーバージョンからv2への移行は、比較的簡単です。まずAWSアカウントで再度ブートストラップ (cdk bootstrap) をする必要がありますが、これは各リージョンで一度だけの作業です。ほとんどのプロジェクトでは、インポート文を更新し、合成(synth) し、デプロイするだけで済みます。リソースに若干の変更があるかもしれませんが、リソースの作り直しが必要になるようなことはありません。 この記事では、AWS CDK v1とv2の間の変更点をご紹介します。

Read More

Amazon DevOps Guru が一般サービス提供開始となり東京リージョンでもお使いいただけます

みなさん、こんにちは。アマゾン ウェブ サービス ジャパン、シニアエバンジェリストの亀田です。 2020年の re:Invent でアナウンスされた Amazon DevOps Guruが一般サービス提供開始となり、東京リージョンでもご利用いただけますのでお知らせいたします。 Amazon DevOps Guru DevOps Guru はアプリケーションの可用性を向上させる 機械学習 駆動のクラウドオペレーションサービスであり、これを用いることでアプリケーションの運用パフォーマンスと可用性を簡単に向上させることができます。機械学習が通常の運用パターンを学習し、そこから逸脱した動作を検出し、迅速に運用上の問題を特定することができます。例えば、異常なアプリケーションの動作となる、レイテンシーの増加、エラー率、リソースの制約などを特定し、ダッシュボードに情報を集約させ、さらに、アラートを管理者に自動的に送信し、関連する異常の概要、考えられる根本原因、および問題が発生した時期と場所に関する情報を提供します。そして、可能な場合、DevOps Guru は、問題を修正する方法に関する推奨事項もあわせて提供するため、運用者は問題の特定と修正アクション開始が容易になります。 DevOps Guru は、Amazon CloudWatch、AWS Config、AWS CloudFormation、AWS X-Ray などの複数のソースからの運用データを継続的に分析および統合し、運用データの異常を検索して視覚化を行い、以下のような、単一のコンソールダッシュボードを提供します。 ダッシュボードに集約された情報はさらに、個別の項目をドリルダウンしていくことが可能で、問題が検知された日時、その原因の推察、対処方法の推奨項目などが以下に表示されます。 発見された問題は、DevOps GuruとAmazon SNSの連携により、管理者に通知を自動で送出するや、サードパーティツールとの連携を構築することが可能です。 DevOps Guru はVPC エンドポイントを用いることで、VPC内部から検知された異常の詳細を取得可能なAPIに対してセキュアにアクセスさせることが可能です。 AWS CloudFormation との連携と予防的/事後的インサイト DevOps Guru でリソースを監視対象に設定させるためには、2種類の設定方法があります。設定を行うAWSアカウントの当該リージョンでサポートされているすべてのリソースを監視対象に含める方法と、個別にCloudFormationでリソース群を指定する方法です。CloudFormationで管理されていないリソースを個別に管理対象に登録はできないことに留意してください。DevOps Guru がサポートするリソースは、AWS Lambda を中心としたサーバレスサービス群だけではなく、Amazon EC2 やAmazon RDS、Amazon S3等幅広いAWSのサービスをサポートしています。 2020年 re:Invent でのアナウンス後提供されていたプレビューでは、問題が発生してからインサイトが提供される、事後的インサイト、の機能のみが提供されていましたが、一般サービス提供開始時点で新たに、予防的インサイト、が提供されるようになります。この予防的インサイトは運用上のデータメトリックスをもとに、将来発生すると予測される問題に対処するための推奨事項が出力されます。例えば、ディスク使用率などの有限のリソースメトリックを監視し、日々の増加状況からディスクキャパシティにかかわる問題が発生することを予測し、ダッシュボードに問題を出力します。 上記のように1方向にデータが遷移するパターンは検知が容易ですが、例えば定期的なスパイクを迎えているシステムの場合、一時的なリクエスト増は定常状態にあるとも言えます。このようなデータを取り扱う場合、一般的な閾値モデルでは対処が難しいケースがあります。DevOps Guru は機械学習を異常検知に用いるため、そのデータ増が異常なのか定常的なものなのかを自動で判別します。 これはAPIリクエストの定常的なスパイクを記録したグラフです。このようなケースではDevOps […]

Read More

AWS Chatbot の 4 つの新機能を探る

この記事は、Abhijit Barde による寄稿の Explore four new features in AWS Chatbot を翻訳したものです。 AWS Chatbot は、ChatOps の使用を開始するのに役立ちます。例えば、Slack チャンネルで通知を受け取って AWS リソースを監視し、チャネルで診断コマンドを発行して AWS リソースを操作することができます。この投稿では、AWS Chatbot を使用して AWS リソースを監視、操作する 4 つの新しい方法について説明します。

Read More

Modern Apps Live – サーバーレスやコンテナなどに関する 5 月のセッション

Modern Apps Live は、モダンアプリケーション開発に関して 5 月に Twitch でライブストリーミング配信されるイベントシリーズです。 セッションのトピックには、サーバーレス、コンテナ、モバイルおよびフロントエンドの開発などが含まれます。 あまり馴染みのない方のために、モダンアプリケーションの特徴を以下に紹介します。 数百万のユーザーに迅速に拡張できます。 グローバルな可用性があります。 膨大なデータを管理します (エクサバイト単位)。 応答はミリ秒単位です。 このようなアプリケーションは、マイクロサービスアーキテクチャ、サーバーレス運用モデル、およびアジャイル開発者プロセスを組み合わせて構築されます。モダンアプリケーションでは、イノベーションの加速に加えて、リスク、市場投入までの時間、TCO (総所有コスト) の削減を実現することができます。 Modern Apps Live は、4 つの仮想イベントで構成されるシリーズです。 Container Day x Kubecon (5 月 4 日) Serverless Live (5 月 19 日) Mobile and Front-end Live (5 月 25 日) Container Day x DockerCon (5 月 26 日) 開始したばかりの方にとっても、クラウドの経験が豊富な方にとっても、これらのセッションは、モダンアプリケーションの構築と設計を検討している開発者、ソリューションアーキテクト、または IT および […]

Read More

AWS CDKでエンタープライズアプリケーションを開発する

エンタープライズのお客様は、ガバナンスやコンプライアンス・品質管理のために Infrastructure as Code (IaC)を標準化しなければならない場合があります。さらに、IaCのライブラリやそのアップデートを中央集権的に管理しなければならない場合もあるでしょう。それらを実現するため、この記事では AWS Cloud Development Kit (AWS CDK) を利用してIaCのパターンを定義する方法や、AWS CodeArtifactを利用してIaCの更新リリースを統制する方法を紹介します。

Read More