Lambdaで最新AMIを取得する!(Python)
Lambda(python)で最新AMI IDを取得するプログラムを書きました。
Windowsは「Windows Servier 2012 R2 Base」、Linuxは「Amazon Linux」の最新AMI IDを取得してます。 Filters部分をカスタマイズしてもらえれば、その他にも使えると思います!
import boto3 def lambda_handler(event, context): client = boto3.client('ec2') response = client.describe_images( Owners=['amazon'], Filters=[ { 'Name': 'root-device-type', 'Values': ['ebs'] }, { 'Name': 'architecture', 'Values': ['x86_64'] }, { 'Name': 'name', 'Values': ['Windows_Server-2012-R2_RTM-Japanese-64Bit-Base*'] } ] ) list = [] for x in response["Images"]: name = x["Name"] ami_id = x["ImageId"] list.append([name, ami_id]) list.sort(key=lambda x:x[0], reverse=True) print list[0][1]
import boto3 def lambda_handler(event, context): client = boto3.client('ec2') response = client.describe_images( Owners=['amazon'], Filters=[ { 'Name': 'root-device-type', 'Values': ['ebs'] }, { 'Name': 'architecture', 'Values': ['x86_64'] }, { 'Name': 'block-device-mapping.volume-type', 'Values': ['standard'] }, { 'Name': 'name', 'Values': ['amzn-ami-hvm*'] } ] ) list = [] for x in response["Images"]: name = x["Name"] ami_id = x["ImageId"] list.append([name, ami_id]) list.sort(key=lambda x:x[0], reverse=True) print list[0][1]
【備忘録】CloudWatchLogsのロググループ作成とログ保持期間を変更するワンライナー
以前、【備忘録】CloudWatchLogsのログ保持期間を変更するワンライナーを投稿しましたが、 今回は、少しバージョンアップして、CloudWatchLogsのロググループ作成とログ保持期間を変更するワンライナーです!
for LOGGROUPNAME in $(cat <CloudWatchLogsのロググループ名を入れたファイル>) ;do aws logs create-log-group --region ap-northeast-1 --log-group-name ${LOGGROUPNAME} && aws logs put-retention-policy --region ap-northeast-1 --log-group-name ${LOGGROUPNAME} --retention-in-days <ログ保持期間>;done
※事前に<CloudWatchLogsのロググループ名を入れたファイル>を作成しておいてください!
【備忘録】CloudWatchLogsのログ保持期間を変更するワンライナー
CloudWatchLogsのログ保持期間を変更するワンライナーです。
aws logs describe-log-groups --region ap-northeast-1 --query 'logGroups[].logGroupName' --output text| tr '¥t' '¥n' | while read LOGGROUP; do aws logs put-retention-policy --region ap-northeast-1 --log-group-name ${LOGGROUP} --retention-in-days 7; done
ロググループが50個ほどあったので楽チンに変更できました(°∀° )/
Data Migration Serviceを触ってみた!
概要
- 移行元、移行先のどちらかがAWS上にある必要があるが、他はオンプレミスでも、DB on EC2でも、RDSでもOK
- 移行の種類は以下の3つから選択可能
①"migrate existing data" (既存データの一括ロード)
②"migrate and then replicate" (一括コピーした後に、継続的に差分レプリケーション)
③"replicate going forward" (差分レプリケーションのみ実行)
検証した環境
AWS DMS構築の流れ
①AWS DMS用Subnet Groupの作成
↓RDS同様にAZをまたがる2つのSubnetが必要になります。
③移行元・移行先エンドポイント(接続情報)の作成
まずはSource Endpointから作成します。
↓接続テストを行って成功すればOKです。
次はTarget Endpointを作成します。
↓こちらも接続テストを行って成功すればOKです。
④タスクの作成
↓エンドポイントの選択や移行の種類、どのテーブルを移行するか等を設定
⑤タスクの実行
↓しばらくするとStatusが「Load complete」になります
↓ CloudWatch Logsを見ると、1000件のデータロードが終わったことを確認できます。
検証結果
- ダミーデータ1000件は問題なく移行できた
- 文字コードも変わらずそのまま移行できた
- 移行時間は1~2分程度
つまづいたところ
① 環境準備のところで…
- 移行元に投入したデータの文字コードが間違っていた
② AWS DMSのところで…
- 指定したスキーマのテーブルが移行されない
AWSソリューションアーキテクト-プロフェショナルに合格✨
ちょうど1か月ほど前になりますが、
”AWSソリューションアーキテクト-プロフェショナル”
に合格しました!
約1年前?に、認定資格が2年更新になるよと伝えられ、
2016年4月末までにプロフェッショナルか再認定に合格しないと失効するよ
ということで、この1年間ダラダラと勉強し続け…
2016年4月30日に無事合格!(ギリギリ)
となりました。
もちろん、簡単ではなかったです。。
模擬試験は2回受けて、2回とも落ちていますし。
本試験も1回落ちていますし。
ということで、私なりの勉強備忘録を残しておきます。誰かのお役に立てれば幸いです。
- サンプル問題を解く
- 模擬試験を受ける
- 問題文がとにかく長いですが、読むことを諦めないでください
- 何が問われているかをまず把握する(コスト? 可用性? などなど)
- 問題文がどんな構成なのかを自分なりに構成図などを書いて整理するのがオススメ
- 活用集とドキュメントとCDPを読む!読む!!読む!!!
- 実業務で触ったことのないサービスは書いてまとめました
- 基本的なIT知識の勉強
- クラウド世代なもので、ここを理解するのが大変だった…
- 他の人の勉強法を参考にする
- 本試験を受ける
- 1回目は落ちる覚悟で、とにかく問題や選択肢のキーワードをたくさん覚えて帰るw(←1回目は早く受けるのがオススメ)
- そのキーワードを元にわからなかったサービスなどをさらに勉強!
- 試験の際に白紙のメモが渡されるので、そこに選択肢の番号を書いて、「これは違う!」と思ったらバツを書いて正解を絞っていきました
- ちょっと考えて分からなかったら「後で見直す」にチェックしておいて、後回しにするのが良いです(粘っても時間がなくなるだけです)
とまあ、受かったわけですが…
まだまだ触ったことのないサービスも多く、机上の知識しかないものもたくさんあるので
プロフェッショナルの名に恥じないようさらに勉強します!!