How to config timezone with Vagrant, Puppet and Hiera?

五迷三道 提交于 2019-12-07 16:40:51

问题


I'm using PuPHPet for my testing environments, which is based on Vagrant/Puppet+Hiera.

In the config.yml (Hiera config file) I would like to add section for my timezone

and with command vagrant provision setup it properly.

It's that possible?


回答1:


Just add your timezone to whatever key you want in your hiera file, let's call it timezone. The value for which and the puppet code you'd need to set that timezone depends on the system you're firing up, but I'll assume RedHat flavor of unix.

I recommend setting that to any valid value you'd see under /usr/share/zoneinfo. As an example your key may look like:

timezone: 'US/Pacific'

Then you'd use the file puppet type to symlink /etc/localtime to the full path of the timezone:

$tz = hiera('timezone')
file {'/etc/localtime': ensure => link, target => "/usr/share/zoneinfo/${tz}"}



回答2:


You can install Time Zone plugin for Vagrant (vagrant plugin install vagrant-timezone) and configure Vagrantfile in the following way:

Vagrant.configure("2") do |config|
  if Vagrant.has_plugin?("vagrant-timezone")
    config.timezone.value = "UTC"
  end
  # ... other stuff
end

Instead of UTC you can also use :host to synchronize timezone with the host.



来源:https://stackoverflow.com/questions/24105108/how-to-config-timezone-with-vagrant-puppet-and-hiera

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!