LoginSignup
21
22

More than 5 years have passed since last update.

OpenSource Chef-Server12のRC2が、すっかりEnterprise Chefだった

Last updated at Posted at 2014-09-09

この記事は最終更新から1年以上経過しています。 気をつけてね。

Chef-Server12(RC2)の配布がはじまったので内容をチェックしてみた。 Chef Releases Chef 12 to Power DevOps Practices in the Enterprise | Chef Blog

Chef_Server_12___Chef_Downloads___Chef.png

今までEnterprise Chefとして提供されていたものが、ほぼそのままOSS版12になりました。
OrgnaizationやUserもそのままなので、1台あれば対象システムの管理区分けもできる。

構築環境

  • Amazon EC2のUbuntu14.04
    • ↑Ubuntu12用のパッケージで問題なく動く

Web管理の大幅変更

Management Console(WebのUI)はアドオンに。

Chef_Manage___Chef_Downloads___Chef.png

従来のWeb-UIは廃止になり、アドオンパッケージのインストールになる。Chef-Serverのコアと切り離して使いやすい。

パッケージは上図のリンクからダウンロードして、あとは次のリンクに従って導入。

操作コマンドがopscode-manage-ctlのままなのは置いておこう。

Reporting

Reporting___Chef_Downloads___Chef.png

パッケージは上の図リンクから、インストールなどは次を参照。

レポーティングが有効になったManagement Consoleを確認するため、ちょこちょことChef-Clientを実行してみる。

Chef_Manage_と_lw1-chef-server_—_bash_—_120×30.png

ナイスレポート、ヒストリーも悪くない。

Chef_Manage.png

CLI拡張と非同期のPush型Job

とりあえずジョブキューみたいなことができる(サーバいるけど)Push jobsも解禁になった。
これも適当に分散してしまって大丈夫なコンポーネントだ。

Push_Jobs_Server___Chef_Downloads___Chef.png

パッケージは上の図リンクから、インストールなどは次を参照。

ただ、RC2の現状インストールにはコツがいる。

  • リンクからダウンロードできるopscode-push-jobs-server_1.1.1-1_amd64.debは、private-chefパッケージに依存しているので--forceがいる。

  • 管理用のopscode-push-jobs-server-ctlにもパスが通らないので、ダイレクトに叩く。

    • /opt/opscode-push-jobs-server/bin/opscode-push-jobs-server-ctl reconfigure
  • クライアント(ジョブを購読して実行する側)のパッケージは案内が無い

    • ただ推測可能になっているので探す
  • knifeコマンドの拡張はknife-pushgemを入れる

以上のことを踏まえれば、強引に使える状態にできる。

ジョブを登録

knifeから、ノードに実行してもらいたいジョブをpush-serverに登録する。
ジョブの名前はコマンドを直接でなく、事前登録済みのキーバリュー。設定に記載されていないジョブ名はquorum_failedとなり実行されない。

# knife job start chef-client ip-10-172-xxx-xxx.ap-northeast-1.compute.internal
Started.  Job ID: 6b4dcd19a746b97aecbb30a0906b7778
Running (1/1 in progress) ...
Complete.

command:     chef-client
created_at:  Tue, 09 Sep 2014 08:37:04 GMT
id:          6b4dcd19a746b97aecbb30a0906b7778
nodes:
  succeeded: ip-10-172-xxx-xxx.ap-northeast-1.compute.internal
run_timeout: 3600
status:      complete
updated_at:  Tue, 09 Sep 2014 08:37:12 GMT

ジョブIDから実行状況を確認したり、

# knife job status 6b4dcd19a746b97aecbb30a0906b7778
command:     chef-client
created_at:  Tue, 09 Sep 2014 08:37:04 GMT
id:          6b4dcd19a746b97aecbb30a0906b7778
nodes:
  succeeded: ip-10-172-xxx-xxx.ap-northeast-1.compute.internal
run_timeout: 3600
status:      complete
updated_at:  Tue, 09 Sep 2014 08:37:12 GMT

全体のジョブ一覧を確認したり。

# knife job list
command:     date
created_at:  Tue, 09 Sep 2014 08:35:21 GMT
id:          6b4dcd19a7466b04fbe530a83bebd0c2
run_timeout: 3600
status:      quorum_failed
updated_at:  Tue, 09 Sep 2014 08:35:21 GMT

command:     chef-client
created_at:  Tue, 09 Sep 2014 08:37:04 GMT
id:          6b4dcd19a746b97aecbb30a0906b7778
run_timeout: 3600
status:      complete
updated_at:  Tue, 09 Sep 2014 08:37:12 GMT

追記: Analytics Platform

忘れていたので追記。

Analytics___Chef_Downloads___Chef.png

パッケージは上の図リンクから、インストールなどは次を参照。

Install Chef Analytics — Chef Docs

何が表示されるかはこちらが詳しい。
Chef Actions — Chef Docs

これはできれば別のサーバに入れましょう、通常のWebUIと競合しがち。

まとめ

OSS版はもはや結構しょぼかったので、これらの機能に対する敷居を下げて無償にすることでClient/Server構成の価値が少し回復しました。
個人的にはもう一年くらい早かったらよかったのにと思いました。

21
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
22