第15章 高可用性 CUPS プリントサーバー環境の設定
クライアントが中断することなくプリンターにアクセスする必要がある場合は、複数のホストに CUPS を設定し、印刷キュー参照機能を使用して高可用性を実現できます。印刷クライアントは、さまざまな印刷サーバーにより共有される印刷キューを自動的に設定します。クライアントが印刷ジョブをローカル印刷キューに送信すると、クライアント上の CUPS はジョブを印刷サーバーの 1 つにルーティングし、印刷サーバーはそのジョブを処理してプリンターに送信します。
手順
2 台以上のサーバーに CUPS をセットアップします。
- CUPS をインストールして設定します。
- TLS 暗号化を有効にします。
lpadmin
ユーティリティー または Web インターフェイス を使用して、すべての CUPS インスタンスに印刷キューを追加します。Web インターフェイスを使用する場合は、プリンターを追加するときに Share this printer オプションを選択してください。lpadmin
ユーティリティーでは、この設定がデフォルトで有効になります。重要高可用性シナリオでは、1 台のプリントサーバー上の各キューには、他のサーバー上に完全に同じ名前のキューが必要です。
lpstat -e
コマンドを使用すると、各サーバーのキュー名を表示できます。オプション: 各サーバーのキューを、異なるプリンターを参照するように設定できます。
印刷クライアントの場合は以下を行います。
/etc/cups/cups-browsed.conf
ファイルを編集し、各 CUPS 印刷サーバーのBrowsePoll
ディレクティブを追加します。BrowsePoll print_server_1.example.com:631 BrowsePoll print_server_2.example.com:631
BrowsePoll print_server_1.example.com:631 BrowsePoll print_server_2.example.com:631
Copy to Clipboard Copied! cups
サービスとcups-browsed
サービスの両方を有効にして起動します。systemctl enable --now cups cups-browsed
# systemctl enable --now cups cups-browsed
Copy to Clipboard Copied!
検証
クライアントで使用可能なプリンターを表示します。
lpstat -t
# lpstat -t ... device for Demo-printer: implicitclass://Demo-printer/ Demo-printer accepting requests since Fri 22 Nov 2024 11:54:59 AM CET printer Demo-printer is idle. enabled since Fri 22 Nov 2024 11:54:59 AM CET ...
Copy to Clipboard Copied! 出力例は、Demo-printer キューが
implicitclass
バックエンドを使用していることを示しています。その結果、cups-browsed
は、このキューの印刷ジョブを、このクライアントのBrowsePoll
ディレクティブで指定されたホストにルーティングします。