はじめに
ども、とみた(@_tamitom)です。
今回はAWSでガチャついてみたいと思います。
仕事では結構AWSをいじってるんですが、ブログにはあんまり書いてませんでした。
弊社でも絶賛テレワーク中なんですが、VPNのライセンス制限で同時接続数が少なかったり課題もあるので、AWS Client VPNを準備中です。
利用するからには、利用状況を把握したいので、その辺りのやり方を中心に。
AWS AppStreamなんかも使ってみたりしているので、興味のある方はこちらのnoteを。
※noteと、はてなブログの使い分けがわからず、情報が散在中(汗)
ガチャつき方
AWS Clietn VPNの構築方法については、割愛します。(イキナリ)
クラスメソッドさんのブログが非常に参考になりますので、そちらで!
ただ、今回ログを分析するのでAWS Client VPN → CloudWatch Logsの設定は必要です。このあたりは、サーバーワークスさんのブログに記載があるので、そちらで!
必要に応じて CloudWatch Logs のロググループ・ログストリームを選択します。(事前に作成が必要)
AWS Client VPN → CloudWatch Logsの設定が終わってる前提で、
ログストリームにはAWS Client VPNのログがたまっていると思います。
このログから、必要な情報を抜いていきたいと思います。
自分の場合は、接続ユーザー名・接続開始時間・接続終了時間を取ります。
ログ > インサイト をクリックします。
ロググループにAWS Client VPNのロググループを指定します。
指定するとログ内のフィールドが自動的に表示されます。
後はクエリを書いて絞りこんでいきます。SQLを書ける人はなんて事無いと思いますが、私は全く書けません。が、自分が表示したいものだけに絞り込むぐらいはできました。
下記をクエリ入力欄に入れます。
クエリの説明ですが、まず、必要なフィールドを指定します。
ユーザー名(username)、接続開始時間(connection-start-time)、接続終了時間(connection-end-time)
また、connection-resetというconnection-log-typeがあれば足りるので、フィルターしています。
クエリの実行をクリックします。
該当するログが下部に表示されます。
※この時検索するログの期間は上部で指定できます。
ログを絞りこめたので、”アクション"からcsvにエクスポートすれば、後は煮るなり焼くなり自由ですw
自分はPowerBIに取り込んで、ユーザー毎の利用時間合計をとりあえず出してみるなどしてみました!
まとめ
AWS AppStreamなんかは、ユーザー毎のセッション情報をS3に吐いてくれたりするので、サクッと可視化できちゃうんですが、サービスによってはそう簡単にいかなかったりするので、最初は困ってました..
CloudWatchでも色々できるんだなぁと、改めてAWSの奥の深さを実感。サービス、機能、多すぎ...
社内向けの仕組みも導入後にしっかりデータ見ていくことが必須になってきているので、データ収集、可視化は重要ですね。
PowerBIの方も中途半端なスキルなので、かっこいいダッシュボードが作れるようにしたい。
〆