ほぼ日AWS について
AWSのソリューションについて学んでいく為に、以下のAWS管理画面で見れるすべてのサービス
について、どんな時に使われてそれらがどんなソリューションなのかまとめてみたいと思います。
※ ちなみに著者はAWS初心者勢です。
ソリューションがどういうものかに重点をおいて調べてまとめているだけですので、ノウハウTipsの提供等はできません。
このブログの目標
読んだ方(主に自分)が、AWSのソリューションについて 「ああ、AWSののこのソリューションって〜〜〜っていうもんでしょ?」ってざっくり理解するのに手助けになれば幸いです。
では、本題。
開発者用ツールソリューション について
AWS開発者用ツール は、 DevOps を実践している開発者やIT運用チームが 迅速かつ安全にソフトウェアをデリバリー出来るようにする為の一連のサービス。
首都して以下のようなサービスがある。
CodeStar
何ができるのか
AWS CodeStar では、継続的な配信フローの全体を数分で設定出来、他にもプロジェクトのアクセス管理・所有者、コントリビューター、ビューワーの追加等も簡単に出来る。
プロジェクト管理ダッシュボードが用意されていて、作業項目のバックログからチームの最新のコードのデプロイまで開発プロセス全体の進行状況を簡単に追跡出来る。
無料利用枠ある?
CodeStar自体には追加料金はない。
東京リージョンある?
あるよ。
主なユースケース
プロジェクト管理として使われる。 ダッシュボードとかが提供されてるなんて知らなかった。 ちなみに ダッシュボードには Atlassian JIRA Softwareの機能が統合されていたりするらしい。
CodeCommit
何ができるのか
AWS CodeCommit は、フルマネージド型のソースコントロールサービスでプライベートのGitレポジトリを無制限にホスティングできる。
無料利用枠ある?
あるよ。
CodeCommit は 毎月5人のアクティブユーザーを以下の範囲なら無料で使用できる。
- 50GB のストレージ / 月
- 10,000回のGitリクエスト / 月
東京リージョンある?
あるよ。
主なユースケース
自分は今使ってるんですが、無制限のプライベートレポジトリの恩恵を受けたくて Githubへの700円/月 の家計からの出費を抑えたくてこっちに全部Githubから持ってきました。 コミットしても草が生えなかったりとかはありますが無料枠の範囲が割と多いので今のところ無料で使えています。
ちなみに BitBucketでよかったな~と思ってます。
こっちを使うメリットとしては 他の開発者用ツールと連携を簡単に行う事が出来る事があげられると思います。
CodeBuild
何ができるのか
AWS CodeBuild はフルマネージド型のビルドサービスで、ソースコードをコンパイルし、テストを実行してデプロイ出来るようにソフトウェアパッケージを作成できる。
CodeBuildを利用する事で ビルドサーバの管理に時間をかける事が無くなるのと、また スケーリングが継続的に行われる事で複数のビルドが同時に実行される。
無料利用枠ある?
あるよ。
限定されたインスタンスクラス(build.general.small)で1ヵ月あたり100分ビルドを使用できる。
上記はサインアップから1年を過ぎても有効。
東京リージョンある?
あるよ。
主なユースケース
CodeBuildを使うメリットとして継続的デリバリー(CI/CD)を自動化できる事がある。
例えば、AWS CodePipelineを使用してGitレポジトリにコミットがある度に CodeBuildでコードのビルドとテストを行う事を自動化するフローを作成する事もできる。また、CodePipelineをCodeDeployに連携させる事でデプロイまでも自動で行う事も可能となる。
CodeDeploy
何ができるのか
AWS CodeDeployは EC2、Lambda、オンプレで実行されるインスタンスなど、さまざまなコンピューティングサービスへのアプリケーションのデプロイを自動化するサービス。
AWS CodeDeploy を使用する事で新しい機能の短期間でのリリース、ダウンタイム無しのアプリケーションのデプロイ、アプリケーションの複雑な更新処理を簡単に実行できる。
無料利用枠ある?
AWS CodeDeployを利用して EC2やLambdaにデプロイする場合は追加料金は不要となる。
ただし、オンプレ環境にデプロイする場合にだけ料金がかかってくる。
東京リージョンある?
あるよ。
主なユースケース
特徴通り、デプロイのサービスなのでデプロイフローに組み込まれて使用される。
取り立てて、CodeDeployを使用するメリットとしてはデプロイを自動化する事で人的ミスを減らす事が出来たりCodeBuildのところにも書いたが、AWS Pipelineを利用してGitにコミットがあった事をトリガーにCodeBuildでビルド・テストを実行した後でCodeDeployによってデプロイまでを一連のフローとして自動化できるメリットがある。
CodePipeline
何ができるのか
AWS CodePipeline は、迅速で信頼性の高いアプリケーションのアップデートを可能にする継続的デリバリーサービスである。
無料利用枠ある?
あるよ。
アクティブなパイプラインを 1 か月あたり 1 つ無料で利用できます。
東京リージョンある?
あるよ。
主なユースケース
CodeBuildやCodeDeployのところにも書いたが、AWS Pipelineを利用してGitにコミットがあった事をトリガーにCodeBuildでビルド・テストを実行した後でCodeDeployによってデプロイまでを一連のフローとして自動化できるメリットがある。
Githubとかのイベントもフック出来る。
Cloud9
何ができるのか
AWS Cloud9は、ブラウザのみでコードを記述・実行・デバッグできるクラウドベースの統合開発環境のサービスである。提供されるものとして 「コードエディタ」・「デバッガー」・「ターミナル」などがある。
無料利用枠ある?
Cloud9 自体には料金は発生せずに無料で使える。
ただし、Cloud9はそのサービスの性質上、EC2などの仮想コンピューティング環境上に予めインストールされたCloud9を使用するため、EC2などのコンピューティング環境の金額が発生する。
東京リージョンある?
なさそう。
主なユースケース
ブラウザ上でエディタが提供されてコーディングが出来るため、メリットとしては環境が各人によって異なる事を防ぐ事ができる。
また、あらかじめPHPがセットアップされた環境をホスティング出来るため、開発環境のセットアップの煩わしさから(8割主観ですが)解放される。
X-Ray
何ができるのか
AWS X-Rayは 本番環境・分散アプリケーションを分析およびデバッグするためのサービス。
X-Ray を使用すると、アプリケーションやその基盤となるサービスの実行状況を把握してパフォーマンスの問題やエラーの根本問題を特定してトラブルシューティングに役立てる事が出来る。
無料利用枠ある?
あるよ。
- 毎月、100,000回までのトレースの記録は無料で可能
- 毎月、トレースの取得とスキャンを合わせて100万回まで無料
上記はサインアップから一年が過ぎても失効せずに利用できる。
東京リージョンある?
あるよ。
主なユースケース
特徴にも上げたが、アプリケーション全体で転送されるユーザーリクエストがトレースされるので、アプリケーションの実行状況をエンドツーエンドで確認できるため、問題などの検出等に役立つ。
所感
GithubからCodeCommitに乗り換えたんだけど正直、BitBucketにしとけばよかった感は否めない気がする。。
後、CodeDeployとかCodePipelineとかAWSの中だけで閉じてるのかと思いきや、オンプレにもデプロイできたり、Githubのプッシュイベントをフック出来たり便利だなって思いますね。知らなかった。