its*_*sme 2 ruby java chef-infra
我知道如何使用终端在linux机器上安装java.但我想使用Chef Framework自动化安装.我有两台机器M1和M2.我在机器M1上,想在机器M2上安装java.这是我在使用终端....
首先我SSH进入机器M2,我做了以下事情......(在这里我从第三方存储下载java文件.)
Step1:-
cd setup
step2:-
wget http://downloads.company.com/downloads/DevTools/jdk/6.0/jdk-6u31-linux-i586.bin
Step3:-
chmod +x jdk-6u31-linux-i586.bin
Step4:-
yes | ./jdk-6u31-linux-i586.bin
Step5:-
cd /usr/bin
Step6:-
mv java javaorg
Step7:-
cd /usr
Step8:-
ln -s /home/harish/setup/jdk1.6.0_31 java
Step9:-
echo 'export PATH=$PATH:/usr/java/bin' > /etc/profile.d/alljava.sh;echo 'export JAVA_BINDIR=/usr/java/bin' >> /etc/profile.d/alljava.sh;echo 'export JAVA_ROOT=/usr/java' >> /etc/profile.d/alljava.sh;echo 'export JAVA_HOME=/usr/java' >> /etc/profile.d/alljava.sh;echo 'export JRE_HOME=/usr/java/jre' >> /etc/profile.d/alljava.sh
Step10:-
source /etc/profile.d/alljava.sh
Step11:-
echo $JAVA_HOME
Step12:-
java -version
Run Code Online (Sandbox Code Playgroud)
我有以下问题:
我已经写了一些代码在SAME机器上安装java ..但它也无法正常工作..代码:
#cookbook/java/recipe/default.rb
*####This will install JAVA on machine M1######*
execute "copy" do
cwd "/home/user/setup"
command "wget http://downloads.company.com/downloads/DevTools/jdk/6.0/jdk-6u31-linux-i586.bin"
end
execute "change_mode" do
command "chmod +x jdk-6u31-linux-i586.bin"
end
execute "dont_know" do
command "yes | ./jdk-6u31-linux-i586.bin"
end
execute "make link" do
command "ln -s /home/harish/setup/jdk1.6.0_31 java"
end
java_home = "export JAVA_HOME=/usr/java/jdk1.6.0_31"
path = "export PATH=$PATH:JAVA_HOME/bin"
file "/etc/profile" do
content "#{java_home}\n#{path}"
owner "root"
end
Run Code Online (Sandbox Code Playgroud)
但是这段代码给出了一些重要信息..(错误).任何人都可以通过这个帮助,以及如何使用下载的JAVA烹饪书..谢谢.:)
这是一个很长时间的过时问题,但我会提供一个答案,万一有人偶然发现这个问题.
Opscode有一个他们维护的Java手册,可以安装OpenJDK或Oracle JDK.它可以在opscode社区网站上找到.
您可以通过向cookbook的metadata.rb添加依赖项来使用它:
depends "java", "~> 1.10.2"
Run Code Online (Sandbox Code Playgroud)
并在食谱的default.rb中包含食谱:
include_recipe "java"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7607 次 |
| 最近记录: |