Fedora (19) から CentOS (7) へ環境を移行する方法は?


そう遠くない未来に職場のサーバのOSの更新を考えています。
現在サーバの一つが Fedora 19 を使用しているのですが、OSの位置付け上、
リリースサイクルがとても短くどのバージョンでもサポート期間が2年未満になってしまい維持コスト的に×です。
そのため、ベースが同じ Fedora 19 である CentOS に移行するのが妥当かと思っています。
(サーバの構成などは、下の補足にまとめました)

ここで気になっているのが、ベースが同じと言うことでいくら親和性が高いといっても、
環境ごと移行することがはたして可能なのかということです。
上手くいくのでしょうか、あるいは何が障害となるのでしょうか?

もし低コストで安全に移行できるのであれば、乗り換え先として検討する予定です。

経験者やヒントをお持ちの方に御回答いただければ幸いです。
宜しくお願いします。

回答の条件
  • 1人1回まで
  • 13歳以上
  • 登録:2014/11/07 15:59:12
  • 終了:2014/11/13 11:44:28
id:incep

質問者から

incep2014/11/08 06:02:35

>cnoさま
コメント&ご助言ありがとうございます。

サーバの構成としては、だいたい下記のようなものです。
・ApacheによるウェブサーバでCGI、WSGI等が動作。
・Python(2/3系)、Perl、Rubyなどの環境。
・言語処理/機械学習系のツール(yumでは揃わない&依存性の問題のため、tarballからのインストール多数)。
・LVM(volume group)でのソフトウェアRAID(RAID1)。
・xGB単位の容量のデータも各ユーザで扱えるようにパーティションを編成。

initdが廃止されて、systemdが採用されたんですね。調べてみます。

ベストアンサー

id:cno No.2

cno回答回数124ベストアンサー獲得回数122014/11/08 12:02:09

ポイント100pt

必要なものはyumなどのパッケージマネージャがなくとも導入できるとのことで、
CentOSであれば環境が近いため、JULYさんが書かれているように大きな問題は発生しづらいのではないでしょうか?

だた、「やってみないとわからない」ということは必ずつきまとうため、
時間が許せばまず仮想環境で検証されてみてはどうでしょう?

とりあえずVirtualBox
http://ja.wikipedia.org/wiki/VirtualBox
など扱いやすい仮想環境上で構築してみて、試行&他のディストリビューションも
必要に応じて試してみるなど。スナップショットの取得・復元が容易なため、
思い切って色々試せるのが利点です。

その後、もし本運用に耐えれそうであれば思い切って本環境もKVMなどで仮想化
してしまうのもよろしいかと思います。(VirtualBoxのディスクイメージvdiから
KVMのディスクイメージqcow2はKVMの付属コマンドqemu-imgで相互変換可能です)
http://docs.openstack.org/ja/image-guide/content/ch_converting.html

サポート期限が長いものについては最近
ArchLinuxをよく耳にします。バージョンの概念がなくローリング・リリースのため、
常にアップデートしていけば最新状態を維持できるとのことです。
(RedHat系ではないため、色々環境の差異はあるかと思いますが)

ご参考になりましたら幸いです。

id:incep

ありがとうございます。参考になります。

本環境の仮想化まではちょっと視野に入れていなかったのですが、その後の可搬性も考えるとメリットは大きいかもしれませんね。
VitualBoxの方は必要だと思いました。移行作業が手作業になるということは、正しい方法を事前に把握しておいたほうが安全ですね。

2014/11/08 14:14:00

その他の回答(1件)

id:incep

質問者から

incep2014/11/07 21:06:18

質問文を編集しました。詳細はこちら

id:JULY No.1

JULY回答回数966ベストアンサー獲得回数2472014/11/08 10:19:28

ポイント100pt

リリース時のパッケージのバージョンは、下記のページで見る事ができます。

Fedora:
DistroWatch.com: Fedora

CentOS:
DistroWatch.com: CentOS

ちょっと分かりづらいのですが、リリース毎の概要やパッケージ一覧表の上にある「全てのパッケージ」というのを選択して「更新」ボタンを押すと、Python や Ruby のバージョンも確認できます。

気になるであろうパッケージを抽出すると、こんな感じかと思います。

パッケージ名Fedora 19CentOS 7
httpd2.4.42.4.6
Perl5.16.35.16.3
Python2.7.52.7.5
Ruby2.0.0-p1952.0.0-p353

少なくとも、大きな問題になるような事は無いと思います。

ただ、強いて言うと、Fedora のリポジトリにあるパッケージが CentOS で存在しない、という可能性はあります。Fedora プロジェクトが運営している EPEL というリポジトリを追加しておくと、何かと役に立つでしょう。
EPEL - FedoraProject
ただ、Ver.7 向けの EPEL は、Ver.6 に比べると、まだ充実していない感じがあります。

Python 3 ですが、RHSC(Redhat Software Collection)をベースにした Software Collections に 3.3 がありました。
Python33 — Software Collections

いずれにしても、Fedora から CentOS へ直接アップグレードするための道は無いので、地道に移し替えていく作業になると思います。

あと、細かいところですが、「Ver.6 まで initd」というのは、正確には、

  • Ver.5 までは SysVinit
  • Ver.6 では Upstart だけど、SysVinit 互換で動かしている
  • Ver.7 から systemd

です。

LVM とかは、今まで通りで大丈夫です。

id:incep

パッケージのバージョン、支援リポジトリの存在、Python3、それからinitdに関する詳細な情報をありがとうございます。

直接のアップグレードパスはないということで、地道なアップグレードになりそうですね。

2014/11/08 14:07:39
id:cno No.2

cno回答回数124ベストアンサー獲得回数122014/11/08 12:02:09ここでベストアンサー

ポイント100pt

必要なものはyumなどのパッケージマネージャがなくとも導入できるとのことで、
CentOSであれば環境が近いため、JULYさんが書かれているように大きな問題は発生しづらいのではないでしょうか?

だた、「やってみないとわからない」ということは必ずつきまとうため、
時間が許せばまず仮想環境で検証されてみてはどうでしょう?

とりあえずVirtualBox
http://ja.wikipedia.org/wiki/VirtualBox
など扱いやすい仮想環境上で構築してみて、試行&他のディストリビューションも
必要に応じて試してみるなど。スナップショットの取得・復元が容易なため、
思い切って色々試せるのが利点です。

その後、もし本運用に耐えれそうであれば思い切って本環境もKVMなどで仮想化
してしまうのもよろしいかと思います。(VirtualBoxのディスクイメージvdiから
KVMのディスクイメージqcow2はKVMの付属コマンドqemu-imgで相互変換可能です)
http://docs.openstack.org/ja/image-guide/content/ch_converting.html

サポート期限が長いものについては最近
ArchLinuxをよく耳にします。バージョンの概念がなくローリング・リリースのため、
常にアップデートしていけば最新状態を維持できるとのことです。
(RedHat系ではないため、色々環境の差異はあるかと思いますが)

ご参考になりましたら幸いです。

id:incep

ありがとうございます。参考になります。

本環境の仮想化まではちょっと視野に入れていなかったのですが、その後の可搬性も考えるとメリットは大きいかもしれませんね。
VitualBoxの方は必要だと思いました。移行作業が手作業になるということは、正しい方法を事前に把握しておいたほうが安全ですね。

2014/11/08 14:14:00
  • id:cno
    サーバの用途(ファイルサーバやウェブサーバなど)や使っているソフトウェア(SambaやApacheなど)を差し支えない範囲で記載されると回答を得られやすいと思いますよ。Fedora19はsystemdなのでCentOS7が良いかと思います(6系以前はinitdのため)

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません