かべぎわブログ

ブログです

AWS

複数のAWSマネジメントコンソールを利用するときのChromeの設定のすすめ

AWS

概要 AWSのマネジメントコンソールを複数アカウント/ユーザ分利用することがまれによくあると思います。 別のアカウントでマネジメントコンソールを立ち上げたときに以下のような画面が出てしまって、セッションが全部切り替わってしまって、あーーーーーー …

Amazon Linux2 に自作サービスを追加する

今回はAmazonLinux2のSystemdに自作サービスを追加してみようと思います。 手順 サービスとして追加するスクリプトの準備 ユニットファイルを作成する 各項目のちょっとした解説 サービスとして認識されたかどうか確認する サービスを有効化(enable)する サ…

Amazon Linux2 にepelリポジトリを追加する

概要 AmazonLinux2で利用できるamzn2-coreリポジトリではインストールできないものがでてきたのでリポジトリを追加する方法をメモ。 RHEL7用のリポジトリを追加しているだけ リポジトリを追加する手順 概要 リポジトリを追加する手順 すでに追加されているyu…

AWSCLIですべてのLambdaについているタグの一覧を表示するシェルスクリプト

概要 AWSCLIでLambdaのすべての関数についているタグの一覧を取得するシェルスクリプトを作成してみました。 aws lambda list-tagsはARNを指定することでその関数にアタッチされているタグを表示することができます。 ARN指定ですのですべての関数を見に行く…

Amazon Linux2からGitHubのリポジトリへPushする

Amazon Linux2からGitHub上のリポジトリへPushするやりかたです。 環境 Pushするまでの手順 事前準備 Gitをインストールする ローカルリポジトリを作成する git configでユーザ名とメールアドレスを設定する GitHubにssh接続するための鍵を作成する GitHubに…

Windowsインスタンスの停止時にログをS3に転送する

概要 Windowsインスタンスの停止時にS3にローカルのログファイルを転送する処理をご紹介します! 前提 Windows Server 2016 AWSCLIが利用可能な環境 シャットダウンスクリプトの設定手順 スタートメニューの「ファイル名を指定して実行」に「gpedit.msc」と…

最大公約数を求めるLambda(Python3)

なんかまったく需要がなさそうだけど気の迷いでつくりました。 概要 変数のxとyに整数を入力してあげると、printで結果を返してくれます。 以下のコードでは84と16の最大公約数を求めています。 かんたんな説明 最大公約数は以下のようにして求めることがで…

IAMロールの権限でCyberduckを利用してS3とファイルをやりとりしてみる

今回はCyberduckというGUIのFTPクライアントツールを利用してAWS上のS3バケットとIAMロールを付与したWindowsインスタンス上でファイルのやり取りをしてみたいと思います。 この方法を利用することでアクセスキーを発行しなくてもCyberduckを利用することが…

AnsibleでWindowsにAWS CLIをインストールする

今回はAnsibleでWindows環境にAWS CLIをインストールしてみたいと思います。 事前準備 AWS公式からAWS CLIのインストーラをダウンロードしてきます。 aws.amazon.com 以下の赤枠から32ビットまたは64ビットのものをダウンロードします。 Ansibleを実行する …

AnsibleでEC2インスタンスを作成してみる

AnsibleでEC2インスタンスを作成してみようと思います。 環境 Ansible 2.4.2 python 2.7 インスタンスを作成してみる インスタンスを作成してみます。 実行コマンド $ ansible-playbook -i ansible_hosts instance_create.yml playbookは以下のようにしてい…

Auto Scalingでスケールインしたときの動作まとめ

AWS

概要 Auto Scalingを利用していて、スケールインしたときの動きについてまとめてみます。 AWSドキュメントによると、スケールイン時のうごきが以下の通り。 Auto Scaling は、選択したアベイラビリティーゾーンで、保護されていないどのインスタンスが最も古…

boto3でDynamoDBのテーブルの内容をscanしてすべて取得してみる

boto3を利用してDynamoDBのテーブルの内容をscanしてすべて取得してみたいと思います。 前提 以下のようなテーブルを用意しています。 これをすべてscanして取得します。 コード コードは以下の通りです。単純ですね! python 以下のような結果が返ってくる…

PackerでWindowsServerのAMIを作成する

PackerでWindowsServerのAMIをつくってみます。 これが考えられる最小構成だと思います。 これに肉付けすることでカスタムAMIを作成することができると思います。 環境 Packer v1.1.3 Packerが動いているサーバ : Amazon Linux 2 PackerがつくるWindowsServe…

Amazon Linux 2でPacker を実行したところ/usr/share/cracklib/pw_dict.pwd: Permission deniedのエラーがでる

事象 Amazon Linux 2 でPackerを実行しようとしたところ、以下のようなエラーが出てしまいました。 $ packer /usr/share/cracklib/pw_dict.pwd: Permission denied /usr/share/cracklib/pw_dict: Permission denied 原因 どうやら以下のPackerを実行してしま…

EC2 External InventoryでプライベートIPで取得したい

AnsibleのEC2 External InventoryでEC2インスタンスの情報を取得したとき、デフォルトのままだと以下のようにIPアドレスがパブリックIPで表示されるかと思います。 $ ./ec2.py { "_meta": { "ap-northeast-1a": [ "54.xxx.xxx.xxx", "13.yyy.yyy.yyy" ], "ta…

EC2 External Inventoryを利用してAnsibleのhostsを動的に管理する

Ansibleを利用した構成管理では、実行対象のホストをインベントリファイルと呼ばれるファイルに記載しておく必要があります。 以下のようなかんじ [local] localhosts [test_server] 192.140.1.1 192.140.1.2 [web_server] 192.140.2.1 これだと、AWSでAutoS…

AnsibleでS3からファイルをダウンロードする3つの方法

AnsibleでS3からファイルをダウンロードする方法を紹介します! ① s3_getを利用する AnsibleのCloudModuleであるs3_getを利用する方法です。 前提条件 ターゲットノードにS3へのアクセス許可が必要 実行コマンド $ ansible-playbook -i ansible_hosts s3_get…

S3上のテキストファイルをLambda(Python)で取得する

今回はS3の中に入っているテキストファイルの内容をLambda(Python)で取得してみたいと思います。 S3上には内閣府が公表している国民の休日のcsvファイルの文字コードをutf-8に変換したものを格納しています。 ↓これをsjisからutf-8に変換 http://www8.cao.go…

LambdaのトリガにCloudWatchを設定した際にWe currently do not support adding policies for $LATEST. のエラーがでた場合の対処法

AWS

LambdaのトリガにCloudWatchを設定した際にWe currently do not support adding policies for $LATEST.のエラーがでた場合の対処法をご紹介します。 事象 バージョンが$LATESTのLambda関数のトリガにCloudWatch Eventsを追加しようとしたところ以下のような…

停止中のインスタンスのIAMロールを置換するとエラーになる

AWS

だいたいタイトルのとおりです。 停止中のEC2インスタンスのIAMロールを置換しようとするとエラーがでて、置換することができません。 以下のようなエラーがでます。 when calling the ReplaceIamInstanceProfileAssociation operation: The association iip…

AWSCLI describe-instances でよく使うコマンドまとめ【随時更新】

AWS

EC2インスタンスの一覧を見るAWS CLIのdescribe-instancesコマンドでよくつかっているコマンドを紹介します。 リージョン内のすべてのインスタンスの情報を取得 特定のインスタンスIDの情報を取得 起動中のインスタンスのみ取得 特定のインスタンスタイプの…

S3で一定期間が経過したファイルをGlacierに格納する

AWS

S3上にアクセスログを定期的に書き込むようなシステムがあったとして、古いアクセスログも残しておこなければならないんだけどそんなに頻繁に利用するわけではないから安価に保存したいといった場合があります。 これらを実現するために S3バケットにライフ…

Ubuntu16.04で拡張ネットワーキングをONにする【AWS】

AWS

EC2で拡張ネットワーキングを有効化する設定方法をご紹介します。 そもそも拡張ネットワーキングとは? 設定方法 環境 ネットワークインターフェイスドライバーを確認する ixgbevfモジュールをインストールする 拡張ネットワーキングの設定を行う そもそも拡…

S3で一定期間が経過したファイルをライフサイクルで削除したい

AWS

S3上にアクセスログを定期的に書き込むようなシステムがあったとして、古いアクセスログを自動的に消す仕組みを作ってみたいと思います。 これらを実現するために S3バケットにライフサイクルルールを設定し、古いログを削除するよう設定します。 ライフサイ…

S3で有効期限付きの署名付きURLを作成する

AWS

S3で署名付きURLを利用してユーザごとに別々のURLを発行できるようにしてみたいと思います。 手順 手順 対象のディレクトリに対するアクセス権を無効にする 署名付きURLをつくる 対象のディレクトリに対するアクセス権を無効にする まずは署名付きURLを利用…

S3へのアクセスログを記録する

AWS

S3にはアクセスログを記録する機能があります。 その機能を有効にすると、別のS3バケットにログを記録することができます。 手順 手順 ログ格納用のバケットを作成する バケットのログ記録を有効にする アクセスログを確認してみる まとめ ログ格納用のバケ…

S3と独自ドメインでウェブサーバを構築する

AWS

S3にはストレージとして利用する以外にもうひとつの使い方があります。 それは静的コンテンツを公開するWebサーバとしての使い方です。 S3には静的ウェブホスティング機能というものがあり、この機能を有効にするとS3に保存したファイルをWebサイトとして公…

Amazon Linux で snmpwalk を利用する

Amazon Linuxでsnmpwalkを利用しようとしたときにCommand not foundって言われたので簡易メモ。 インストール sudo yum -y install net-snmp-utils 確認 snmpwalk -v 2c -c public localhost Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂…

Windows Server 2016 にSNMPサービスをインストールする(英語版)

zabbix 3.0でWindows Server 2016 SNMPサービスを入れる方法をご紹介します。 環境 以下のAWS環境標準のWindows Server 2016のAMIを利用。 Microsoft Windows Server 2016 Base - ami-4325fa25 Microsoft Windows 2016 Datacenter edition. [English] 手順 …

Windows Server 2016 で拡張ネットワーキングをONにする【AWS】

AWS上のWindows Server 2016で拡張ネットワーキングをONにして見たいと思います。 そもそも拡張ネットワーキングとは? 拡張ネットワーキングは、高い帯域幅、1 秒あたりのパケット (PPS) の高いパフォーマンス、常に低いインスタンス間レイテンシーを実現し…