気をつけておきたいこと

最後に、実際にChef Serverを使い始めた方のために、気をつけておきたいことを2点ご紹介します。

(1)ノード設定と認証は別々に管理されていること

Chef Serverは、個別設定やレシピの関連付けを行うノード設定と認証設定を別々に管理します。WebUIやKnifeを使用してこれらの設定を行う際には、図“Chef Client WebUIのNodesとClients”に示す様に表示が似ているため、初めは混同しやすいと思いますので違いを理解しておきましょう。

図10:Chef Client WebUIのNodesとClients(クリックで拡大)

(a)ノード設定

ノード設定では、各ノードの個別設定値やランリストの設定を行います。Chef Serverは、各ノードのJSONファイルを一元管理します。WebUIでは、Nodesタブ。Knifeでは、nodeサブコマンドで設定を行います。

(b)認証設定

chef-clientの認証登録・削除を行います。chef-clientの認証登録を行うと、認証のための暗号鍵が生成されますので、それをノードに配布します。配布された鍵を使用することで、chef-clientはChef Serverから認証登録済みのクライアントとして承認されます。なお、この登録は既にご紹介したchef-validatorの鍵を使用すると簡単に行うことができます。WebUIでは、Clientタブ。Knifeでは、clientサブコマンドで設定を行います。

(2)ノード再構築時における認証の再登録

検証環境では同じ環境を何度も作り直すこともよくあると思いますが、初期構築時に認証登録を行ったユーザーが登録されたままの状態で再登録を試みるとHTTP 403(Forbidden)のエラーになります。

このような時の対応方法には、認証リストの再登録と認証キーの再作成があります。Knifeコマンドを使用する方法とWebUIを使用する方法をそれぞれでご紹介しましょう。

対応方法(1):認証リストの再登録

再度chef-validatorの鍵を使用してchef-client認証登録をやり直します。再登録のためには、認証登録済みchef-clientのリストから対象のchef-clientを削除する必要があります。削除方法は以下の通りです。

Knifeコマンドを使用する場合は、“client delete”サブコマンドを使用します。

$ knife client delete <chef-client名>
Do you really want to delete <chef-client名>? (Y/N) Y
Deleted client[<chef-client名>]
$

WebUIを使用する場合は、赤枠部分の“Delete”をクリックして削除します。

図11:chef-clientの一覧(クリックで拡大)

対応方法(2):認証キーを再作成する

認証キーを再作成します。作成後、秘密鍵(PRIVATE KEY)を対象ノードに配布します。(/etc/chef/client.pemのファイル名で配布します。)

Knifeコマンドを使用する場合は、“client reregister”サブコマンドを使用します。

$ knife client reregister <chef-client名> 
-----BEGIN RSA PRIVATE KEY-----
・・・省略・・・ 
-----END RSA PRIVATE KEY-----
[knife01@knife ~]$

WebUIを使用する場合は、図の赤枠に示す通り“Clients”タブの“Edit”から“Private Key”にチェックを入れて“Save Client”をクリックします。クリックすると“Public Key”と“Private Key”が表示されますので、“Private Key”の部分を対象ノードに配布します。

図12:chef-clientの認証再登録(クリックで拡大)

上記2点の注意事項以外にも、よく起こりがちなエラーと対策をコミュニティのWikiで紹介しています。エラーが出た時は参考にするとよいでしょう。

> Common Errors

最後に

Chef社(2013年12月にOpscode社から社名を変更)は、Microsoft社やIBM社といったOSベンダーの他、Cisco Systems社やJuniper Networks社といったネットワーク機器ベンダーとも協力して開発を進めている様なので、筆者は今後、Chefによる自動化の範囲は広がっていくと期待しています。3回の連載でChefの概要からChef Serverを使用した自動構築の方法までご紹介しましたが、いかがでしたでしょうか。Chefに興味を持って試してみたい!と思って頂ければ嬉しいです。

※記載の会社名、製品名は、それぞれの会社の商標もしくは登録商標です。

この記事のキーワード :

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30