Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
FabricでJobSchedulerの全自動インストール	2013/6/7JobScheduler User Group Japanyamashita@ossl.co.jp
目次	1.Fabricを使用したインストール前提条件2.Fabricのインストール3.簡単なサンプル4.Fabricの実行5.JobSchedulerのインストール例  1) JRE32bitのインストール  2) mysql-connecto...
1.Fabricを使用したインストール前提条件・CentOS6.4 minimal・パッケージを最新バージョンへアップデート・時刻の設定・SELinux、ファイアウオール 機能を無効化	端末(Fabric)よりサーバへJobSchedulerを...
2.Fabricのインストール	インストールは簡単で、以下のコマンドだけでFabricが使えるようになります。	# pip install fabric
3.簡単なサンプル	|  まず適当なディレクトリにfabfile.pyを作成します。(/root/fabric/fabfile.py)|  次に内容を書き込みます	from fabric.api import rundef test():r...
4.Fabricの実行	◆fabコマンドを使用し実行します # fab -H localhost -p password test   -H 実行するホストを指定   -p ホストのパスワード※コマンドのオプションでホストを指定するほかfabf...
5.JobSchedulerのインストール例	1)JRE32bitのインストール	run(cp /opt/fabric_file/jre-6u45-linux-i586.bin /opt)jre-6u45-linux-i586.binを/opt...
3) JobSchedulerのインストール	adduser=schedulerインストールユーザを定義with cd(/opt):run(cp fabric_file/jobscheduler_linux.1.3.12.3072.tar.gz...
6.インストール後の動作確認     (envassert)Fabricにはサーバ環境をテストするenvassertというプラグインがあります。envassertには次の事が出来ます。|  ファイル、ディレクトリの有無確認|  サービスの起...
7.envassert使用例	def check():print(MySQL Process Check)if process.is_up(mysqld):print(MySQL Runningn)else:print(Not MySQL Ru...
Upcoming SlideShare
Loading in …5
×

FabricでJobSchedulerを全自動インストール

1,663 views

Published on

Fablicを使って、SOS JobSchedulerの全自動インストールをやってみました

Published in: Technology
  • Be the first to comment

FabricでJobSchedulerを全自動インストール

  1. 1. FabricでJobSchedulerの全自動インストール 2013/6/7JobScheduler User Group Japanyamashita@ossl.co.jp
  2. 2. 目次 1.Fabricを使用したインストール前提条件2.Fabricのインストール3.簡単なサンプル4.Fabricの実行5.JobSchedulerのインストール例  1) JRE32bitのインストール  2) mysql-connectorのインストール  3) JobSchedulerのインストール6.インストール後の動作確認(envassert)7.envassert使用例
  3. 3. 1.Fabricを使用したインストール前提条件・CentOS6.4 minimal・パッケージを最新バージョンへアップデート・時刻の設定・SELinux、ファイアウオール 機能を無効化 端末(Fabric)よりサーバへJobSchedulerをインストールします
  4. 4. 2.Fabricのインストール インストールは簡単で、以下のコマンドだけでFabricが使えるようになります。 # pip install fabric
  5. 5. 3.簡単なサンプル |  まず適当なディレクトリにfabfile.pyを作成します。(/root/fabric/fabfile.py)|  次に内容を書き込みます from fabric.api import rundef test():run( pwd)
  6. 6. 4.Fabricの実行 ◆fabコマンドを使用し実行します # fab -H localhost -p password test   -H 実行するホストを指定   -p ホストのパスワード※コマンドのオプションでホストを指定するほかfabfile.pyに以下を追加する事で、省く事ができます。 env.hosts = [192.168.106.162]env.user = rootenv.password = passwordfab -f tt.py -H localhost -p password test[localhost] Executing task test[localhost] run: pwd[localhost] out: /root◆実行結果
  7. 7. 5.JobSchedulerのインストール例 1)JRE32bitのインストール run(cp /opt/fabric_file/jre-6u45-linux-i586.bin /opt)jre-6u45-linux-i586.binを/optへコピーrun(chmod +x /opt/jre-6u45-linux-i586.bin)コピーしたjre-6u45-linux-i586.binのパーミッションの変更java_install=/opt/jre-6u45-linux-i586.binインストールコマンドを変数に格納run(cd /opt && %s %java_install )JREのインストール JobSchedulerをインストールする前に必要のモジュール等をインストールします。(インストール元ファイルは事前に/opt/fabric_fileに格納、またソースはところどころ省略してます。)2) mysql-connectorのインストール with cd(/opt):run( cp fabric_file/mysql-connector-java-5.1.25.tar.gz .)mysql-connector-java-5.1.25.tar.gzを/optにコピーrun(tar xvf mysql-connector-java-5.1.25.tar.gz) mysql-connectorのインストール 変数にコマンドを入れることも可能 変数を使うには%sを仕様 Withを使用することにより作業ディレクトリを固定することが可能 ※Fabricはfabコマンドを実行したユーザのディレクトリがルートディレクトリになり、コマンドを  実行するたびにルートに戻ってしまうため、毎回作業ディレクトリを入れる必要があります。
  8. 8. 3) JobSchedulerのインストール adduser=schedulerインストールユーザを定義with cd(/opt):run(cp fabric_file/jobscheduler_linux.1.3.12.3072.tar.gz /opt) jobscheduler_linux.1.3.12.3072.tar.gzを/optへコピーrun(tar xvf jobscheduler_linux.1.3.12.3072.tar.gz)run( cp jobscheduler.1.3.12.3072/jobscheduler_install.xml /home/%s %adduser )run( sed -ie s/key= databaseHost" value=""/key=" databaseHost " value= 192.168.106.162"/g /home/%s/jobscheduler_install.xml" %adduser ) sedコマンドを使用し、jobscheduler_install.xmlの中身を置換 <entry key= databaseHost value= /> →  <entry key= databaseHost value= 192.168.100.248 />run(export PATH=/opt/jre1.6.0_45/bin:$PATH) インストールにはJRE32bitを使用するためパスをexportrun(chown %s:%s /opt/jobscheduler.1.3.12.3072 %(adduser,adduser))sos_install= /opt/jobscheduler.1.3.12.3072/setup.sh -u /home/%s/jobscheduler_install.xml %addusersudo(sudo -u %s %s %(adduser,sos_install))sos_start= /opt/sos-berlin.com/jobscheduler/%s/bin/jobscheduler.sh start %adduser JobScheduler起動コマンドを変数に格納run(%s %sos_start) JobSchedulerの起動
  9. 9. 6.インストール後の動作確認     (envassert)Fabricにはサーバ環境をテストするenvassertというプラグインがあります。envassertには次の事が出来ます。|  ファイル、ディレクトリの有無確認|  サービスの起動確認|  ユーザの存在確認|  その他パーミッションの確認などenvassertはfabricのインストールだけでは使用できないため別途プラグインをインストールします。 # pip install envassert
  10. 10. 7.envassert使用例 def check():print(MySQL Process Check)if process.is_up(mysqld):print(MySQL Runningn)else:print(Not MySQL Runningn)if user.exists(scheduler):print(User:scheduler is presentn)else:print(User:scheduler not presentn)print(JobScheduler StertUP)if port.is_listening(4444):print(JobScheduler Runningn)else:print(Not JobScheduler Runningn)以下はMySQLの起動確認、 schedulerユーザの存在確認、Jobscheduler(ポート4444の使用)の起動確認を行っているサンプルとなります。 MySQLの起動確認 Schedulerユーザの確認 JobSchedulerの起動確認

×