Машина Provision Vagrant с модулем MySQL 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 destroy
  • Создайте бродячую машину: vagrant up
  • Попробуйте связаться с MySQLWorkbench.

Вопрос

Странно то, что когда я пытаюсь установить соединение, это просто невозможно, но если я vagrant reload --provision тогда я могу подключить его с MySQLWorkbech, Что я делаю неправильно?

0 ответов

Другие вопросы по тегам