macOS High Sierraで導入されたコンテンツキャッシュ機能を利用してMac miniをキャッシュサービスのペアレントにする方法です。詳細は以下から。
先週、Appleが「AirMac Express, Exterm, Time Capsule」の販売を終了したことを機に、High Sierraで導入されたTime Machine共有機能を利用してTime CapsuleのTime Machine機能をMac miniへ移行しましたが、High Sierraではもう1つ「コンテンツキャッシュ」機能もOS X ServerからmacOSへ移植されているため、この機能を利用してMac miniをアプリやiCloudコンテンツのデプロイ用キャッシュサーバー(ペアレント)にしてみました。
macOS High Sierra にアップグレードすると、システム環境設定の「共有」パネルの「コンテンツキャッシュ」設定でテザリングキャッシュを利用できるようになります。このサービスを使えば、Mac のインターネット接続を USB で接続した多数の iOS デバイスと共有でき、接続先の各デバイスにインストールされる特定の種類のコンテンツをキャッシュしておけます。
macOS High Sierra では「ペアレント」という機能が導入され、キャッシュしておいたコンテンツをすべてほかの Mac に提供する、ペアレント (親) となる Mac を選択できます。ペアレント (親) が子の立場でキャッシュサービスをホストするといった、ティアキャッシュ構成も可能です。macOS High Sierra のキャッシュサービスの変更点に関して準備をする – Apple
コンテンツキャッシュについて
コンテンツキャッシュ機能は名前の通り通常はAppleのサーバーからMacやiOSデバイスにダウンロードするコンテンツを、予めローカルに設置したペアレント(親)のMacに保存(キャッシュ)しておき、子のMacやiOSデバイスのセットアップ時間などを短縮することが出来る機能で、
Appleがシステム管理者向けに公開したサポートドキュメントによると、ペアレントとするMacは以下の条件を満たしたものを推奨しているためヘッドレスでEternetポートを搭載し、ストレージの換装が可能なMac miniはコンテンツキャッシュサーバーに最適です。
ペアレントMacの必須/推奨条件
- Mac : macOS 10.13 High Sierraがインストールされている。
- iOSデバイス : iOS 10.3以降がインストールされている。
- Ethernet経由でMacがインターネットに接続されている。
(Wi-Fiも可能ですがパフォーマンスが低下します) - 対象のMac/iOSデバイスが同じローカルネットワークに接続されている。
- システム環境設定の「共有」パネルの「コンテンツキャッシュ」で「インターネット接続を共有」が有効。
コンテンツキャッシュ
コンテンツキャッシュ機能を利用してペアレントのMacに保存されるのはApple OSのアップデートやアプリ、iCloudに保存されたデータなどで、macOS 10.13.4以降ではキャッシュするコンテンツを全て/共有/iCloudコンテンツの3つから選択できるようになっています。
- macOS/iOSのアップデート
- Mac App Store/App Storeで入手したアプリおよびアップデート
- 写真や書類などのiCloudデータ
- iTunes/iBooksで入手した曲やビデオ、本などのコンテンツ
コンテンツキャッシュ機能はmacOS 10.13.0から利用できますが、macOS 10.13.3までのコンテンツキャッシュ機能はコンテンツがパージできない不具合があり、一部のiOSデバイスのストレージ容量が母艦となるMacのストレージ容量と逆転している(例えばiPad Proの上位モデルはストレージ容量が512GB、iPhone Xは256GB)場合に対応できていませんでしたが、この問題の多くはmacOS 10.13.4までに解決されているので、利用される場合はmacOS 10.13.4以降を利用することをお勧めします。
コンテンツキャッシュ機能を有効にする
まずコンテンツキャッシュ機能を有効にする前に、保存したいコンテンツを購入または保存されているアカウントを使用してMacをセットアップします。通常はMacの初期セットアップ時に設定していると思われますが、設定していない場合はシステム環境設定のiCloudやiTunesのアカウント設定からコンテンツと紐付けされているApple IDを利用して設定してください。
次に、macOS High SierraがインストールされたペアレントのMacで、システム環境設定から[共有] → [サービス]で「コンテンツキャッシュ」のパネルを表示します。
ここでユーザーはペアレントのMacに保存するコンテンツを全て/共有/iCloudコンテンツの3パターンから選択することが可能(macOS 10.13.4以降)で、同時に[オプション…]設定ではペアレントのMacに保存するコンテンツの最大容量とキャッシュ先ストレージを設定できるほか、
コンテンツ
- すべてのコンテンツ:Appleからダウンロードしたソフトウェア・アップデートとアプリケーション、および iCloud のコンテンツ。
- 共有コンテンツのみ:Appleからダウンロードしたソフトウェア・アップデートとアプリのみ。
- iCloudのコンテンツのみ:写真や書類などのiCloudコンテンツのみ。
Optionキーを押しながら[オプション…]を押すことで親と子のネットワーク設定を行うことが可能です。ペアレント(親)と子のネットワーク設定はデフォルトではRFC 1918に準拠し、192.168.xxx.xxxなど「同じローカルネットワークを使用するデバイス」に対しコンテンツキャッシュが有効になっているので、それ以外でペアレントと子のネットワーク設定が必要な方はここで構成を設定してください。
ネットワーク設定
- クライアント:キャッシュ対象
- 同じパブリックIPアドレスを使用するデバイス
- 同じローカルネットワークを使用するデバイスデフォルト
- カスタム・ローカルネットワークを使用するデバイス
- カスタム・ローカルネットワークを使用するデバイス(フォールバックあり)
- ピア:コンテンツの共有対象
- 同じパブリックIPアドレスを使用するコンテンツキャッシュ
- 同じローカルネットワークを使用するコンテンツキャッシュデフォルト
- カスタム・ローカルネットワークを使用するデバイス
以上の設定を終えたら「✅ コンテンツキャッシュ」のチェックボックスをONにして、暫く待つと「コンテンツキャッシュ:オン」の状態になり、ペアレントに設定したMacがキャッシュサーバーとして動き出します。
コンテンツキャッシュの動作を確認する
以上の通り設定できていればコンテンツキャッシュが正しく動いていると思われますが、High Sierraではコンテンツキャッシュの状態をリモートで確認するため新たに“AssetCacheManagerUtil”コマンドが追加されています。
AssetCacheManagerUtilコマンドの詳細は別途まとめますが、コンテンツキャッシュの動作を確認するには以下のAssetCacheManagerUtilコマンドを利用してON/OFFの状態とステータスを確認することができ、加えてコンテンツキャッシュ用のディレクトリ”AssetCache”が作成されていることを確認してください。
- コンテンツキャッシュがON/OFFかの確認
AssetCacheManagerUtil isActivated
AssetCacheManagerUtil status
/Library/Application Support/Apple/AssetCache/Data
また、macOS 10.13.4 High Sierra以降ではMacのCPUやネットワーク、メモリ、GPU/eGPU使用率をチェックできる「アクティビティモニター」アプリに[キャッシュ]というタブが追加され、1時間/24時間/7日/30日以内にペアレントのMacから子へ提供したデータやAppleから提供されたデータなどの合計容量をチェックできるので、利用される方はこちらもチェックしてみてください。
/Applications/Utilities/Activity Monitor.app
コメント