インターネットに接続できない閉じた環境の場合は、前述の【手順2】で登録するPuppet LabsのYumリポジトリの代わりとなるYumリポジトリをローカルに作成します。まずはインターネットに接続できる端末で、以下のRPMファイルをダウンロードしてください。
なお、バージョンは執筆時の最新版である3.6.2になっていますので、適時読み替えて最新のものをダウンロードしてください(※32bit環境の場合はURLの「x86_64」を「i386」に読み替えてください)。
ダウンロードができましたら、パッケージを前回構築した自動構築サーバーに転送してPuppetのYumリポジトリを作成しましょう。YumリポジトリとするにはファイルにHTTPでアクセスできる必要があるので、Web公開用のディレクトリ(/var/www/html/)配下にディレクトリを作成してコピーします。ここではpuprepoディレクトリ(/var/www/html/puprepo/)に転送したものとします。
転送ができましたら、自動構築サーバー上で以下のコマンドを実行してYumリポジトリのデータベースを作成しましょう。
# createrepo /var/www/html/puprepo Spawning worker 0 with 8 pkgs Workers Finished Gathering worker results Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Sqlite DBs complete
Yumリポジトリのデータベースを作成するコマンドがcreaterepoです。引数はRPMパッケージがあるディレクトリを指定します。実行後、指定したディレクトリ配下にrepodata/というディレクトリが作成され、その中にYumリポジトリのデータベースが入っています。
今作成したYumリポジトリにアクセスしてみましょう。まずリポジトリ定義ファイルを作成しましょう。以下のような内容でディレクトリ(/etc/yum.repos.d/)配下に作成します。ここではファイル名をpuprepo.repo(/etc/yum.repos.d/puprepo.repo)とします。
Yumの設定ファイル(/etc/yum.conf)にプロキシ設定がありますと、ローカルのYumリポジトリにアクセスできない場合があります。その場合はCentOSのインストール用DVDをYumリポジトリとして使う設定にして、プロキシ設定を使わないようにしてください。
[Puppet] name=Puppet Repository baseurl=file:///var/www/html/puprepo/ gpgcheck=0
設定ができましたら、動作確認でpuppet-serverパッケージを検索してみましょう。以下のようになれば準備完了です。【手順3】に進んでください。
# yum search puppet-server Puppet | 2.9 kB 00:00 ... Puppet/primary_db | 33 kB 00:00 ... Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile ========================== N/S Matched: puppet-server ========================== puppet-server.noarch : Server for the puppet system management tool Name and summary matches only, use "search all" for everything.
なお【手順3】でパッケージが足りないとエラーが出た場合は、ファイルを追加後にcreaterepoを再実行し、以下の手順でYumコマンドがキャッシュしているデータベースをクリアしてください。
# yum clean all Loaded plugins: fastestmirror Cleaning repos: Puppet c6-media Cleaning up Everything Cleaning up list of fastest mirrors
agent側のインストールは以下の手順になります。
以下の手順です。
以下、順に紹介します。
master側の手順2と同様にリポジトリ設定してください。自動構築サーバー上のYumリポジトリを利用する場合は設定ファイル(/etc/yum.repos.d/CentOS-Media.repo)を以下のように変更し、Yumリポジトリに設定して実行してください。
[c6-media] name=CentOS-$releasever - Media baseurl=file:///media/CentOS/ file:///media/cdrom/ file:///media/cdrecorder/ http://{自動構築サーバーのIPアドレス}/centos65/ ←追加 gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
設定ができましたら、動作確認で適当なパッケージを検索してみましょう。試しにntpパッケージを検索してみます。以下のようになれば準備完了です。
# yum --disablerepo=\* --enablerepo=c6-media search ntp Loaded plugins: fastestmirror, security Determining fastest mirrors * c6-media: =============================== N/S Matched: ntp =============================== ntp.x86_64 : The NTP daemon and utilities ntp-doc.noarch : NTP documentation ntp-perl.x86_64 : NTP utilities written in perl ntpdate.x86_64 : Utility to set the date and time via NTP cyrus-imapd.x86_64 : A high-performance mail server with IMAP, POP3, NNTP and : SIEVE support fontpackages-devel.noarch : Templates and macros used to create font packages fontpackages-filesystem.noarch : Directories used by font packages fontpackages-tools.noarch : Tools used to check fonts and font packages python-twisted-news.x86_64 : NNTP protocol implementation with client and server Name and summary matches only, use "search all" for everything.
master側と同様の手順でリポジトリ設定してください。master側に作成したPuppetリポジトリを利用する場合は、以下のような内容でディレクトリ(/etc/yum.repos.d/)配下に作成します。ここではファイル名をpuprepo.repoとしています。
[Puppet] name=Puppet Repository baseurl=http://[自動構築サーバーのIPアドレス]/puprepo/ gpgcheck=0
設定ができましたら、動作確認でmaster側で試したように、ここでもpuppet-serverパッケージを検索してみましょう。以下のようになれば準備完了です。
# yum --disablerepo=\* --enablerepo=c6-media,Puppet search puppet-server Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * c6-media: ========================== N/S Matched: puppet-server ========================== puppet-server.noarch : Server for the puppet system management tool Name and summary matches only, use "search all" for everything.
ここまでの作業でagent側でもPuppetがYumコマンドを使ってインストールできるようになっています。以下のコマンドでPuppet agentをインストールします。
設定が終わるまでは、puppetサービスを動かさないでください。
# yum install puppet -y
# yum --disablerepo=\* --enablerepo=c6-media,Puppet install puppet -y
Copyright © ITmedia, Inc. All Rights Reserved.