HIGOBASHI.AWS 第4回 ネットワーク × ガチ編 に参加してきた #higobashiaws

2018/06/08

HIGOBASHI.AWS 第4回 ネットワーク × ガチ編 に参加してきたので、メモを残します。

ネットワークをテーマにクラスメソッドさんが開催する勉強会で、
最後の4回目ということもあり、よりマニアックな内容になっていたようです。

会場は、肥後橋(リモート)と秋葉で開催でした。

宣伝

「InsightWatch」AWSのセキュリティサービス。無料。

俺が考える最強のネットワーク構成

大栗宋氏(@maroon1st)
※あくまで個人的思想に基づいた考え

  • ネットワークでもMulti-AZを基本
  • 基本的に密結合する範囲を一つのVPCに、疎結合なものは別VPC
  • サブネットはルーティングの単位と考える
  • FirewallはSecurityGroupをメインに。必要最低限のNACL。(AWSのベストプラクティスとは相違あり)
  • VPC間の通信は、Peering(密な関係)とPrivateLing(疎な関係)を使い分ける
  • 事例
    • ログ収集機能:PrivateLink使う。各Log AgentからPushを受ける
    • 監視機能:PrivateLingを使う。TCP受信のみ。
      • Prometheus等のPull型はPrivateLinkでは無理。
    • 各アプリケーション:PrivateLinkでログ等のサービス基盤にアクセス
  • サブネット分割の考え方。4パターンに分ける。
    • Public:インターネットとの通信
    • Internal:他システム(VPC)連携
    • Protected:サーバ配置(アプリケーション)
    • Private:サーバ配置(データベース)
  • インターネットとの通信
    • ALB/NLB
    • 直接外部から接続されるインスタンス
  • 他システム練気
    • ALB/NLB
    • 直接外部から接続されるインスタンス
  • サーバ配置
    • APサーバ
  • サーバ配置
    • EC2以外のVPC内に配置できるリソース
    • データストア on EC2
    • 外部接続が必要な場合はForwaard Proxyを挟む
  • 質問
    • Regionまたいでデータを共有したい場合はどういう思想?
      • そもそも、本当に別リージョンで同じデータが必要か業務要件を確認する
    • PrivateLink使って監視サービス(UDPしたい)場合は?
      • あきらめましょう(笑)

ハマりポイントから考察するMicrosoftADの裏側

豊崎隆氏

  • AWS Directory Service
    • Microsoft AD
  • Mictosoft ADとVPCエンドポイント
    • Mictosoft ADのドメインに参加しているEc2からVPCエンドポイント経由でSSMを利用したかった
  • 期待してた動きと実際の動き
    • Provided DNSからプライベートIPが返ってくることを期待
    • 実際はパブリックIPが返ってきた。
  • Mictosoft ADの裏側を空想
    • Mictosoft ADは別のVPCにある?

NLBとPrivateLinkの仕様に立ち向かう

菊地修治氏

  • NLB + PrivateLink のエンドポイントサービス
    • インターフェイスエンドポイント
    • 独自のサービスをVPCエンドポイントを提供
  • ハマりどころはいっぱい
    • DirectConnect経由のアクセスは可能だがVPC経由は不可
    • リージョン内VPCピアリング、m5(c5).largeだとアクセス可、m4.largeだと不可
      • m5(c5)のNitroSystemuハイパーパイザは特別扱い

Terraformでサクッと作るAWSネットワーク

佐伯航

  • Terraformとは
    • インフラをコードで管理
  • メリットと感じること
    • ドライラン(terraform plan)できること
  • Terraform モジュール
    • Terraformコードをモジュール化できる
    • 呼び出し元からパラメータ渡して呼び出せる
  • Terraform Module Registry
    • さまざまなモジュールが公開
  • VPC作成デモ
    • Terraform Module Registry からvpc検索
    • 選択したモジュールのUsageをterraform.tfファイルにコピー
    • terraform plan → terraform apply
  • 状態ファイル tfstate
    • 複数人でどう共有するか
    • リモートバックエンド
    • AWSならS3がおすすめ
  • リモートバックエンド設定で、同時にplanやapplyするとステートファイル壊れる問題
    • ステートロック
  • Terraformバージョンが異なるとバグ等でハマる
    • プロバイダプラグインのバージョンも存在するので注意
    • →バージョン固定する
  • Terraformのバージョンアップ
    • GithubのCHANGELOGと公式のブログ?を読んでおきましょう