0

この 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ます。私は何を間違っていますか?

4

0 に答える 0