クラウドサーバーでDockerにするメリットを考えて見ました
現在logwのサイトはDocker環境にはありません。これはDocker導入前に構築したサーバーです。logwのサーバーには他にもいくつかドメインを運用しているのでサイトは複数入っています。この状況を元に考えて見たいと思います。
logwサーバー
- 複数ドメインで運用
- ベンダー:さくら
- サーバー:VPS
- 構成:WordPressとそれ以外のサイトが入る
- Docker環境:なし
となっています。ベンダーを今後変える場合、例えばさくらのVPSからさくらのクラウドなら特に問題無くいけるかもしれませんが、他のベンダーとなると大変です
サーバー移行(想定)
ベンダーを変える場合、サーバーを同じCentOSを使うにしても同じミドルウェアなどをインストールしたり設定が必要になります。WordPressであればWordPRessのプラグインで以降はスムーズにできますが、PHPやミドルウェアとなるとそうはいきません
想定される作業
- OpenLiteSpeedのインストール
- PHPのインストール
- MySQL8のインストール
- SSLの設定
- WEBサイトの移行
というのが考えられます。理想はスナップショットをとり、それを使って他のベンダー(GCP、AWS、Conoha)などに移せる事がよいかもしれません。そうすれば環境設定したファイル毎もっていくことができます。
システム全体のバックアップは可能なのか?
新しいサーバーで再度環境を構築するのは時間がかかります。環境構築スクリプトを使っても、各ドメインの登録や設定はスクリプトではできないとこでもあるのでやはり大変です。理想は今あるシステムをそのまま新しいとこに持って行くというのが理想です。
それなら移行の必要がないのではないか?
システムの環境をそのまま移行するなら、そもそもサーバーの移行自体いらないのではないか?と思われるかも知れません。例えばCentOS7のサポート期限は2024年まであります。まだ4年近くサポート期限はあります。logwの今のサーバーは、CentOSがリリースされた2014年近くから契約しているサーバーとなります。
この間、VPSとはいえ物理的な機器は古くなり、さくらがメンテナンスとなって取り替えるとか、場合によってはサーバー自体が使えなくなるというのも考えられます。こういった場合は環境はそのままでベンダーをまるごと移設できると助かるというのがあります。
システム全体のバックアップは可能なのか?
Mondo Rescueというフリーのソフトを使うことで、システム全体のバックアップが可能なのと、ISO形式で保存できるみたいです。このISOをアップロードしてインストールすることで復元が可能となります。古い記事ですがいくつか紹介記事があったので貼っておきます
- 【SYSTEM】環境そのものをまるごとバックアップ・リストア!非常に便利な「Mondo Rescue」使い方まとめ
- Mondo Rescue を使って バックアップしてVMへリストア(復元)をやってみた
- Mondo Rescueでバックアップ(CentOS7)
こんな感じでCentOS7でも使えるみたいです。実際にlogwでも使ってみましたが、バックアップはできましたが復元が失敗しました。なのでこれを使ってシステム全体を移動させるのは無理だと判断しました。
Dockerではどうか?
コンテナ型として有名なDockerがあります。Dockerのメリット・デメリットについてはリンク先のサイトでも紹介されています。
メリット
- 構成が仮想化よりも単純なため、高密度化が可能
- 他の仮想化技術に比べ、オーバーヘッドが少ない
- 新しいマシン(コンテナ)の起動が、仮想マシン(VM)より高速
デメリット
- 土台となるOSとは異なるシステムを、コンテナとして稼働させることは出来ない
- 複数のディストリビューションを、混在させることは不可能
- カーネルをすべてのコンテナで共有するため、カーネルに対する構成変更操作は個別に行うことが出来ない
このようになっています。DockerはUbuntuにCentOSのイメージをいれても動いたので、複数のディストリビューションの混在というのがどういう状態か不明ですが、今自分で使う分ではデメリットは特にデメリットと感じるとこではないかなというのがあります。どっちかというと複数サーバー(ホスト)でDockerを使う方が設定が必要で難しいかなという印象があります。
※VMならスイッチ使ってネットワーク設定をすれば終わりなので
Dockerイメージにして移動は楽
システム全体のバックアップは難しいですが、Docker環境にしてしまえば、そのままDockerイメージにすることでDockerhubにあげて新しいサーバーで同じように用意することもできます。
Dockerはシステム全体ではない?
Dockerの仕組みを詳しくしっているわけではないのでなんとも言えませんが、システム全体(ネットワークのNIC設定など含めて)というよりは、ミドルウェアなど後からインストールしたり設定したりしたとこをそのまま移設しているという感じがDockerは近いです。
復元も容易
ベンダーが違っても、OSが同じなら復元も容易にできました。実際にOpenlitespeedのDockerイメージをconohaで作成したのをさくらのVPSでもダウンロードして試してみましたが、問題無く動作しました。
システム全体を移動というよりは、インストールした後に設定したファイルなどをごっそり移動できて使えるのが一番嬉しいかなというのもあります。
Dockerのメリットはサーバーの移行も楽になるかも
サーバーの移行は、物理的な機械が消耗品でいずれ使えなくなるかもしれません。そんなときに「今の環境をそのまま移行する」というのはとても大事な事だと思います。Dockerを使う事でそれができるなら、これはとても大事な事でDockerの大きなメリットではないかなと思っています。
次回はDocker環境にしてみる
現在logwの入っているサーバーはDocker環境ではありませんが、どこかのタイミングでDocker環境にしてみたいなと思っています。
個人支援・寄付について
サイトラボでは個人支援・寄付を受けております。ご協力いただける方はお願いいたします。当サイトではビットコインで受け付けております。
- ビットコイン:3LHnADwZwUbic2L45EnVJEykiG6KfbqrwS