この puppet モジュールVagrant
を使用してマシンをプロビジョニングしようとしています。
これHello world
は簡単で、次のようなものです。
class { '::mysql::server':
root_password => 'strongpassword',
remove_default_accounts => true
}
しかし、私の主な目的は、vagrant up
初めて行うときに、外部アクセスvagrant machine
の準備がmysql server
整いhost
、特定のユーザーとの からの外部接続を受け入れることができるようにすることです。
これは私が試したものです:
class { '::mysql::server':
root_password => 'strongpass',
remove_default_accounts => false,
override_options => {
mysqld => { bind-address => '0.0.0.0'} //allow entry connections from any ip
}
}
//create a database called `mydb`, a user and a password
mysql::db { 'mydb':
user => 'admin',
password => 'secret',
host => '192.168.33.1',
}
//assign it all the privileges to that user
mysql_grant { 'admin@192.168.33.1/*.*':
ensure => 'present',
options => ['GRANT'],
privileges => ['ALL'],
table => '*.*',
user => 'admin@192.168.33.1',
}
これは、機能するかどうかを確認するために私が行うテストです。
- vagrant マシンが既に存在する場合は破棄します。
vagrant destroy
- vagrant マシンを作成します。
vagrant up
- MySQLWorkbenchに接続してみてください。
質問
奇妙なことに、接続しようとすると、それは不可能vagrant reload --provision
ですが、接続すると、 に接続できMySQLWorkbech
ます。私は何を間違っていますか?