Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第1回 雲勉LT【オンライン:中級者向け】リソース作ったら作成者名とか自動でタグ付けされてたらいいな
Search
Y.Sumikura
November 04, 2022
Technology
0
130
第1回 雲勉LT【オンライン:中級者向け】リソース作ったら作成者名とか自動でタグ付けされてたらいいな
Y.Sumikura
November 04, 2022
Tweet
Share
More Decks by Y.Sumikura
See All by Y.Sumikura
第103回 雲勉【オンライン】インフラエンジニアにおける ChatGPT の便利な使い方と注意点
sumikurayurie1125
1
260
第101回 雲勉【オンライン】VPC から始めるネットワーク入門
sumikurayurie1125
0
170
第99回 雲勉【オンライン:初心者向け】Infrastructure as Code (IaC) 入門 〜TerraformとAnsibleを使ってみよう〜
sumikurayurie1125
0
230
第96回 雲勉【オンライン:初心者向け】インフラエンジニアのKubernetes入門
sumikurayurie1125
0
240
第8回 雲勉LT【オンライン:中級者向け】AthenaでS3上のデータとDynamoDBのデータを結合する
sumikurayurie1125
0
340
第93回 雲勉【オンライン:初心者向け】CI/CDって結局何なの?インフラエンジニアがCode3兄弟を学ぶ
sumikurayurie1125
11
3.4k
第7回 雲勉LT【オンライン:初心者向け】サーバレスコンテナサービス Lambda, Fargate, App Runnerの特徴、違いを解説
sumikurayurie1125
3
590
第6回 雲勉LT【オンライン:初心者向け】2022年 気になったアップデート情報:「RDSコンソールの、EC2ワンクリック接続オプション」について
sumikurayurie1125
0
190
第5回 雲勉LT【オンライン:初心者向け】GCのサービスだけでCI_CDを構築してみよう
sumikurayurie1125
0
64
Other Decks in Technology
See All in Technology
経営から紐解くデータマネジメント
pacocat
3
840
クラスタ統合リアーキテクチャ全貌~1,000万ユーザーのウェルネスSaaSを再設計~
hacomono
PRO
0
190
DDD x Microservice Architecture : Findy Architecture Conf 2025
syobochim
13
5.3k
単一Kubernetesクラスタで実現する AI/ML 向けクラウドサービス
pfn
PRO
1
370
.NET 10のEntity Framework Coreの新機能
htkym
0
120
『星の世界の地図の話: Google Sky MapをAI Agentでよみがえらせる』 - Google Developers DevFest Tokyo 2025
taniiicom
0
380
AIで加速する次世代のBill Oneアーキテクチャ〜成長の先にある軌道修正〜
sansantech
PRO
1
120
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
400
"'TSのAPI型安全”の対価は誰が払う?不公平なスキーマ駆動に終止符を打つハイブリッド戦略
hal_spidernight
0
170
リアーキテクティングのその先へ 〜品質と開発生産性の壁を越えるプラットフォーム戦略〜 / architecture-con2025
visional_engineering_and_design
0
7.4k
生成AIが出力するテストコードのリアル よくあるコードと改善のヒント
starfish719
0
260
生成AI時代に若手エンジニアが最初に覚えるべき内容と、その学習法
starfish719
2
630
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
It's Worth the Effort
3n
187
29k
Documentation Writing (for coders)
carmenintech
76
5.1k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
GitHub's CSS Performance
jonrohan
1032
470k
BBQ
matthewcrist
89
9.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Scaling GitHub
holman
464
140k
Optimizing for Happiness
mojombo
379
70k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Transcript
第1回 雲勉LT【オンライン︓中級者向け】 リソース作ったら作成者名とか⾃動でタグ付けされてたらいいな
⾃⼰紹介 2 • 野崎 ⾼弘(のざき たかひろ) • クラウドインテグレーション事業部 プロジェクト企画推進セクション インフラ技術
• インフラ構築・保守やSOCセキュリティアナリストをやってました • 現在は技術検証やドキュメント作業が主 • 趣味︓資格取得、⽝の散歩、ドラクエ、巨⼈ファン、ドラマ • 好きな⾷べ物︓カレー、ハンバーグ、チーズ、パクチー、⽣クリーム系スイーツ • AWSは現在7冠中 3
タグ付けされてないと⾊々と困る 3 よくあるAWS検証環境で、AWSリソース作成時にタグを付与し忘れ、結果、作成者不明の無名リ ソースの残骸になっているところが多い いつ、誰が作ったのか謎の正体不明の幽霊インスタンス 消していいのかもわからない・・ Windowsのプロパティには こんなに情報が付いてるのに
そこで 4 リソース作成者が意識して⾃分の名前などを付けてタグ付けを気をつけてくれていることも多い が、そういった⼈為的なことに依存するのではなく、作成者の意図や⼿間なく透過的にタグが⾃ 動付与されると便利 そこで︕⾃分の名前と作成⽇を⾃動付与することで、無駄なリソースの主を検出し、なくすこと で、コスト削減につながる⽅法を考えてみました
条件 5 • タグ付けを強制するものではないこと(変なタグを付けられてしまう) • タグ付けをしないとリソース作成が失敗するものではないこと(権限がないエラーなのかと 勘違いしてしまうため) • タグなしリソース検索して通知するものではないこと(将来に向けて考える) •
過去のタグなしリソースを追う⽅法は別途考える(監査で必要)
注意事項 6 • 作成者が意図的に⾃分の名前を付けても、重複タグの検知はしていないため、関係なく⾃ 動的にタグが付与されます。その結果、名前タグが重複したりする可能性あり • 1つのAWSリソースにつき、1つのLambdaファンクションと1つのEventBridgeが必要に なるため、リソースの数だけこれらの作成が必要に • CloudTrailの
Createresourcename イベントをトリガーしているため、CloudFormation などで⾃動作成されるリソースには⾮対応
事前準備 7 タグ付けしたい名前や⽇付など情報の位置を、CloudTrailログから取ってくること そのため、あらかじめ⼀旦AWSリソースを作成してみます。例えば、EC2インスタンスを実際に 作成し、CloudTrailログから イベント名=RunInstances でその作成時のログを検索します。 ここで欲しいのは、userIdentity と responseElements
の中⾝です。 userIdentity からは、username と creationDate が取れます。 responseElements からは、instanceId が取れます。
事前準備 8 userIdentity • userName • creationDate responseElements • instanceId
作業の流れ 9 1.Lambda関数を作成
作業の流れ 10 2.ソースコードを作成 boto(ぼと)3( AWS SDK for Python)パッケージのEC2クラスのclient のcreate_tagsメソッドで実際にタグ付けを ⾏います。ここで上記で取ってきた
userNameやcreationDateを指定していま す。 (参考) https://boto3.amazonaws.com/v1/documentation/api/lat est/reference/services/ec2.html?highlight=nat%20gatew ay#client
作業の流れ 11 3. EventBridgeルールを作成 イベントパターン︓ { "source": ["aws.ec2"], "detail-type": ["AWS
API Call via CloudTrail"], "detail": { "eventSource": ["ec2.amazonaws.com"], "eventName": ["RunInstances"] } } ターゲット︓ 先ほど作成したLambda関数を指定します。
作業の流れ 12
None