【システム構成】
■Ubuntu Server 12.04
■Apache 2.2.22
■Redmine 2.0.3
■MySQL 5.5.24
■Subversion 1.6.17
■Jenkins 1.481
■Postfix 2.9.3
■zabbix 1.8.11
【事前準備】
■viの設定
sudo vi /etc/vim/vimrc
=========================
syntax on
↓
syntax off
=========================
■SSHの設定 sudo vi /etc/ssh/sshd_config
=========================
PermitRootLogin yes ↓ PermitRootLogin no
=========================
【バージョン確認】
■Apache apache2ctl -v ⇒Server version: Apache/2.2.22 (Ubuntu)
■Postfix /usr/sbin/postconf | grep mail_version ⇒mail_version = 2.9.3
■MySQL mysql --version ⇒mysql Ver 14.14 Distrib 5.5.24
■Subversion svn --version ⇒svn, version 1.6.17 (r1128011)
【Apacheインストール】
■パッケージインストール sudo apt-get -y install apache2
■確認 http://サーバのIPアドレス/
【Postfixインストール】
■パッケージインストール
sudo apt-get -y install postfix sasl2-bin mailutils
⇒[インターネットサイト]-[システムメール名:任意]-[了解]
■ファイアーウォール設定
sudo iptables -A INPUT -p tcp --dport 25 -j ACCEPT
【Postfix設定】
■OB25P(Outbound Port 25 Blocking)対策
sudo vi /etc/postfix/main.cf ===========================================================
relayhost = [smtp.gmail.com]:587 #sasl setting smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = plain #tls setting smtp_use_tls = yes ===========================================================
sudo vi /etc/postfix/sasl_passwd =========================================================== [smtp.gmail.com]:587 メールアドレス:パスワード ===========================================================
sudo chown root:root /etc/postfix/sasl_passwd
sudo chmod 600 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
sudo /etc/init.d/postfix restart
■送信テスト
echo "test" | mail -t メールアドレス -s "test"
【Redmineインストール】
■パッケージインストール
sudo apt-get -y install mysql-server libmysqlclient-dev ruby libmysql-ruby ruby-dev rubygems ■Redmineインストール cd /usr/local/src
sudo wget http://rubyforge.org/frs/download.php/76259/redmine-2.0.3.tar.gz
sudo tar zxvf redmine-2.0.3.tar.gz -C /var/lib/
cd /var/lib/
sudo mv redmine-2.0.3 redmine
sudo gem install bundler
sudo vi /var/lib/redmine/Gemfile
===================以下の行をコメント化====================
# Optional gem for exporting the gantt to a PNG file, not supported with jruby
#platforms :mri, :mingw do # group :rmagick do
# # RMagick 2 supports ruby 1.9
# # RMagick 1 would be fine for ruby 1.8 but Bundler does not support
# # different requirements for the same gem on different platforms
# gem "rmagick", ">= 2.0.0"
# end
#end
# Database gems
#platforms :mri, :mingw do
# group :postgresql do
# gem "pg", ">= 0.11.0"
# end
# # group :sqlite do
# gem "sqlite3"
# end
#end =========================================================== cd /var/lib/redmine bundle install
【MySQL設定】
■Redmine用のユーザとデータベースを作成
sudo mysql -uroot –p
===================以下のコマンドを実行====================
create database redmine character set utf8;
create user 'ユーザ名'@localhost identified by 'パスワード';
grant all privileges on データベース名.* to 'ユーザ名'@localhost;
exit
===========================================================
【Redmine設定】
■DB設定
cd /var/lib/redmine/config/
cp -p database.yml.example database.yml
vi database.yml
=====productionを以下のように変更=====
production:
adapter: mysql database: データベース名
host: localhost
username: ユーザ名
password: パスワード
encoding: utf8
=======================================
rake generate_secret_token
RAILS_ENV=production rake db:migrate
RAILS_ENV=production rake redmine:load_default_data >ja
■起動
cd /var/lib/redmine
ruby script/rails server webrick -e production
■確認
http://サーバのIPアドレス:3000/
【ApacheとRedmine連携】
■パッケージインストール
sudo apt-get -y install apache2-dev libcurl4-gnutls-dev
sudo gem install passenger
■実行するパスを検索
sudo find / -name passenger-install-apache2-module
■上記の方法で表示されたパスを実行
sudo /var/lib/gems/1.8/gems/passenger-3.0.17/bin/passenger-install-apache2-module ⇒passenger.confファイルに設定する情報が出力されるので注意する必要がある
■Apacheの設定(passenger)
sudo vi /etc/apache2/conf.d/passenger.conf(※環境によって設定値が変わる)
========================以下を追加=================================
LoadModule
passenger_module /var/lib/gems/1.8/gems/passenger-3.0.17/ext/apache2/mod_passenger.so PassengerRoot /var/lib/gems/1.8/gems/passenger-3.0.17 PassengerRuby /usr/bin/ruby1.8 ================================================================== ■Apacheの設定(rails)
sudo vi /etc/apache2/conf.d/rails.conf
====================以下を追加=========================
<Location /redmine> Options -MultiViews RailsBaseURI /redmine </Location>
■公開領域にシンボリックリンクを設定
sudo ln -s /var/lib/redmine/public /var/www/redmine
■起動 sudo /etc/init.d/apache2 restart
■確認 http://サーバのIPアドレス/redmine
⇒admin/admin
【PostfixとRedmine連携】
■Redmine設定
cd /var/lib/redmine/config/
sudo cp -p configuration.yml.example configuration.yml
sudo vi configuration.yml
====================以下のように変更=======================
default:
# Outgoing emails configuration (see examples above)
email_delivery:
delivery_method: :smtp
smtp_settings: enable_starttls_auto: false
address: localhost
port: 25
domain: localhost
# authentication: :login
# user_name: redmine@example.net
# password: "redmine" ==============================================================
■再起動 sudo /etc/init.d/apache2 restart
■Redmineテストメール [管理]-[設定]-[メール通知]-[テストメールを送信]
【Jenkinsインストール】
■キー追加
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
■リストにJenkins追加
sudo vi /etc/apt/sources.list
================最後の行に追加=================
deb http://pkg.jenkins-ci.org/debian binary/ ===============================================
sudo apt-get update
■パッケージインストール sudo apt-get -y install jenkins
■再起動 sudo /etc/init.d/apache2 restart
.■確認 http://サーバのIPアドレス:8080/ {{:user:watanuki:技術:開発管理環境構築:jenkins.png?200x200}}
【Subversionインストール】
■パッケージインストール sudo apt-get -y install subversion subversion-tools libapache2-svn
【Subversion設定】
■Subversion設定
sudo vi /etc/apache2/mods-enabled/dav_svn.conf
============コメントを外し、パスを変更する=================
<Location /svn> DAV svn SVNParentPath /home/svn </Location>
===========================================
■リポジトリ登録
sudo mkdir /home/svn/ cd /home/svn
sudo svnadmin create repos
sudo chown -R www-data.www-data repos
■テストプロジェクト作成
cd /home sudo mkdir -p test/trunk
■モジュール登録
cd /home/test
sudo svn import http://サーバのIPアドレス/svn/repos/test -m "Initial import."
■再起動
sudo /etc/init.d/apache2 restart
■確認
http://サーバのIPアドレス/svn/repos
【RedmineとSubversion連携】
■プロジェクトにSubversionのパスを紐づける(Redmine画面内) [プロジェクト]-[プロジェクト名]-[設定]-[リポジトリ]-[新しいリポジトリ]-[「1.Subversion情報」を入力]-[作成] 1.Subversion情報 URL :http://サーバのIPアドレス/svn/repos/test ログイン : パスワード:
【JenkinsとSubversion連携】
■Subversionのバージョン設定(Jenkins画面内)
[Jenkinsの管理]-[システムの設定]-[以下を設定]-[保存] ワークスペースバージョン:1.6
【ジョブ(Subversion編)】
■ [新規ジョブ作成]-[ジョブ名:]-[フリースタイル・プロジェクトのビルド]-[OK]
プロジェクト名:test
ビルド無効化:チェック
Subersion:チェック リポジトリURL:http://サーバのIPアドレス/svn/repos/test/
ローカルモジュールディレクトリ:test
チェックアウト方式: リポジトリ
■ブラウザ:(自動)
【Zabbixインストール】
■zabbixユーザ作成
sudo adduser zabbix ⇒zabbix
■パッケージインストール
sudo apt-get -y install mysql-client zabbix-server-mysql zabbix-frontend-php
⇒[zabbix-server-mysqlのデータベースをdbconfig-commonで設定しますか?:はい]-[データベースの管理権限を持つユーザのパスワード:]-[了解]-[zabbix-server-mysql用のMySQLアプリケーションパスワード:パスワード]-[了解]-[パスワードの確認:zabbix]-[了解]-[zabbix-fronted-phpが使うデータベースの種類:mysql]-[了解]-[zabbix-frontend-php用のMySQLアプリケーションパスワード:パスワード]-[了解]-[パスワードの確認:zabbix]-[了解]
■パスワード変更
sudo mysql -uroot –p
===================以下のコマンドを実行====================
set password for zabbix@localhost=password('パスワード'); =========================================================== ■確認
【ZabbixとPostfix連携】
■メール設定場所確認
view /etc/zabbix/zabbix_server.conf
⇒解凍先が「AlertScriptsPath=/etc/zabbix/alert.d/」に記述されている
⇒参考HP:http://www.zabbix.jp/modules/newbb/viewtopic.php?topic_id=270&forum=6
■メールスクリプト取得
cd /usr/local/src
sudo wget https://github.com/zabbix-jp/plugins/tarball/master master.tar.gz
sudo tar zxvf master -C /etc/zabbix/
cd /etc/zabbix/zabbix-jp-plugins-721e346/notification
sudo cp -rf sendmessage-smtp-php /etc/zabbix/alert.d/
■メールスクリプト設定
cd /etc/zabbix/alert.d/sendmessage-smtp-php
sudo vi sendmessage_smtp_php.sh =====================================================
$MAIL_FROM = zabbix@dev;
$MAIL_FROMNAME = "";
$MAIL_SMTP_HOST = 'localhost:25';
//$mailer->SMTPAuth = true;
//$mailer->Username = $MAIL_SMTP_USER;
//$mailer->Password = $MAIL_SMTP_PASS; =====================================================
■テスト送信
cd /etc/zabbix/alert.d/sendmessage_smtp_php/
./sendmessage_smtp_php.sh メールアドレス 'test' 'test'
■メディアタイプの設定(Zabbix画面内) [管理]-[メディアタイプ]-[Email]-[メディアタイプの作成] =====================================================
説明 :postfix
タイプ :スクリプト
スクリプト名:sendmessage_smtp_php/sendmessage_smtp_php.sh =====================================================