- update-rc.dでデーモン自動起動の制御
/etc/rc2.d – rc5.d にS,Kスクリプトが置かれているのが前提
MySQLの自動起動の無効化
# update-rc.d -f mysql remove
MySQLの自動起動の有効化
# update-rc.d mysql defaults
RH系のntsysvのようなツール、sysv-rc-conf (apt-get で)
2013/02/10
root@ubuntu:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04 LTS Release: 12.04 Codename: precise root@ubuntu:~#
* Java 1.6.0_38導入済み
* Tomcat6 (apt-get)
* Exuberant Ctags(apt-get)・・・5.9が入るようす
root@ubuntu:~# ctags --version Exuberant Ctags 5.9~svn20110310, Copyright (C) 1996-2009 Darren Hiebert Compiled: Nov 9 2011, 17:42:21 Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net Optional compiled features: +wildcards, +regex
* JFex(apt-get)・・・1.4.3-2 # dpkg -l で確認
* ant(apt-get)・・・1.8.2-4build1 # dpkg -l
JFlex.jarをソースディレクトリにコピー
root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# dpkg -L jflex|grep JFlex.jar /usr/share/java/JFlex.jar root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# cp /usr/share/java/JFlex.jar ./lib/ root@ubuntu:~/OpenGrok/opengrok-0.11.1-src#
ソースをコンパイル
root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# ant -touch-manifest:
-exclude-client:
-pre-init:
(省略)
jar:
BUILD SUCCESSFUL Total time: 14 seconds root@ubuntu:~/OpenGrok/opengrok-0.11.1-src#
確認
root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# ls dist/ lib opengrok.1 opengrok.jar source.war root@ubuntu:~/OpenGrok/opengrok-0.11.1-src#
デプロイ
root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# ./OpenGrok deploy Loading the default instance configuration ... Installing /root/OpenGrok/opengrok-0.11.1-src/dist/source.war to /var/lib/tomcat6/webapps ...
Start your application server (Tomcat), if it is not already running, or wait until it loads the just installed web application.
OpenGrok should be available on <HOST>:<PORT>/source where HOST and PORT are configured in Tomcat.
Tomcat6がインストされている以下にsource.warが入る
root@ubuntu:/var/lib/tomcat6/webapps# ls -l 合計 3908 drwxr-xr-x 3 root root 4096 1月 27 21:24 ROOT drwxr-xr-x 7 tomcat6 tomcat6 4096 1月 27 21:50 source -rw-r--r-- 1 root root 3990157 1月 27 21:42 source.war
localhost:8080/sourceにアクセス、OpenGrokのホームが出てくる
Congratulations, you should now be able to point your browser to http://<YOUR_WEBAPP_SERVER>:<WEBAPPSRV_PORT>/source to work with your fresh opengrok installation! :-)
ソースファイル準備
mkdir -p /var/opengrok/src
ソース今回はopengrokのものをコピー
root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# cp -a * /var/opengrok/src/ root@ubuntu:~/OpenGrok/opengrok-0.11.1-src#
インデックス作成
# ./OpenGrok index /var/opengrok/src Loading the default instance configuration ... WARNING: OpenGrok generated data path /var/opengrok/data doesn't exist Attempting to create generated data directory ... WARNING: OpenGrok generated etc path /var/opengrok/etc doesn't exist Attempting to create generated etc directory ... Creating default /var/opengrok/logging.properties ...
/var/opengrok/data以下にできる
/var/opengrok/以下に必要なものが作られる、(WARNINGメッセージにもそれが出力される)
root@ubuntu:/var/opengrok# ls data/ historycache index spellIndex timestamp xref root@ubuntu:/var/opengrok#
CDH4.1のソースを用意してIndex張ってみる
root@ubuntu:~/OpenGrok/opengrok-0.11.1-src# time ./OpenGrok index /var/opengrok/src/hadoop-2.0.0-cdh4.1.3 Loading the default instance configuration ... 22:33:04 WARNING: GitRepository not working (missing binaries?): /var/opengrok/src/hadoop-2.0.0-cdh4.1.3/src 22:33:04 WARNING: GitRepository not working (missing binaries?): /var/opengrok/src/hadoop-2.0.0-cdh4.1.3/src 22:33:04 WARNING: Skipping creation of historycache of GitRepository repository in /var/opengrok/src/hadoop-2.0.0-cdh4.1.3/src: Missing SCM dependencies? 22:33:06 WARNING: Skipping creation of historycache of GitRepository repository in /var/opengrok/src/hadoop-2.0.0-cdh4.1.3/src: Missing SCM dependencies?
real 1m55.679s user 3m0.855s sys 0m10.469s
ソースを /var/opengrok/src へ配置
# ls /var/opengrok/src CDH4.1.3 opengrok-0.11.1
# cd ~/OpenGrok/opengrok-0.11.1-src # ./OpenGrok index /var/opengrok/src real 2m41.714s user 2m47.210s sys 0m7.536s
とすると、プロジェクトは /var/opengrok/src 以下のフォルダ名のリストで構成される
検索するときはそれを指定して実行すればよい
# ./OpenGrok deploy
warファイルが /var/lib/tomcat6/webapps に入る
http://localhost:8080/source でアクセス
全体を一言で現す
「お客様からよろこんでもらえることです」
具体的な例を挙げて説明する
「例えば・・・」
他のもの、他社の場合と比較する
「どんな仕事も顧客のニーズに応えることで成り立つが、私の仕事は・・・・いる」
原因と結果を話す。なぜそうなのか、説明する
「この仕事をすると、お客様との間にビジネスを超えた信頼関係が生まれる」
もう一度、話の主旨を整理する
「だから、お客様に感謝され、人のつながりを実感できるこの仕事はやりがいがあって面白い」
相手に提案を投げかける
「あなたもこの仕事を通じて私と一緒に成長しませんか」
なぐりがきメモ
Oracle Database 11g R2をPacemakerでHA冗長化
RHEL5.6 x86_64
片方セットアップ
[root@rhel5-1 ~]# groupadd oinstall [root@rhel5-1 ~]# groupadd dba [root@rhel5-1 ~]# useradd -g oinstall -G dba oracle [root@rhel5-1 ~]# passwd oracle Changing password for user oracle. New UNIX password: BAD PASSWORD: it is based on a dictionary word Retype new UNIX password: passwd: all authentication tokens updated successfully. [root@rhel5-1 ~]# vi /etc/sysctl.conf
# Oracle Database 11g R2 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586
[root@rhel5-1 ~]# vi /etc/security/limits.conf
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240
[oracle@rhel5-1 ~]$ ulimit -Sn 1024 [oracle@rhel5-1 ~]$ ulimit -Hn 65536 [oracle@rhel5-1 ~]$ ulimit -Su 2047 [oracle@rhel5-1 ~]$ ulimit -Hu 16384 [oracle@rhel5-1 ~]$ ulimit -Ss 10240 [oracle@rhel5-1 ~]$ ulimit -Hs unlimited
[root@rhel5-1 ~]# cd /opt/ [root@rhel5-1 opt]# mkdir app [root@rhel5-1 opt]# cd [root@rhel5-1 ~]# chown -R oracle:oinstall /opt/app [root@rhel5-1 ~]# chmod -R 755 /opt/app [root@rhel5-1 ~]#
[oracle@rhel5-1 ~]$ vi .bashrc # .bashrc
# Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi
# User specific aliases and functions
# Oracle Database 11g R2 ORACLE_BASE=/opt/app/oracle ORACLE_SID=orcl export ORACLE_BASE ORACLE_SID
興味のわいたものはためしておく。
Apacheを普通にHAシステムとする。紐付けるリソースはVIPアドレス。クラスタ制御部はheartbeat3とする。
以下を2つのサーバで実施
MEMO:インストールでは、RHELのCD-ROMをマウントしておき、yumでPacemakerをインストールするときには依存関係があった場合そこから解決するようにした。大まかに2の手順は、
[rhel-DVD]
name=RHEL
baseurl=file:///mnt/Server
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
クラスタ全体の設定、VIPアドレスとApache、またネットワークの設定
# crm configure property no-quorum-policy=”ignore” stonith-enabled=”false”
# crm configure rsc_defaults resource-stickiness=”INFINITY” migration-threshold=”1″
# crm configure primitive httpd ocf:heartbeat:apache params configfile=”/etc/httpd/conf/httpd.conf” statusurl=”http://localhost/” testregex=”service” op monitor interval=”10s”
# crm configure primitive vip ocf:heartbeat:IPaddr2 params ip=”192.168.0.20″ nic=”eth0″ cidr_netmask=”24″ op monitor interval=”10s”
# crm configure group web vip httpd
# crm configure primitive ping ocf:pacemaker:pingd params name=”default_ping_set” host_list=”192.168.68.2″multiplier=”100″ dampen=”1″ op monitor interval=”10s”
# crm configure clone clone_ping ping
手動切り替え試験のコマンドは:crm resource migrate <resource name>
migrate後は、unmigrateでモードを元に戻す。
プライマリのサーバー側を強制ダウンさせ、セカンダリ側に切り替える。
リソース障害を起こした後には、リソースがそのままでは回復しないようになっている。failcountをクリアしてやれば、直った。そういった解説がないと把握できない挙動には注意。
やっぱあったのね、ってことで以下のプラグインをいれた
WP Social Bookmarking Light
http://wordpress.org/extend/plugins/wp-social-bookmarking-light/
参考:
http://serendip3.net/blog/wp-social-bookmarking-light/642
http://www.ninxit.com/blog/2010/06/13/wp-social-bookmarking-light/
リフレーミングでアイディアを出す、ここから実現可能なものとするため、案をよりよいものにする。
PICNICNICNIC・・・と精度をあげていく。
発想の飛躍のしすぎに注意、地に足をつけた思考が大事
チームでやるとよい
アウトプットとフィードバックの組み合わせ
注意:
自分なりの解決策をよういしておく。また身近な人である程度構築して、広く属性の離れた人と交配する
(社内でもんでから社外へと広げる)