Fedora 18 で Calipso

2013/03/16
いつも使ってるのは drupal なんですが、Calipso を使ってみたくなった。

node.js のインストール


まずは node.js から。
yum でインストール場合
# yum install nodejs npm GitHub から落としてきてビルドする場合
# git clone https://github.com/joyent/node.git # yum install gcc-c++ openssl-devel # cd node # ls AUTHORS CONTRIBUTING.md LICENSE README.md common.gypi deps lib src tools BSDmakefile ChangeLog Makefile benchmark configure doc node.gyp test vcbuild.bat # export PYTHON=/usr/bin/python # $PYTHON ./configure # make # make install

MongoDB のインストール


mongoDBのも、yum でさくっと入る。
# yum install mongodb-server
依存関係で追加されるパッケージは以下
 boost-chrono
 boost-filesystem
 boost-program-options
 boost-system
 boost-thread
 gperftools-libs
 libmongodb
 libunwind
 mongodb
 snappy
 v8

サービスを起動する
# systemctl enable mongod.service ln -s '/usr/lib/systemd/system/mongod.service' '/etc/systemd/system/multi-user.target.wants/mongod.service' # systemctl start mongod.service # ps -ef | grep mongod mongodb 14801 1 2 17:09 ? 00:00:02 /usr/bin/mongod --quiet -f /etc/mongodb.conf run root 14842 14380 0 17:11 pts/2 00:00:00 grep --color=auto mongod
動作確認
# mongo MongoDB shell version: 2.2.3 connecting to: test Welcome to the MongoDB shell. For interactive help, type "help". For more comprehensive documentation, see http://docs.mongodb.org/ Questions? Try the support group http://groups.google.com/group/mongodb-user > use test switched to db test > db.foo.find() > db.foo.save({a: 1}) > db.foo.find() { "_id" : ObjectId("5144296efe6aab3b2eae5a85"), "a" : 1 } > db.foo.update( {a: 1}, {a: 5}) > db.foo.find() { "_id" : ObjectId("5144296efe6aab3b2eae5a85"), "a" : 5 } > exit bye

calipso のインストール


npm を使ってダウンロード&インストール
# npm install calipso -g
サイト作成
# mkdir /var/www/html/calipso # calipso site /var/www/html/calipso
サーバ起動
# cd /var/www/html/calipso # calipso server server.port=3000 Launching calipso from: /var/www/html/calipso Calipso directory: /usr/local/lib/node_modules/calipso/lib/../ _ _ ___ __ _| (_)_ __ ___ ___ / __|/ _` | | | '_ \/ __|/ _ \ | (__| (_| | | | |_) \__ \ (_) | \___|\__,_|_|_| .__/|___/\___/ |_| Calipso version: 0.3.17 Calipso configured for: development environment. Calipso server listening on port: 3000 16 Mar 19:48:25 - info: Saving configuration ... 16 Mar 19:48:25 - info: Reloading updated configuration ... 16 Mar 19:48:25 - info: Installing module content 16 Mar 19:48:25 - info: Installing module contentTypes 16 Mar 19:48:25 - info: Installing module permissions 16 Mar 19:48:25 - info: Installing module user 16 Mar 19:48:25 - debug: NOTE: bcrypt is not available. 16 Mar 19:48:25 - info: Content module installed ... 16 Mar 19:48:25 - info: Content types module installed ... 16 Mar 19:48:25 - info: User module installed ... 16 Mar 19:48:25 - info: User Roles sub-module installed ... 16 Mar 19:51:00 - info: No Calipso module routes matched the current URL /css/login-icons.css 16 Mar 20:04:53 - info: No Calipso module routes matched the current URL /css/login-icons.css 16 Mar 20:08:11 - debug: ValidationError: Validator "required" failed for path alias 16 Mar 20:11:05 - debug: ValidationError: Validator "required" failed for path alias
初期設定




できた!


まだいろいろと不安定っぽい。
Read more ...

多段串

2013/03/03

多段串の設定

プロキシ2(zone01:apache 2.2)=>プロキシ1(magi:apache 2.4)=>世界へ!

プロキシ1(magi:apache 2.4)
/etc/httpd/conf.d/proxy.confで下記を設定

<IfModule mod_proxy.c> <IfModule proxy_module> ProxyRequests On ProxyVia On AllowCONNECT 443 563 <Proxy *> <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require ip 192.168.0. </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from all Allow from 192.168.0. </IfModule> </Proxy> </IfModule>

プロキシ2(zone01:apache 2.2)
/etc/apache2/2.2/conf.d/proxy.confで下記を設定

<IfModule proxy_module> ProxyRequests On ProxyRemote * http://192.168.0.1:80 SSLProxyEngine On SSLProxyVerify none <Proxy *> Order deny,allow Deny from all Allow from 172.16.0. </Proxy> </IfModule>

プロキシサーバはDNSが引けていないとうまく動かないっぽい?

# svccfg -s name-service/switch setprop config/host = 'astring: "files dns mdns"' # svccfg -s network/dns/client setprop config/nameserver = net_address: "(192.168.0.1)" # svcadm refresh name-service/switch # svcadm refresh dns/client

動作確認
zone3(10.0.0.X)の端末から、多段串経由でVerisignのテスト用サイトをwgetで取得して確認する

# netstat -rn -f inet Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ---------- --------- default 10.0.0.254 UG 2 281 vnic22 10.0.0.0 10.0.0.35 U 3 0 vnic22 127.0.0.1 127.0.0.1 UH 2 36 lo0 # ping 192.168.0.35 192.168.0.35 is alive # ping 172.16.0.1 172.16.0.1 is alive # cat .wgetrc http_proxy = http://172.16.0.10:8080/ https_proxy = http://172.16.0.10:8080/ # wget https://ssltest2.verisign.co.jp/ --2013-03-03 09:07:08-- https://ssltest2.verisign.co.jp/ 172.16.0.10:8080 に接続しています... 接続しました。 Proxy による接続要求を送信しました、応答を待っています... 200 OK 長さ: 541 [text/html] `index.html' に保存中 100%[======0000000000===========================================>] 541 --.-K/s 時間 0s 2013-03-03 09:07:08 (23.2 MB/s) - `index.html' へ保存完了 [541/541]

ちなみに多段NATが効いているので、多段串を使わなくても問題なく外に出られるんですけどね。

Read more ...