4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Simple AD (AWS Directory Service)を消したら大変なことになった話

Posted at

何をしたか

Simple ADは、AWS Managed Microsoft ADが提供する機能のサブセットを提供しており、ユーザーアカウントやグループメンバーシップの管理、グループポリシーの作成と適用、Amazon EC2インスタンスへのセキュアな接続、Kerberosベースのシングルサインオン(SSO)の提供などが可能です。

こいつを削除しました。

なぜ消したか

AWSのアカウント自体が特定のプロジェクトのサービス用のアカウントで、
その中にSimple ADがポツリと存在していました。

特にユーザー認証を行っているサービスでもなく、EC2への接続もSSHのため、
「誰かがテストで作ってそのまま忘れたのかな?」と思いました。

月5,000円 くらいかかっており、費用削減になるかなと思い、
(2年前に) プロジェクトのサーバー構築を担当した(既に退社している相談役の)インフラエンジニアの方に、

ワイ「これ消していいですかー?
インフラニキ「使ってないので消しちゃってください

というやり取りのもと、削除しました

どうなったか

10分も経たずに「 ページ見れないんだけど? 」と連絡が来ました。

すべてのEC2からAurora MySQLへの接続ができなくなりました。
本番環境だけでなく開発環境などの すべてのEC2 において機能しなくなりました。

どうやら、EC2の 名前解決用のDNSサーバー として運用していたそうです。
EC2からMySQLへはパブリックアクセスとなっており、そのときに指定していたエンドポイントURLからIPが引っ張ってこれない状態になりました。

復旧までの死闘

~30分

連絡が来てから真っ先にするのは、とりあえずWebサーバーの稼働確認。
SSHでログインして、Webサーバーのサービス確認。

そして、確認中にデータベースへ接続できないことが判明した。

~1時間

どうやら、ネットワーク周りが怪しい。
curl ipconfig.io をやっても curl: (6) Couldn't resolve host のようなエラーが出る。
ホスト名が解決できていない、つまり名前解決ができていないのだ。

よし、Simple AD を作り直そう!

~2時間

もちろん、作り直したところで元に戻るわけでもなく…。
うろ覚えの設定だけ 打ち込んだ Simple AD に立ち上げました。
(こんなことなら消す前に スナップショット 作っておけばよかった)と思っても後の祭り。

今までは妖精さんが勝手に設定してくれてたから、ネットワーク設定なんてわからん。

Simple ADの詳細画面にも「ディレクトリの DNS 名」くらいしか書いてない。
他の紐づくサービスへのリンクがあるわけでもない。
もちろん Route 53 も確認、しかしそんなDNS名は存在していない。

~2時間30分

ネットワークのサービスっぽいやつを、手当り次第に確認!
VPC、サブネット、ネットワークACL、DHCPオプションセット…。 DHCPオプションセット !!

やりました! ドメイン名 がSimple ADで設定されているものと同じだ!
じゃあリンクつけといてくれよ!!!)と思いながら設定を確認!!

Simple AD ⇔ DHCPオプションセット ⇔ VPC ⇔ EC2 のような感じで紐付いているようだ。

~3時間

なんか「ドメインネームサーバー」とかいう項目にローカルIPアドレスっぽいのが2つ書いてある…。
何これと思いつつも、EC2の /etc/resolve.conf と比較。

/etc/resolve.conf
search {Simple ADのDNS名と同じ}
nameserver {DHCPオプションセットの1番目のIPと同じ}
nameserver {DHCPオプションセットの2番目のIPと同じ}

これじゃダメなのか!?

~4時間

インフラニキ「AWSに問い合わせてみたら?
ワイ「!!」

早速、代理店経由でAWSに問い合わせ。
現在の症状を詳しく記述、急いでるからこそ 1発で的確な返事がほしいので、できる限り詳しく

色々調べつつ、40分後くらいに返事。

AWS様「Simple ADのディレクトリのIPアドレスを確認いたしましたところ 現在の設定とは別のIP で作成されておりました。」

「よし来た!」と思う反面「Simple AD作ったときにそんな項目どこにもなかったけど!?」って思ってしまった。

~5時間

新しいIPアドレスで /etc/resolve.conf を書き換えよう!

````/etc/resolve.conf`
search {Simple ADのDNS名と同じ}
nameserver {新しいの1番目のIPと同じ}
nameserver {新しいの2番目のIPと同じ}


再起動!!

がっ……駄目っ……!

名前解決できない、設定が元に戻ってしまった!!

## ~5時間30分

どうやらDHCPの設定が反映される模様?
そういえば、DHCPオプションセットの設定を変えていなかった!

新しい **DHCPオプションセット** を作成し、新しい **ドメイン名** と**ドメインネームサーバー** を設定!
そして、VPCの紐付け!
EC2を再起動!

いけた!

つながった!!

## ~終戦

すべてのEC2を再起動し、無事完了。

# 戦後処理

無事に終わったと思ったけど、まだまだやることは多い。

## 顛末書

やり取りなどを事細かにまとめました。
ただ、「 **再発防止策** 」については頭を抱えました。

とりあえず、「**属人化を防ぎ、複数人でサーバーの構成を理解し、サーバー設定を触る際はできるだけ大勢に確認したうえでやる**」みたいなことを書いた。


# 終わり

反省はしつつ、インフラエンジニア増やしてくださいと思いました。
4
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?