質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

1回答

1046閲覧

【AWS S3】【AWS CodeDeploy】EC2でCodeDeployエージェントの設定でわからないコマンドがあり教えていただけないでしょうか?

hasshy

総合スコア102

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

1クリップ

投稿2019/08/27 16:25

下記を参考にデプロイ環境を構築しているのですが、エラーになってしまう箇所があります。
s3バケットからインストールをしていると思われますし、
参考ページから察するに、CodeDeployのエージェントのインストールだと思います。

Amazon Linux または RHEL 用の CodeDeploy エージェントのインストールまたは再インストール

sh

1$ sudo yum update 2$ sudo yum install ruby 3$ sudo yum install wget 4$ cd /home/ec2-user 5$ wget https://example_bucket.s3.ap-northeast-1.amazonaws.com/latest/install 6--2019-08-27 15:59:14-- https://example_bucket.s3.ap-northeast-1.amazonaws.com/latest/install 7example_bucket.s3.ap-northeast-1.amazonaws.com (example_bucket.s3.ap-northeast-1.amazonaws.com) をDNSに問いあわせています... xxx.xxx.xxx.xxx 8example_bucket.s3.ap-northeast-1.amazonaws.com (example_bucket.s3.ap-northeast-1.amazonaws.com)|xxx.xxx.xxx.xxx|:443 に接続しています... 接続しました。 9HTTP による接続要求を送信しました、応答を待っています... 403 Forbidden 102019-08-27 15:59:14 エラー 403: Forbidden。

しかし、EC2のOSがAmazon Linuxなためか、すでにCodeDeployが動いています。   

sh

1$ sudo service codedeploy-agent status 2The AWS CodeDeploy agent is running as PID xxx

質問

エージェント(?)の取得失敗してしまう理由

下記の処理を行うと、403エラーで弾かれてしまいます。

sh

1$ wget https://example_bucket.s3.ap-northeast-1.amazonaws.com/latest/install

S3を扱うために必要なポリシーも指定しており、バケット自体も存在します。

sh

1$ aws s3 ls 2example_bucket

何が考えられますでしょうか?

既存のCodeDeployについて

CodeDeployが動いているということは、そもそもこのフローは必要なかったのでしょうか?
wgetの処理で個別のbakcet名を指定するので、この処理をしないといけないと思っておりましたがそもそも不要だったのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hasshy

2019/08/27 17:02

ご指摘ありがとうございます。 上記コマンドを実行すると、「The AWS CodeDeploy agent is running」と表示されますので、 動いているとは思います。
hasshy

2019/08/27 17:04

ただ、私自身インストールした覚えはありません。
gouf

2019/08/27 17:10

ユーザガイドの構成・流れ的に + 現在の状況として、「エージェントのインストールまたは再インストール」は不要であるように思えます そのまま「インスタンスの使用」やそのほか必要なページを参照していくことで CodeDeploy が利用可能な状態になるのではないでしょうか?
hasshy

2019/08/27 17:29

度々ご指摘ありがとうございます。 もう少し先に進めてみます。
guest

回答1

0

ドキュメントをよくお読みください

bucket-name は、リージョン用の CodeDeploy リソースキットファイルが含まれている Amazon S3 バケットの名前、region-identifier は、リージョンの識別子です。たとえば、米国東部 (オハイオ) リージョン の場合は、bucket-name を aws-codedeploy-us-east-2、region-identifier を us-east-2 に置き換えます。バケット名とリージョンの識別子のリストについては、リージョン別リソースキットバケット名 を参照してください。

なので、そのbucket-nameは自分で作ったbucketではなく、Amazonが用意したCodeDeploy Agentが保存されているbucketです。
bucket名はこちらを参照

そして403になっているのはあなたが作成したexample_bucketがpublicに公開されていないからかと思われます。
ただ、そもそも正しい取得元ではないので今回は特に関係はありません。

CodeDeploy Agentはデフォルトで入っているものではなかったと思うので、なぜ既に入っているのか経緯についてはちょっとここではわかりません。

投稿2019/09/10 06:29

yu_1985

総合スコア7427

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問