ハマったので備忘録。
環境
- CentOS-7-64bit (CloudAtCost上のものを利用)
[root@chef-server etc]# cat /etc/redhat-release
CentOS Linux release 7.0.1406 (Core)
- Chef Client version 12.12.19
状況
Chef Serverを入れたが、諸事情により途中でドメイン名を変えた。
- Before
$ hostname
chef-server.old
- After
$ hostname
chef-server.new
当然、Workstation上のknife
コマンドはエラーを吐いて動かない(オレオレSSL証明書で認証できないため、cookbookがアップロードできない等の事象が発生)したため、Chef Serverの再設定をする必要があった。
手順
1. chef-server.rb
の編集
公式のDOCSにもあるように、まず/etc/opscode/
以下のchef-server.rb
を編集して、古いドメイン名を新しいドメインに置換する。
$ sed -i 's/chef-server.old/chef-server.new/g' /etc/opscode/chef-server.rb
2. 各種コマンドでreconfigure
する。
Chef Server自体をまず再設定。
$ chef-server-ctl reconfigure
その後、Chefマネジメントコンソールの設定。コレをやらないとknife.rb
の生成時などで、ドメイン名が古いままになってしまう。
$ chef-manage-ctl reconfigure
私の場合、Reporting も入っていたのでこちらも実行する。/etc/opscode-reporting/pedant_config.rb
がアップデートされる。
$ opscode-reporting-ctl reconfigure
3. Chef Serverを再起動
そのままChef ServerのWebのUIにアクセスしても500エラーになってしまうので、きちんと再起動する。
$ chef-server-ctl restart
4. Chef Server の WebUIにアクセスして動作確認
下記にアクセスして動くことを確認。
https://chef-server.new/login
5. その他
あとはWorkstation側の作業。
knife.rbを更新したり、SSL更新したりする。
# SSL証明書の取得
$ knife ssl fetch
# SSL証明書のチェック
$ knife ssl check
# あとは操作ができるはず
$ knife upload cookbook hogehoge