質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
DNS

DNSとは、Domain Name Systemのことで、インターネットなどのTCP/IPネットワーク上でドメイン名やホスト名と、IPアドレスとの対応づけを管理するシステムです。DNSのデータベースは、IPアドレスの4つの数字を通知するDNSサーバーで構築されており、IPアドレスをドメイン名から引き出す機能やドメイン名に関するメールサーバ情報を取り扱っています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Q&A

解決済

2回答

2154閲覧

DBを含むサーバ引越しとDNSについて

zico_teratail

総合スコア907

DNS

DNSとは、Domain Name Systemのことで、インターネットなどのTCP/IPネットワーク上でドメイン名やホスト名と、IPアドレスとの対応づけを管理するシステムです。DNSのデータベースは、IPアドレスの4つの数字を通知するDNSサーバーで構築されており、IPアドレスをドメイン名から引き出す機能やドメイン名に関するメールサーバ情報を取り扱っています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

1グッド

0クリップ

投稿2016/02/20 13:01

サーバの引越しについて調べると、たいてい「DNSの浸透期間は余裕を見て1~2週間、その間は新旧両方のサーバにデータを残しておきましょう」などと書いてあります。

静的なHTMLや、DB更新が無いサイトだったらそれでも良いと思います。
しかしDBに書き込み等が発生するサイトの場合、新旧それぞれのサーバにアクセスされてしまってはDB内容の整合性がとれなくなってしまいます。

このような場合、どうやってサーバ引越しをするのがベスト・プラクティスなのでしょうか?
自分で考えてみましたが、せいぜい1~2週間サイトを停止してしまうくらいしか対策が思いつきません。
もちろん実際にはそういうわけにはいきませんから他の方法をとるべきだと思うのですが・・・

skksky👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

サーバの借り方にもよりますが、DB ではなくて、http でリバースプロキシという手もあります。DB とやり取りするよりは、軽いと思います。

DB があって、両方へのアクセスを避ける場合は、旧サーバは止めたり、メンテナンスにするしかないでしょうね…。あとは、shi_ue 様の言うように、ドメインを変える作戦。

実際には1週間くらいは旧サーバにもそこそこのアクセスがありました。

とのことですが、TTL を短くしてから、引っ越しまではどのくらいでしたか?また、レジストラに変更はありましたか?DNS サーバも切り替わるケースだと、面倒なことが多いです。

書き忘れましたが、「浸透」という表現は避けた方がいいと思っています。

投稿2016/02/21 14:37

編集2016/02/21 14:46
takotakot

総合スコア1111

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

zico_teratail

2016/02/23 04:23

>TTL を短くしてから、引っ越しまではどのくらいでしたか? TTLを変更してから2~3日経ってから引越し作業をしました。 なお変更前でも1200秒でしたので、どちらにせよ1週間もかかるのはちょっと長すぎるなぁと。 >また、レジストラに変更はありましたか? いいえ、ネームサーバの変更のみで、レジストラは変更していません。 >「浸透」という表現は避けた方がいい そのようなご意見をネット各所で見かけますが、私は「浸透」という表現はそんなに間違っていないような気がします。 逆に「浸透」以外にどう表現したら良いのでしょうか?
takotakot

2016/02/23 05:20

浸透でなくて「キャッシュの期限切れ」あるいは TTL ですね。 確かに、変更前で1200秒であれば、一般のクライアントが1週間経った後も古いサーバに来るのはおかしいですね。
guest

0

ベストアンサー

DNSの浸透は、TTLの時間を短くすれば、そんなに時間がかからないですね。
本当に全体に行き渡ったか、なんて誰にも分からないですけど。

移設はこんな感じでやってます。

  • DBとWebサーバーが同じマシン内にある場合、いったん新旧2台構成にします。
  • 新Webサーバーは旧DBを参照するようにします。
  • DNSを切り替えて、浸透を待ちます。
  • 浸透したら、一時的にメンテナンス画面を出して、旧DBからバックアップして新DBに移し、新Webサーバーを新DBを参照するようにします。
  • メンテナンス画面を解除します。

とこんな感じでしょうか。
DBがネットワーク越しになるので、レイテンシごが気になりますが、しょうがないですよね。

投稿2016/02/20 14:16

shi_ue

総合スコア4437

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

zico_teratail

2016/02/20 14:42

ご回答ありがとうございます。 >DNSの浸透は、TTLの時間を短くすれば、そんなに時間がかからない 私もそう思ってTTLを120秒にして引越しをしたのですが、実際には1週間くらいは旧サーバにもそこそこのアクセスがありました。日に日に減っていって、1週間を過ぎたくらいでようやくゼロになる感じでした。やはりネットワーク各所での(こちらがコントロールできない範囲の)キャッシュが消えるまでは浸透するまで時間がかかると思われます。 新Webサーバから旧DBサーバを参照するというアイデアはなるほどと思いました。 でも実際にはおっしゃる通りレスポンスの遅れが気になるレベルで出るでしょうし、そもそも共用レンタルサーバではネットワーク越しのDB利用は出来ないかも・・・?
shi_ue

2016/02/21 05:07

共用レンタルサーバだと厳しいですね。 新サーバを別のサブドメインなどを振って稼働させ、旧サーバはメンテナンス画面を出し、新サーバ(サブドメイン)に誘導。同時にDNSの切り替え。 DNSの浸透と同時に、サブドメインは廃止のメッセージに切り替えて、元々のドメインに誘導。サブドメインのアクセスがなくなったのを見て、サブドメイン廃止。 このくらいしかやりようがなさそうです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問