我也用我的节点木偶。 我也运行(BIND)DNS服务器。 是否有可能使用我的模板中的每个节点的DNS模块的$aliasesvariables? 我的节点看起来像这样: $ cat nodes/kayak.local.pp node 'kayak.local' { include base $node_aliases = ['svn','puppet'] $node_primaryip = '10.0.64.200' network::interface { 'eth0': ip => $node_primaryip, gw => '10.0.64.1', mac => '00:50:00:00:00:3f', netmask => '255.255.255.0', } } 我正在寻找的是能够这样做一个模板: $cat local.erb <% scope.lookupvar('ALLNODES::aliases').each do |alias| -%> <%= alias %> IN A <%= node_primaryip %> <% end -%> 谁能帮我?
我有一个主厨rbenv食谱问题。 一旦我开始引导服务器,它给了我一个错误: could not find user recipe for cookbook rbenv 但食谱是在食谱文件夹。 即使我在angular色中定义配方,也无法使其工作。 recipe rbenv recipe rbenv::user 这是我如何尝试安装用户ruby的angular色: :rbenv => { :user_rubies => ['1.9.3-p392'], :global => '1.9.3-p392', :user_installs => [ { :user => 'rubyuser', :global => '1.9.3-p392', :rubies => ['1.9.3-p392'], :gems => { '1.9.3-p392' => [ { :name => 'bundler' }, { :name => 'capistrano' }, […]
我正在写一个ruby脚本来处理传入的电子邮件的特定电子邮件地址使用传输。 Postfix transport table [email protected] ruby-script Postfix master file ruby-script unix – nn – – pipe flags= user=zimbra argv=/usr/bin/ruby /opt/zimbra/ruby-script.rb 比方说,10个电子邮件在同一时间段内传送给ruby脚本。 Postfix是否创build了10个ruby-script.rb进程来处理这10封电子邮件,或者它是如何工作的?
我有一个ruby脚本写入STDOUT,有时STDERR。 我每5分钟通过一个crontab运行这个脚本: */5 * * * * /root/myscript.rb >> /var/log/myscript.log 2>&1 我注意到,日志文件不会被实时写入。 而是等到脚本退出,然后立即写入该日志文件。 我觉得我有其他脚本没有这种行为,但也许我错了。 这是如何工作? 有什么我应该寻找改变这种行为? 这是Ubuntu 12.04
在厨师10中,我有许多设置自定义节点属性的angular色 "appname": "my_rails_app" 该属性然后用于在包装食谱中加载应用程序特定的variables。 例如,每个Rails应用程序都有不同的variables和variables数量。 app = Chef::EncryptedDataBagItem.load('deploy', node.appname) 在厨师11我的运行失败,因为'node.appname'没有设置,直到成功的厨师运行。 这意味着服务器的创build已经成为一个两步骤的过程 – 启动基础angular色,然后引导包装食谱。 我明白为什么这个行为改变了,但我很好奇如何解决这个问题,而不用重写我的食谱,仍然坚持干。 UPDATE 感谢这很有趣,但我不确定这是否有效。 例如,也取决于appname的通用部署食谱包含在my_rails_app配方中。 所以跑步看起来像 angular色 – 在哪里设置属性 "appname": "my_rails_app" 应用程序包装食谱 – 加载variables include_recipe "deploy" app = Chef::EncryptedDataBagItem.load('deploy', node.appname) 部署食谱 – 加载SSH密钥 app = Chef::EncryptedDataBagItem.load('deploy', node.appname) 部署食谱杀死了厨师跑。
我使用Ruby AWS-SDK创build如下的EC2实例: instance = ec2.instances.create({ :image_id => WORKER_AMI, :instance_type => instance_type, :key_name => 'cloud', :security_groups => 'worker', :user_data => user_data_script, :count => 1, :block_device_mappings => [ { :device_name => "/dev/sda1", :ebs => { :volume_size => 50, :delete_on_termination => true } } ] }) 这样做,我得到一个50 Gb根卷。 但我也得到了一个我不需要的360G临时磁盘。 在AWS控制台中,您可以在启动实例时在向导中将其删除。 但是如何通过SDK来做到这一点?
我正在尝试创build一个启动脚本,在启动时为我的Ubuntu 12.04服务器运行这个命令: 软件包执行薄-R -R config.ru开始-p 3030 当我以普通用户身份运行它时,它工作得很好,瘦Web服务器启动,我可以访问我需要的页面。 下面是我试图使用/etc/init/thin.conf的启动脚本: description "thin" version "1.0" author "Me" env LANG=en_US.UTF-8 env APP_HOME=/home/username/onlinetraining_dashboard respawn start on runlevel [23] script cd $APP_HOME sudo -u username /home/username/.rvm/gems/ruby-1.9.3-p448@global/bin/bundle exec thin -R config.ru start -p 3030 > $APP_HOME/log/thin.log 2>&1 end script 然后,我将input“sudo start thin”来运行脚本,并在启动时启动。 当我启动服务时,在日志文件中出现这个错误: /usr/bin/env: ruby_executable_hooks: No such file or directory 我正在使用RVM 1.9.3的ruby。 […]
我可以像这样从命令行运行wbadmin: $ c:\windows\system32\wbadmin.exe -? 它工作(我得到一个适当的帮助消息,在这里ellipse)。 但是,当我在Ruby中尝试它(如在此IRB会话:) irb(main):001:0> w=IO.popen('c:\windows\system32\wbadmin.exe -?') 我得到以下错误: Errno::ENOENT: No such file or directory – c:\windows\system32\wbadmin.exe -? from (irb):1:in `popen' from (irb):1 from C:/Ruby193/bin/irb:12:in `<main>' 这是防止我永远运行这样的wbadmin。 任何想法为什么?
下面是我的负载平衡configuration。我的其他服务器包含基于nginx独angular兽的应用程序设置。 当我尝试以上configuration图像不加载。 我总共有三个服务器1负载平衡和其他2个应用程序。 有人可以帮我弄这个吗。 我完全感到震惊。 upstream backend { server ws1.10.10.1.1 fail_timeout=10; server ws2.10.10.1.2 fail_timeout=5; } server { listen 80; client_max_body_size 2G; server_name staging.xxxx.com; include /etc/nginx/mime.types; default_type application/octet-stream; location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X_FORWARDED_PROTO $scheme; proxy_set_header Host $host; proxy_connect_timeout 3; proxy_read_timeout 60; proxy_send_timeout 60; proxy_redirect false; proxy_max_temp_file_size 0; if (!-f $request_filename) { proxy_pass http://backend; […]
更新:而不是通过docker命令(testing)转动我的resque工人,而是杀死所有我的容器无花果杀死,添加到无花果configuration,并跑了起来。 这工作,我所有的容器能够和谐运行。 这给我带来另一个问题 – 当你运行起来,它分配所有可用的内存? 从而阻止你在Docker之外运行其他容器? 我正在使用Docker供应临时服务器,并且在尝试启动一个Ruby工作人员时遇到了一个奇怪的错误。 我使用的服务器是一个20美元的Linode,带有2GB RAM和2个CPU核心。 我在这个VPS上运行nginx,unicorn,mysql,redis和elasticsearch容器,没有任何问题: ONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a04cce025794 dockerfile/nginx:latest "nginx" 21 hours ago Up 21 hours 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp arthouse_nginx_1 607139f9ba16 rails:latest "/bin/bash -l -c 'cd 21 hours ago Up 21 hours 3000/tcp, 0.0.0.0:49222->8080/tcp arthouse_app_1 6274f8fe5dc0 dockerfile/elasticsearch:latest "/elasticsearch/bin/ 21 hours ago Up 21 hours 0.0.0.0:49220->9200/tcp, […]