この記事は、Charles Edge 著の近刊書「Take Control of OS X Server」のプレリリース版の章です。2014 年後半に一般公開が予定されています。第 1 章「OS X Server の紹介」と第 2 章「サーバハードウェアの選択」を除き、これらの章は TidBITS 会員のみご利用いただけます。詳しくは TidBITS でストリーミング配信されている「Take Control of OS X Server」をご覧ください。
Appleはバグ修正やセキュリティホールの解消のため、デバイスで動作するソフトウェアの新バージョンを継続的にリリースしているため、頻繁なソフトウェアアップデートはもはや当たり前のものとなっています。Appleは、個人でもグループでも、MacやiOSデバイスが様々なアップデートをより簡単に見つけ、ダウンロードし、インストールできるようにするために、多大な努力を払ってきました。
この章では、OS X Serverに、家庭、オフィス、あるいは組織全体のアップデート管理に役立つ2つのサービスが含まれているため、グループに焦点を当てます。特に、OS X Serverは管理者に2つの重要な機能を提供することを目指しています。
- 帯域幅の使用を制限する:ソフトウェアのアップデートはサイズが増大し続けており、OS XとiOSのメジャーアップデートは数ギガバイトに達します。Mac App StoreのiOSアプリとMacアプリも、ユーザーがダウンロードする数とアップデート頻度を考えると問題です。データ量は膨大になり、各アイテムを1つずつダウンロードするのは避けられませんが、家庭に複数のデバイスがある場合や、オフィスや学校で複数のユーザーがいる場合、ユーザーが一斉にアップデートするたびに、各アイテムを複数同時にダウンロードしてインターネット接続を圧迫する理由はありません。
- アップデートの配布を管理する: Appleや独立系開発者は、アップデートでバグを修正することを常に意図していますが、アップデート自体が予期せぬ問題を引き起こすことも珍しくありません。OS Xやセキュリティアップデートによって、印刷が機能しなくなったり、特定のフォントが表示されなくなったり、特定のアプリが起動時にクラッシュしたりした経験があります。いずれの場合も、その後のアップデートで問題は解決しましたが、多数のユーザーをサポートしている場合は、アップデートのインストールを許可する前に審査を行うことで、大きな問題を回避することができます。
ソフトウェアアップデートをキャッシュして帯域幅の使用量を削減し、管理者がユーザーに提供するアップデートを制御できるようにするというこれらのアイデアは、OS X Serverの2つのサービス、「キャッシュ」と「ソフトウェアアップデート」の基盤となっています。これらはほぼ同様の機能を果たしますが、完全に重複しているわけではありません。そのため、ニーズに応じて、どちらか一方、または両方を実行することをお勧めします。
使用する更新サービスを決定する
キャッシュサービスとソフトウェア・アップデートサービスはどちらも、Appleからアップデートをダウンロードし、ローカルネットワーク上のユーザーに提供するように設計されています。しかし、類似点はそれだけです。どちらを実行するかを決めるために、それぞれを順番に見ていきましょう。
キャッシュサービスについて
OS X Serverのキャッシュサービスは、設定が最も簡単なサービスの一つで、Appleデバイスをホストするあらゆるネットワークにすぐにメリットをもたらします。キャッシュサービスは、その名の通り、Appleからのすべてのアップデートをサーバにキャッシュし、すべてのMacとiOSデバイスはAppleから直接ではなく、サーバからダウンロードします。これにより、帯域幅の削減とユーザーへのアップデートの高速化という2つの大きなメリットがもたらされます。
キャッシュサーバーは各アップデートのコピーを1つだけダウンロードするため、帯域幅の使用量が減少します。アップデートを必要とする各デバイスは、Appleにアップデートを戻すのではなく、サーバーからアップデートを取得します。そのため、AppleがiOSの新バージョンやOS X用iWorkアプリのアップデートをリリースした場合でも、各デバイスがAppleから大量のアップデートをダウンロードするのに苦労し、インターネット接続が遅延することはありません。
同様に、各デバイスは、はるかに低速なインターネット接続ではなく、高速なローカル ネットワーク経由でサーバーから更新を取得するため、ユーザーは更新のダウンロードにそれほど長い時間待つ必要はありません。
iTunes Store から購入した音楽やビデオ以外にも、キャッシュ サービスは、Mac または iOS デバイスが Apple からダウンロードできるほぼすべてのコンテンツのローカル コピーを作成します。これには次のものが含まれます。
- OS XとiOSのアップデート
- Mac App Storeから購入したMacアプリとアップデート
- iOSアプリとアップデート
- iBooks Storeから購入した書籍
- iTunes Uのアプリと書籍
- インターネット復旧ソフトウェア
キャッシュサービスの実行は簡単です。Appleデバイスを複数所有する家庭、学校、企業であれば、誰でも簡単に利用できます。設定もほんの数分で完了します。キャッシュサービスでは、ユーザーに表示するアップデートを選択することはできません。そのためには、ソフトウェア・アップデートサービスをご利用ください。
ソフトウェアアップデートサービスについて
ソフトウェア アップデート サービスを実行する必要があるかどうかは明確ではありません。これは、このサービスが Apple の Mac ソフトウェア (Mac App Store のアプリではない) でのみ機能し、サーバー上でリリースするアップデートの選択と、クライアント デバイスをサーバーに向けるという点で、追加の構成が必要となるためです。
ソフトウェア・アップデート・サービスを実行する主な理由は、ネットワーク上のユーザーに提供するMacアップデートをより細かく制御したい場合です。これは家庭環境ではそれほど重要ではなく、小規模オフィスでは手間をかけるほどの価値がないかもしれませんが、エンタープライズレベルでは、ユーザーがアップデートを審査する前にインストールしないようにするために不可欠です。
とはいえ、組織全体のソフトウェアアップデートを一元管理したいと真剣に考えているなら、サードパーティのオプションを検討した方が良いかもしれません。私の経験では、ソフトウェアアップデートサービスには3つの制限があります。
- ソフトウェアアップデートは、MicrosoftやAdobeなどの他社製アップデートパッケージを提供するように設定できません。Microsoft OfficeやAdobe Creative Suiteをご利用で、これらのアップデートを一元管理したい場合は、ソフトウェアアップデートは役に立ちません。
- アップデートを Mac のグループにのみリリースすることはできないため、テスト グループの維持が難しくなります。
- これはOS X Serverのせいではありませんが、Appleのアップデートの多くは、インストール時に管理者パスワードの入力を求めます。ユーザーにMacの管理者レベルのアカウントを付与していない場合は、自動インストールを行うために別のツール(Apple独自のApple Remote Desktopなど)を使用する必要があります。
多くの組織は、包括的なAbsolute Manage、FileWave、JAMFのCasper Suiteといったサードパーティ製ソリューションを活用することでこれらの問題に対処してきました。これらはすべて商用ソフトウェアであり、幅広い機能を提供しています。オープンソースとしては、Reposadoがあります。これはSoftware Updateの代替製品で、あらゆるUnixベースのハードウェアで動作し、不安定版/テスト版/リリース版のワークフローを作成できます。
誤解しないでください。ソフトウェア・アップデート・サービスは全体的に設定と管理が簡単で、クライアントMacへのアップデートの展開にも適しています。多くのOS X Server管理者にとって、まさに必要なものです。
では、どれを使用すればよいのでしょうか? キャッシュ サービスはすべてのユーザーが有効にする必要がありますが、ユーザーに提示する前に Mac のアップデートを承認する必要があるユーザーのみがソフトウェア アップデートをオンにする必要があります。
キャッシュサービスを構成する
キャッシュサービスの設定を始めるには、サーバーアプリを開き、サイドバーの「キャッシュ」をクリックします。設定できるのは、キャッシュデータの保存場所、キャッシュサイズ、サブネット上のユーザー向けにコンテンツをキャッシュするかどうかの3つだけです。「オン」ボタンをクリックする前に、これらの設定を行ってください。
まず、キャッシュデータをOS X Serverのサービスデータが格納されているボリューム(通常は起動ドライブ)に保存するかどうかを決定します。保存しない場合は、「ボリューム」の右側にある「編集」ボタンをクリックし、キャッシュコンテンツ用の新しいボリュームを選択します。
キャッシュサイズは少なくとも100GB必要となるため、十分な空き容量のあるドライブを選択することをお勧めします。ギガバイト単位のデータの移行を避けるため、キャッシュサービスを有効にする前にこの設定を行うことをお勧めします。
適切な保存先を選択したら、「キャッシュサイズ」スライダーを希望のサイズまでドラッグします。少なくとも100GBを割り当ててください。ただし、スライダーの精度は高くないため、希望するサイズを正確に選択できない場合があります。キャッシュサイズが小さいほど、新しいアップデートのためのスペースを確保するために古いアップデートが削除される可能性が高くなり、キャッシュサービスは要求されたときにそれらを再度ダウンロードすることになります。キャッシュサイズについては、ドライブに空き容量があればいつでも増やすことができるので、今はそれほど心配する必要はありません。
ほとんどの場合、「ローカル ネットワークのコンテンツのみをキャッシュする」チェックボックスはオンのままにしておきます。サブネットを含む複雑なローカル ネットワークがあり、それらのサブネット上のユーザーにキャッシュされたコンテンツを提供する場合のみ、このチェックボックスをオフにしてください。
これで完了です。「オン」ボタンをクリックしてキャッシュサービスを有効にすると、Appleからのアップデートと購入済みアイテムのダウンロードが開始されます(図1)。ダウンロードはすぐには行われず、デバイスから特定のアップデートがリクエストされるまで待機し、リクエストが受理されると、ネットワーク上の他のすべてのデバイスでそのアップデートが利用できるようになります。
図 1:宛先を選択し、キャッシュ サイズを設定してキャッシュ サービスを構成します。
ネットワーク上の Mac や iOS デバイスにキャッシュ サーバーの存在を知らせるために何もする必要はありません。これらのデバイスは自動的にキャッシュ サーバーを使用し、高性能の Wi-Fi および Ethernet 接続を活用して、インターネット接続を重要な用途 (Netflix など) に解放します。
ソフトウェア更新サービスを構成する
ソフトウェア更新サービスを有効にすることは、キャッシュ サービスを有効にすることよりそれほど難しいことではありませんが、少し考慮する必要があり、かなり時間がかかる可能性があります。
まず、Serverアプリを開き、ソフトウェア・アップデート・サービスをクリックします。デフォルトでは、ソフトウェア・アップデートは自動モードで動作するように設定されています。このモードでは、Appleのアップデートサーバーをミラーリングするだけなので、特定のアップデートを手動で無効にしない限り、Appleが公開するすべてのアップデートがユーザーに提供されます。また、アップデートがAppleのサポートを終了した場合、自動的に削除されますが、これは多くの場合望ましくありません(新しいアップデートをテストしている間は、古いアップデートを利用できるようにしておきたい場合が多いためです)。
代わりに、ユーザーに提供されるアップデートをより細かく制御したいとお考えであれば、「手動」を選択してください。「ON」ボタンをクリックしてサービスを有効にし、アップデートリストのダウンロードを開始します(図2)。
図 2:ソフトウェア更新サービスを手動モードで実行して、ユーザーに提供される更新を完全に制御します。
「アップデート」タブをクリックすると表示されますが、すぐに何かが表示されるとは思わないでください。Appleからのアップデートリストをダウンロードするだけでも、インターネット接続がかなり高速であっても15~30分かかる場合があります。メールを読んだり、コーヒーを飲んだりしてお待ちください。お待ちしています。
「アップデート」タブにAppleからのアップデートのリストが表示されたら(執筆時点で773件と非常に多くあります!)、すべてをローカルに保存するかどうかを決める必要があります。保存する場合は「新しいアップデートを自動的にダウンロードする」チェックボックスをオンにしてください。ただし、その前に以下の点に注意してください。
問題は、ソフトウェア・アップデートが大量のスペース(少なくとも数百ギガバイト)を必要とし、その使用量を簡単に制御できないことです。さらに厄介なことに、キャッシュサービスとは異なり、ソフトウェア・アップデートのデータだけを再配置することはできず、OS X Server全体のサービスデータを再配置する必要があります。
では、個々のアップデートを操作してみましょう(図3)。項目数が多いため、列ヘッダー(名前、バージョン、日付、サイズ、ステータス)をクリックすることでリストを並べ替えることができることを覚えておくことが重要です。列ヘッダーをもう一度クリックすると、並べ替えが逆になります。同様に便利なのは「アップデートのフィルター」フィールドです。これを使うと、入力した検索語に一致するアップデートのみが表示されます。
図 3: [更新] タブで個々の更新を操作します。
個々の更新には、次の 4 つのステータスのいずれかが設定されます。
- 利用可能:「新しい更新プログラムを自動的にダウンロードする」が選択されていない場合、このステータスは更新プログラムをダウンロードできるが、現在ローカルに保存されていないことを意味します。
- 待機中:アップデートのダウンロード中は、ステータスが「待機中」に変わります。大きなアップデートの場合は、このステータスが表示される可能性が高くなります。
- 有効:更新プログラムのステータスが「有効」の場合、更新プログラムはダウンロードされており、ユーザーがインストールできます。
- 無効:無効ステータスの更新はローカルのままですが、ユーザーがインストールすることはできません。
これらのステータスを変更し、個々の更新プログラムの保存を制御するには、画面下部の歯車メニューと各項目の右側のポップアップ メニューから次のオプションを利用できます。
- ダウンロード:ステータスが [利用可能] になっている更新プログラムは手動でダウンロードできます。ダウンロード後は無効のままになるため、別途有効にする必要があります。
- ダウンロードして有効化:このオプションは、利用可能な更新プログラムを 1 回の操作でダウンロードして有効化します。
- 有効化:ダウンロードされて無効になっている更新は、このコマンドを使用してユーザーが利用できるようにすることができます。
- 無効化:以前に有効にした更新にユーザーがアクセスできないようにする場合は、「無効化」を選択します。
- 削除:アップデートが有効か無効かにかかわらず、アップデートによって使用されているスペースを解放するには、「削除」を選択します。言うまでもなく、アップデートを削除すると、アップデートも無効になります。
- アップデートの表示:選択したアップデートのリリースノートを読むには、「アップデートの表示」を選択します(またはReturnキーを押します)。ステータスとギア
メニューは、アップデート概要ビュー(図4)にも表示されます。
図 4:個々の更新プログラムの詳細を確認するには、更新プログラムを選択して Return キーを押します。
必要に応じて適切なアップデートをすべて構成したら (多くの項目があるため、この作業に時間がかかります)、クライアント Mac を構成します。
ソフトウェア更新サービスでクライアントをポイントする
クライアントMacをAppleのソフトウェア・アップデート・サーバではなく自社のソフトウェア・アップデート・サーバを参照するように設定する方法は2つありますが、どちらもあまり便利ではありません。プロファイルマネージャを使用して各Macにプロファイルを配布する場合、プロファイルにカスタム設定を追加するのが最善の方法です。それが不可能な場合は、各クライアントMacでコマンドラインを使用するしかありません。
プロファイルを使用してソフトウェアアップデートを構成する
まだ行っていない場合は、第9章「モバイルデバイス管理」の手順に従ってプロファイルマネージャを有効にし、デバイスを登録してください。その後、「デバイスの管理」の指示に従って適切なグループの設定を編集します。その後、以下の手順に従って「OK」をクリックし、「保存」をクリックして変更を保存します。
- 設定リストの一番下までスクロールし、「カスタム設定」をクリックします。
- [カスタム設定の構成] 画面で、[構成] をクリックします。
- 優先ドメインフィールドに入力します
com.apple.SoftwareUpdate
。 - キーと値のペアを追加するには、「項目の追加」をクリックします。
- キー フィールドで、新しいアイテムを に変更します
CatalogURL
。 - 「タイプ」ポップアップメニューは「文字列」に設定したままにします。
- 「値」フィールドに、ポート 8080 のサーバーの URL を入力します(図 5
index.sucatalog
を参照)。http://mavserver.pretendco.lan:8080/index.sucatalog
図 5:カスタム設定を使用して、プロファイルを使用して Mac をソフトウェア アップデート サーバーに向けます。
コマンドラインからソフトウェアアップデートを構成する
この方法は概念的にはシンプルですが、個々のMacを操作する必要があります。ターミナルを開き、以下のコマンドを入力します(例: はmavserver.pretendco.lan
サーバーのホスト名に置き換えてください)。
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate CatalogURL http://mavserver.pretendco.lan:8080/index.sucatalog
正しい情報を入力したことを確認するには、次のコマンドで作業を確認します。
defaults read /Library/Preferences/com.apple.SoftwareUpdate CatalogURL
Apple のデフォルトのソフトウェア アップデート サーバーを再度使用するように切り替えたい場合は、次のコマンドを入力します。
sudo defaults delete /Library/Preferences/com.apple.SoftwareUpdate CatalogURL
すべて完了したら、App Storeアプリを開き、「アップデート」をクリックして、そのMacに適用したアップデートを確認します。表示されるのはMacに必要なアップデートのみなので、ソフトウェア・アップデート・サービスを設定する前にMacが最新だった場合は、新しいアップデートが公開されるまで何も表示されない可能性があります。