我正在嘗試使用puppet安裝ActiveMQ。這個軟件包來自焦油球。我如何確保每個文件都從puppet推送(遞歸),並確保服務正在運行。因爲它在'bin'目錄中有自己的可執行文件。使用傀儡從tarball安裝軟件包
0
A
回答
0
我會問,從Tar球安裝activemq是必不可少的?它可能更容易作爲一個包進行管理,例如yum或apt安裝。
管理tarball總是會變得更加困難,尤其是在更新版本或處理下載失敗等問題時。
我會建議使用現有的ActiveMQ模塊從鐵匠鋪:
https://forge.puppet.com/modules?utf-8=%E2%9C%93&sort=latest_release&q=activemq
給你的它可能如何看一個總體思路,這裏的一些基本代碼可以工作:
$activemq_home = "/usr/local/activemq"
package{"java-1.6.0-openjdk":
ensure => installed;
}
$activemq_version = "5.4.3"
user {"activemq":
ensure => present,
home => $activemq_home,
managehome => false,
shell => "/bin/sh",
}
group {"activemq":
ensure => present,
require => User["activemq"],
}
Exec{path => ["/usr/local/bin","/usr/bin","/bin"]}
$puppet_cache = "/usr/local/src/gitorious"
file {$puppet_cache:
ensure => directory,
owner => "root",
group => "root",
}
exec { 'download_amq_src':
unless => '/usr/bin/test -e ${activemq_home}/apache-activemq-${amq_version}-bin.tar.gz',
command => 'cd /tmp && /usr/bin/wget http://archive.apache.org/dist/activemq/apache-activemq/${amq_version}/apache-activemq-${amq_version}-bin.tar.gz',
require => File[$activemq_home],
}
# Unpack the archive in the amq user directory
exec { 'unpack_amq_src':
onlyif => '/usr/bin/test -d ${activemq_home}/apache-activemq-${amq_version}-bin',
command => 'cd $amq_home && /bin/tar -xf /tmp/apache-activemq-${amq_version}-bin.tar.gz',
require => Exec['download_amq'],
}
file {"/etc/init.d/activemq":
ensure => file,
mode => 755,
owner => "root",
group => "root",
content => template("activemq/etc/init.d/activemq.erb"),
require => File["/etc/activemq.conf"],
}
service{"activemq":
enable => true,
ensure => running,
require => File["/etc/init.d/activemq"],
}
file { "activemq.xml":
path => "$activemq_home/conf/activemq.xml",
ensure => present,
mode => 644,
owner => "activemq",
group => "activemq",
content => template("activemq/activemq.xml.erb"),
require => File["/etc/init.d/activemq"],
notify => Service["activemq"],
}
+0
非常感謝,這真的很有幫助。 :) – Akplive139
相關問題
- 1. 傀儡配方安裝tarball
- 2. mcollective管理傀儡代理無主傀儡安裝
- 3. 我可以通過傀儡清單安裝傀儡模塊嗎?
- 4. 使用傀儡
- 5. 傀儡人安裝有錯誤
- 6. 如何在傀儡客戶端使用傀儡模塊?
- 7. 如何用puppet模塊安裝一個本地回購傀儡文件安裝
- 8. 從傀儡安裝時PHP擴展依賴問題
- 9. 使用tarball安裝CDH4
- 10. 傀儡代理商文件
- 11. 將Jenkins配置從Tomcat7 tarball移動到apt軟件包管理器安裝
- 12. 安裝phantomjs通過對流浪漢傀儡VM不起作用
- 13. 傀儡子模塊?
- 14. 傀儡Perforce版本
- 15. puPHPet +傀儡+ puppetlabs/mongodb
- 16. 尋找傀儡包裹網站
- 17. 傀儡包的簡單例子
- 18. 流浪傀儡供應 - 梨包
- 19. 創建一個傀儡包供應商 -
- 20. 在安裝時安裝軟件包所需的R軟件包
- 21. 無法使用軟件包控制列出軟件包:安裝軟件包
- 22. 從Macbook上的軟件包安裝程序安裝軟件包時R凍結
- 23. 從軟件包安裝程序活動獲取安裝軟件包名稱
- 24. 使用wix安裝軟件包
- 25. 使用Anaconda安裝軟件包
- 26. 使用DTF安裝msi軟件包
- 27. 使用stack.yaml配置安裝軟件包
- 28. 使用el-get安裝軟件包
- 29. 無法使用Ansible安裝軟件包
- 30. 使用virtualenv安裝某些軟件包
閱讀有關'file','exec'和'service'資源的文檔。 –