cobblerトップへ戻る

Cobblerでyumのレポジトリを管理する

このページは本家サイトの"Using Cobbler to manage yum repositories"を、作者である Michael DeHaan 氏に許可を得て、個人的に翻訳したものを公開しています。
あくまでも個人的な訳となっており、意訳・超訳的なところも多々ありますので、翻訳・記述の内容に不備やご意見等あればご指摘・ご連絡頂けると助かります。(翻訳日:2007/10/2)


概要

このドキュメントでは、あなたが興味を持っていたかもしれない、インストールとアップデートを全て提供する本格的なミラーとしてcobblerを構築する方法を、1から説明します。

なぜあなたはこれに興味を持つのか?

思うに、あなたは、大量のマシンを管理しており、(A) 外部への通信がが許されていない、(B) 帯域が制限されている、か、(C) 独自のyumレポジトリを含む、サードパーティのパッケージにアクセスしたい、のどれかだと推測します。

これらは全て、キックスタートやyumに関連する全てを提供するミラーサーバが欲しいと思う、よい理由です。cobblerはこれを可能にします。

手順

以下の手順には、cobbler0.4.6以降が必要で、Fedora Core 6のインストールツリー、extras、updatesのミラーを設定する例を1から順に説明します。これにはハードディスクに十分な空き容量を必要としますので、準備してください :)。また、RHEL、Fedora、そしてCentosのどの場合でも同じコマンドで機能します。

まず、Fedora Core 6のインストール用DVDメディアを使ったインポートについては http://et.redhat.com/page/Cobbler_Import を参照して実行してください。もしcobbler0.4.5以前で既にインポートを行っていた場合は、やり直してください — 今のインポート機能は、インストールツリーに関して、以前よりも多くのデータを収集になっています。

インポートが完了したら、ミラーを追加しましょう。

# cobbler repo add --mirror=http://mirrors.kernel.org/fedora/core/updates/6/i386/ --name=fc6i386updates --local-filename=fedora-updates
# cobbler repo add --mirror=http://mirrors.kernel.org/fedora/extras/6/i386/ --name=fc6i386extras --local-filename=fedora-extras

よくある例を2、3挙げてみました。仮にあなたがRHEL5やCentOS4を使っているとしましょう。恐らくfreshrpmsや他の場所からも追加したいと思うかもしれません。その場合でも同様の手順になります。

これでミラーの追加が完了しました。ではコンテンツをダウンロードしましょう。これは少し時間がかかりますが、以後のアップデートではそれほど時間がかかることはありません。

# cobbler reposync

これでレポジトリがローカルにミラー化されました、次に、インストールが自動的にこれらのレポジトリから行われ、さらにクライアントがこれらの新しいミラーを利用するように、cobblerのプロファイルを作成しましょう。

# cobbler profile add --name=fc6i386special --repos="fc6i386updates fc6i386extras" --distro=FC6-i386 --kickstart=/etc/cobbler/kickstart_fc6.ks

これで、このミラーからインストールされたマシンは、インストールやyumでコンテンツを取得する際に外部を参照する必要が無くなります。その代わり、全てのコンテンツがcobblerサーバから取得されるようになります。素晴らしい。

RHN

これはまだ実験的な段階ですが、もし外部のサーバを何度も参照することなく、高速なローカルネットワークでのプロビジョニングを行いたいのであれば(例えば、帯域が狭い場合とか)、以下を試してみることも出来ます:

# cobbler repo-add --name=insertnamehere --mirror=rhn://rhn-channel-name

単にチャンネル名を指定するだけです、サーバ名ではありません。これはRHEL5以降でのみ機能し、また、チャンネルを利用するためのライセンスが必要です。

アップデート

ミラー化したレポジトリの内容は更新されますので(恐らくセキュリティに関するアップデートが時々含まれるでしょう)、"cobbler reposync"をcrontabに追加することは良い考えです。cobber reposyncはあなたのレポジトリのコンテンツを更新します。

既にダウンロードしたレポジトリをこれ以上更新したくない場合などは、/var/lib/cobbler/reposのフラグを反転させることで、特定のレポジトリの更新を無効にすることも出来ます。

総括

ここまでの手順で、あなたのcobblerサーバは、インストールツリーだけではなく、将来的に利用するかもしれないパッケージのインストールとアップデートをyumで行うことができる、本格的なミラーサーバとして構築することができました。

anacondaやそれ以降のプロセスでインストールされるコンテンツは、外部ではなく、cobblerのミラーサーバから取得されます。これで、インストールを高速に行うことができ、クライアントマシンが外部のインターネットへ接続されていることを恐れる必要はなくなりました。

cobblerはyum、reposync、そしてcreaterepoの全てを魔法のようにコントロールしてくれますので、あなたはそれらがどのように動いているかを知る必要はありません。また、キックスタートに関してもこれらの設定は自動的に有効となり、定義されているレポジトリの設定を元にファイルが作成されます。結論: あなたはこれらがどのように動作しているかについて全く知る必要はありません。素晴らしい。

このドキュメントに関する質問や不明な点があれば、et-mgmt-tools@redhat.comで尋ねるか、irc.freenode.net の #cobbler に立ち寄ってみてください。