web-dev-qa-db-ja.com

Vagrantとchef-soloを使用するユーザーでMySQLデータベースをセットアップする

プロジェクトの開発者設定を自動化しようとしています。これにより、新しい開発者はvagrant upを発行して、カスタムwarファイルがデプロイされたMySQLとTomcatでVMを取得できます。 deployed-warは、特定のデータベースとユーザーがMySQLインスタンスに存在することを前提としています。

現在、chef-soloを使用しており、すべてが正常に起動してインストールされています。しかし、データベースとユーザーを設定するためのクックブックの書き方がわからないようです。 databaseクックブックを調べましたが、それはchef-soloのユースケースに適合していないようです。 chef-soloインスタンスのデータベースをセットアップするセットアップの例をオンラインで見つけることができませんでしたが、間違った用語を検索している可能性がありますか?

データベースとユーザーを設定するためのbashスクリプトを作成することはできますが(それらが存在しないことを条件とします)、それはクックブックの哲学に適合していないようです。この問題をどのように解決しますか?

17
Thomas

Chefソロの場合、いくつかの構成を行う必要がありますか?私が話している構成は ここ 同じページには、クックブックを構成して実行する方法の簡単な小さなデモもあります。その後、次のことができます。

MySQLのクックブックは ここ Tomcatのクックブックは ここ

他の料理本を見つけることができます ここ

あなたが提供したデータに基づいて私が得ることができる最も近いものです。これを構成して設定した後、エラーが発生した場合は投稿してください。そしてうまくいけば私は役に立ちました:)

最初にChefSoloを構成してから、構成されたディレクトリの1つにクックブックを配置します。

3
Vishal Biyani

ええ、databaseクックブックを使用すると、このようにシェフの方法でそれを行うことができます。

include_recipe "database::mysql"

# create a mysql database
mysql_database 'sonar' do
  connection ({:Host => "localhost", :username => 'root', :password => node['mysql']['server_root_password']})
  action :create
end

このクックブックの詳細については、こちらをご覧ください: http://community.opscode.com/cookbooks/database

20
Matthias B