タグ

awsとCLIに関するopparaのブックマーク (39)

  • タスク数を 0 に変更してもオートスケーリングのスケールアウトが実行される挙動を回避するためには | DevelopersIO

    困っていた内容 ターゲット追跡スケーリングポリシーを設定したオートスケーリングを ECS サービスに設定しています。 手動で ECS サービスのタスク数(必要数)を0に変更しましたが、その後スケールアウトが実施されました。 オートスケーリングの「タスクの最小数」も「0」に設定していて、ターゲットのメトリクス値も低いので、スケールアウトは実行されない認識ですが、なぜタスク数が更新されたのでしょうか。 スケールアウトを回避する方法があれば併せて教えてください。 どう対応すればいいの? スケーリングの一時停止をご利用ください。 ターゲット追跡スケーリングポリシーは、過去のメトリクス状況を含めてタスク数を調整するため、過去のリソース状況を参照し、意図しないスケーリング(タスク数の変更)が行われる場合があります。 例えば、一定の負荷があるサービスのタスク数を0に手動変更した直後は、過去のメトリクス状

    タスク数を 0 に変更してもオートスケーリングのスケールアウトが実行される挙動を回避するためには | DevelopersIO
  • 既存のECS(Fargate)にALBを追加してみる | DevelopersIO

    ECS(Fargate)でとりあえずタスクを立ち上げて使えるようにしてみたけど、当はALBを前段に置いてバランシングしたいんだよねぇ。なんてことはありませんか? ようするに今タスクIP直アクセスして使ってるやつを、こう変えたいみたいなことです。 マネジメントコンソールから変更しようと思うと、一見できなさそうに見えますが、ドキュメントにAWS CLIまたはSDKを使用してロードバランサーの設定変更できる旨が記載されています。 AWS CLI または SDK を使用して、ロードバランサーの設定を変更します。設定の変更方法の詳細については、「Amazon Elastic Containers サービス API リファレンス」の UpdateService を参照してください。 クラシックコンソールを使用したサービスの更新 - Amazon ECS UpdateService - Amazon

    既存のECS(Fargate)にALBを追加してみる | DevelopersIO
  • Amazon S3 バケットに複数のライフサイクルルールを設定したときの挙動を確認してみた | DevelopersIO

    いわさです。 Amazon S3 ではライフサイクルルールを構成することでオブジェクトのストレージクラスの移行や古いオブジェクトの削除などを自動化することが出来ます。 上記記事でも言及されていますが、このライフサイクルルールは複数設定することが可能です。 さらに、その複数のルールは単一ルールではエラーとなるような競合したルールを組み合わせることも出来たりします。 公式ドキュメントには重複・競合したルールは以下のように「最も安価なパスが選択される」とされています。 重複するプレフィックスまたはアクションを指定する S3 ライフサイクル設定を指定する場合があります。 一般的に、S3 ライフサイクルはコストに合わせて最適化されます。たとえば、2 つの有効期限ポリシーが重複している場合は、短い有効期限ポリシーが適用されるため、データが予想よりも長く保存されることはありません。同様に、2 つの移行ポ

    Amazon S3 バケットに複数のライフサイクルルールを設定したときの挙動を確認してみた | DevelopersIO
    oppara
    oppara 2023/01/19
  • AWS CLI(v2)の自動プロンプト機能が便利だった

    aws cliを使う際、AWS CLI Command Reference or --help で確認 > コピペ > コマンド実行みたいな作業をしていませんか...? これって割と面倒な作業ですよね。 そこで、日はaws cliの実行が楽になる、自動プロンプト機能 という機能を紹介したいと思います。 自動プロンプト機能とは aws cli実行に関するヘルプドキュメントや豊富な補完機能などを提供してくれます。 v2から提供されている機能のようです。 提供機能 ざっと提供機能は以下のような内容です。 コマンド補完 パラメータ補完 リソース補完 短縮構文補完 ファイル補完 リージョン補完 プロファイル補完 あいまい検索 履歴 各機能の詳細な仕様の解説はここでは割愛しますので、詳しくは 公式 をご参照ください。 モードについて 2種類のモードがあります。 フルモード 部分モード 1. フルモー

    AWS CLI(v2)の自動プロンプト機能が便利だった
  • AWS CLI でコマンドの入力プロンプトを表示する - AWS Command Line Interface

    AWS CLI バージョン 2 では、aws コマンドの実行時にコマンド、パラメータ、およびリソースのプロンプトを表示できます。 仕組み 有効にすると、自動プロンプトが Enter キーを使用して部分的に入力されたコマンドを完成できるようにします。Enter キーを押すと、続けて入力する内容に基づいて、コマンド、パラメータ、およびリソースが提案されます。提案には、左側にコマンド、パラメーター、またはリソースの名前、右側にそれらの説明が記載されます。提案を選択して使用するには、矢印キーを使用して行をハイライト表示してから、Space キーを押します。コマンドでの入力が終了したら、Enter を押してコマンドを使用します。以下の例は、自動プロンプトから提案されたリストがどのように表示されるかを示しています。 $ aws > aws a accessanalyzer Access Analyze

  • [AWS CLI]cli_auto_promptの補完設定をスクリプトの際にはOFFにする方法 | DevelopersIO

    t_o_dと申します。 AWS CLI v2ではcli_auto_promptをONにすることで、実行時に自動プロンプトを表示してくれます。 非常に便利ですがデフォルトでONに設定していると全ての実行時にプロンプトが表示されてしまいます。 そこで今回は、スクリプトに組み込む際やコマンドが分かりきっている時にはOFFにする方法を記録いたします。 環境 mac OS Monterey 13.0 aws cli 2.4.6 結論 cli_auto_promptをonからon-partialに変更するだけです。 configファイルで設定している場合は以下のようにするだけで可能です。 [default] region=xxxxx output=json cli_auto_prompt = on-partial 背景 ~/.aws/configにcli_auto_promptをonにして補完設定をし

    [AWS CLI]cli_auto_promptの補完設定をスクリプトの際にはOFFにする方法 | DevelopersIO
  • リソースの消し忘れを簡単にチェックしてコストを節約する方法を教えて下さい(CLI版) | DevelopersIO

    困っていた内容 検証したリソースを消し忘れてしまい思わぬコストがかかってしまいました。簡単に毎日チェックする方法を教えて下さい。 どう対応すればいいの? 自動でチェックしてSlackに通知してもらいましょう!そこで AWS CLI(以下 CLI)で毎日のコストと EC2 数を調べるスクリプトを作ってみました。 毎日の利用コスト EC2 インスタンス数 上記を CLI / シェルで作って cron で定期的に Slack に通知します。 やってみた 使用した CLI と jq のバージョンは以下のとおりです。今回は、結果を見やすくするために jq がインストールされていることを前提としています。 実行環境 $ aws --version aws-cli/1.18.107 Python/2.7.18 Linux/4.14.287-148.504.amzn1.x86_64 botocore/1.

    リソースの消し忘れを簡単にチェックしてコストを節約する方法を教えて下さい(CLI版) | DevelopersIO
  • AWSコンソールとCLI利用時にMFA認証を必須にする

    AWS の IAM ユーザを利用者に渡すとき MFA(2要素認証) の設定をお願いするのですが、設定してくれるかどうかは人任せになります。そこで、MFA の設定をしてワンタイムパスワード認証をしてからでないと AWS コンソールと AWS CLI が権限エラーで利用できないようにする設定の備忘録。これなら必ず設定してくれます。 目次 ドキュメントに書かれている IAM ポリシーを設定する 利用者に MFA の設定を依頼する AWS CLI 利用時にもワンタイムパスワードによる認証が必要 シェルスクリプト化 ドキュメントに書かれている IAM ポリシーを設定する Allows MFA-authenticated IAM users to manage their own credentials on the My Security Credentials page - AWS Identi

    AWSコンソールとCLI利用時にMFA認証を必須にする
  • AWS CLIで特定のEC2インスタンスタイプをサポートしているリージョンを確認するスクリプトを作成してみた | DevelopersIO

    prismatixのとばち(@toda_kk)です。 利用中のリージョンやAZが特定のEC2インスタンスタイプをサポートしているかどうかを調べる際に、AWSマネジメントコンソールからEC2「インスタンスタイプ」のページを表示することで確認できます。 ただ、特定のリージョンがサポートしているEC2インスタンスタイプではなく、特定のEC2インスタンスタイプをサポートしているリージョンの一覧を調べたいときがあります。 そこで、下記ページを参考にしながら、AWS CLIを利用したBashスクリプトを作成してみました。 注意点 このスクリプトでは、実行するAWSアカウントで有効になっているリージョンのみを確認の対象とします。 明示的に有効化が必要なリージョンについては、有効化していない場合にはスクリプトの実行結果に表示されません。 インスタンスタイプをサポートしているリージョンの一覧を表示するスクリ

    AWS CLIで特定のEC2インスタンスタイプをサポートしているリージョンを確認するスクリプトを作成してみた | DevelopersIO
  • AWS Security Hubの通知内容をAWS CLIで調べる | DevelopersIO

    とあるAWSアカウントでAWS Security Hubを有効にしたところ、通知がいっぱい出ました。 そのため、「まずは件数を知りたい!」となったので、AWS CLIを使って調べてみました。 おすすめの方 AWS Security Hubの通知内容をAWS CLIで調べたい方 いろいろな条件で調べるコマンド 適宜アレンジしてください。なお、件数を知りたい場合はjqを利用しています。 重要度がCRITICALのタイトルだけを見たい aws securityhub get-findings \ --filters '{"SeverityLabel":[{"Value": "CRITICAL","Comparison":"EQUALS"}]}' \ --query 'Findings[].Title' 重要度がCRITICALの件数を知りたい aws securityhub get-findin

    AWS Security Hubの通知内容をAWS CLIで調べる | DevelopersIO
  • AWS CLIを使用してS3でDataSyncをしてみた。 | DevelopersIO

    概要 DataSyncでAWSストレージサービス間、およびオンプレミスストレージシステムとAWSストレージサービス間でデータを移動できます。この記事では、AWS CLIを使用してS3でDataSyncをしてみました。ここでは、AWS CLIでDataSyncを使用して、ソースS3バケットから別のリージョンのデスティネーションS3バケットにデータを移動してみました。 やってみた S3バケットの作成 2つのS3バケットを作成しておきます。 ソースS3バケット : us-east-1 リージョン デスティネーションS3バケット :  us-east-2  リージョン 次のコマンドを使用して、us-east-1リージョンにS3バケットを作成しておきます。 //create a S3 bucket in us-east-1 region aws s3api create-bucket \ --buc

    AWS CLIを使用してS3でDataSyncをしてみた。 | DevelopersIO
  • AWS SSO を活用しているなら aws-sso-util を使おう

    tl; dr aws-sso-util を使うとコマンド一発で ~/.aws/config が生成できたりして便利なので使うべし。 AWS SSO とは 皆さん、AWS Single Sign-On (AWS SSO) というサービスを利用されていますか。 AWS SSO は 公式ページ によると下記のような記載がありますが、もっぱら前者の複数の AWS アカウントのアクセスに利用している方が多いでしょう。 複数の AWS アカウントとビジネスアプリケーションへのアクセスの一元的な管理を容易にし、割り当てられたアカウントとアプリケーションのすべてに対する 1 か所からのシングルサインオンアクセスをユーザーに提供できるようにする AWS のサービスです。 また、AWS CLI v2 からは ~/.aws/config に下記のような設定することで、CLI 作業でも AWS SSO による認証

    AWS SSO を活用しているなら aws-sso-util を使おう
  • 管理ポリシーの差分を出力する AWS CLI エイリアス aws diff を作ってみた | DevelopersIO

    コンバンハ、千葉(幸)です。 管理ポリシー、特に AWS 管理ポリシーの変更差分を確認したい機会がたまにあります。 マネジメントコンソール上で差分表示するような機能があれば便利なのですが、現時点では実装されていません。 ないなら AWS CLI でやってみるか、ということでエイリアスを組んでみました。 管理ポリシーの差分を表示するエイリアス 以下のエイリアスを設定しました。 ~/.aws/cli/alias [toplevel] diff = !f() { VERSION=$(aws iam get-policy --policy-arn $1 --query 'Policy.DefaultVersionId' --output text | tr -d "v") BEFORE_VERSION=$((VERSION-1)) BEFORE_RESULT=$(aws iam get-polic

    管理ポリシーの差分を出力する AWS CLI エイリアス aws diff を作ってみた | DevelopersIO
  • AWS CLIを使ってRoute 53のAレコードを作成する

    普段 Route53 のレコードの更新には CloudFormation や Terraform を使うことが多いのですが、AWS CLI を使って Route 53 の A レコードを更新する機会があったので備忘録。手順は AWS CLI を使用して Amazon Route 53 にシンプルなリソースレコードセットを作成するにはどうすればよいですか? を参考にしました。 目次 json ファイルを作成する AWS CLI でレコードの変更リクエストを作成する json ファイルを作成する 以下のコマンドを参考に、AWS CLI で Route 53 のレコードを更新するための json ファイルを作成します。Action は UPSERTが便利です。レコードが存在しなければ作成、存在していれば更新(削除してから作成)してくれます。複数のレコードの変更を一度に行うこともできます。 cat

    AWS CLIを使ってRoute 53のAレコードを作成する
  • Elastic Beanstalkに適用したキーペアを解除したいのですが、どうすれば解除出来ますか? | DevelopersIO

    困っていた内容 Elastic Beanstalkの環境において、キーペアの設定を行いました。 再度「キーペアをなにも適用していない」状態に戻したいのですが、 EBコンソール上からは「キーペアをなにも適用していない」状態にすることが出来ませんでした。 設定前の状況にするにはどのような操作が必要か教えてください。 どう対応すればいいの? コマンドラインオプションを使用する - JSON ドキュメントで設定オプションを変更するには (AWS CLI)を参考に、キーペアを削除する場合は以下のようにCLIコマンドを実行してください。 aws elasticbeanstalk update-environment --environment-name --options-to-remove Namespace=aws:autoscaling:launchconfiguration,OptionNam

    Elastic Beanstalkに適用したキーペアを解除したいのですが、どうすれば解除出来ますか? | DevelopersIO
  • そのインスタンスタイプ、スポットインスタンス起動に対応していますか? | DevelopersIO

    記事では「使いたいインスタンスタイプをスポットインスタンスで起動できるのか?」という疑問に対して、空きキャパシティがあるない以前にスポットインスタンス起動がサポートされているのかを AWS CLI から確認する方法を紹介します。 空きキャパシティによる中断率を確認したい方は以下のリンクをご確認ください。 調べ方まとめ aws ec2 describe-instance-typesコマンドから確認できます。 m6i.largeを調べた実行例 オンデマンドと、スポットインスタンスが提供されていることが確認できます。 $ aws ec2 describe-instance-types --instance-types m6i.large | jq '.InstanceTypes[].SupportedUsageClasses[]' "on-demand" "spot" 確認するときはリージョン

    そのインスタンスタイプ、スポットインスタンス起動に対応していますか? | DevelopersIO
  • AWS CLI のコンフィグファイルと環境変数とコマンドラインオプションで指定できる内容をまとめて確認してみた | DevelopersIO

    ~/.aws/config の中で credential_process とか使ったことある人はいるんでしょうか。 コンバンハ、千葉(幸)です。 ~/.aws/config、いじってますか? [default] region = ap-northeast-1 output = json [profile chiba] region = ap-northeast-1 output = json role_arn = arn:aws:iam::999999999999:role/chibayuki-role source_profile = jump-account mfa_serial = arn:aws:iam::000000000000:mfa/cm-chiba.yukihiro ~/.aws/configでデフォルトリージョンや出力形式、スイッチロールのための設定などを行う機会は多いか

    AWS CLI のコンフィグファイルと環境変数とコマンドラインオプションで指定できる内容をまとめて確認してみた | DevelopersIO
  • cfn-policy-validator を使ってCLIで「外部アクセス許可の検証」をしてみた | DevelopersIO

    いわさです。 IAM Access Analyzerを使うとリソースの意図しないパブリックアクセス、クロスアカウントアクセスの原因となるリソースポリシーの検出が可能です。 以前、チバユキさんがブログを書かれていました。 上記ではマネジメントコンソール上で確認をされています。 チバユキさんもブログの中で、CLIから検出を実施する場合はCreateAccessPreviewを使う必要があるよう言及されています。 そして、APIをラップしたcfn-policy-validatorなるツールが登場したそうなので手軽に検出出来るようになったようです。 日は試してみました。 インストール Python製のツールで、pipよりすぐセットアップして使えるようになります。 iwasa.takahito@hoge ~ % pip install cfn-policy-validator Collecting

    cfn-policy-validator を使ってCLIで「外部アクセス許可の検証」をしてみた | DevelopersIO
  • 特定のサブネットにある AWS リソースの一覧と IP アドレスを CSV で出力してみた | DevelopersIO

    VPC上でIPアドレスを持つリソースはネットワークインターフェイスを持っており、それを EC2 のサービス画面から確認できることをご存知でしょうか。並べて見ると楽しいです。 コンバンハ、千葉(幸)です。 特定のサブネット上にあるリソース一覧を確認したい、というケースがあるかと思います。存在するのが EC2 インスタンスだけであることが分かっているならその一覧を確認すればいいですが、ロードバランサーや RDS インスタンス、インターフェース型の VPC エンドポイントなど、サブネット上で IP アドレスを使用するリソースは多々あります。 サービスの種別に関係なく一覧で確認したい、という場合の手順を確認してみました。 マネジメントコンソールからネットワークインターフェイスを確認する 一番手っ取り早いのはマネジメントコンソールから確認する方法です。 VPC 上に作成され IP アドレスを持つリソ

    特定のサブネットにある AWS リソースの一覧と IP アドレスを CSV で出力してみた | DevelopersIO
  • 終了した EC2 のメトリクス(モニタリングデータ)が見つからないときの対処方法 | DevelopersIO

    困っていた内容 約一ヶ月前に終了した EC2 のメトリクスを確認しようと思ったのですが、CloudWatch メトリクスに見当たりません。メトリクスは15ヶ月は保持される認識ですが、EC2 は別なのでしょうか。メトリクスを確認する方法を教えてください [CloudWatch] メトリックの保持期間が14日→15ヶ月に延長されて、グラフ機能も強化されました | DevelopersIO どう対応すればいいの? AWS CLI をご使用ください。 ご認識の通り、メトリクスは15ヶ月間保持されますが、マネジメントコンソールからは、メトリクスが最後に登録されてから2週間以内のものしか表示できません。そのため、2週間前以上に終了した EC2 のメトリクスを取得するには、AWS CLI をご使用ください。 メトリクスの取得は複数のコマンドが用意されているため、取得内容に合わせてご選択ください。 get

    終了した EC2 のメトリクス(モニタリングデータ)が見つからないときの対処方法 | DevelopersIO