Archive for the 'Uncategorized' Category

Aug
13

cURL に HTTPS でアクセスできるように証明書を追加する

ウェブサービスの開発をしていると、プログラムの中で HTTP で通信をするために cURL を使うことが多いと思います。
PHP からも cURL を使うための 便利なライブラリ があります。
普通の HTTP のリクエストを投げる場合は用意されたものをそのまま使えばいいのですが、HTTPS で通信を行いたい場合は、サイトによっては証明書が必要だったりします。
素のままの状態で、例えば https://mixi.jp/ にアクセスすると、次のようなエラーでアクセスすることができません。

% curl ‘https://mixi.jp/’
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html
 
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). The default
bundle [...]

Jun
9

[Xen]DomainUをさくっと作る方法

ジョグノートでは開発や実験を行うための環境として Xen を使っています。
Xen のバーチャルマシンは DomainU と呼ばれていて、DomainU の作成方法としてはここで紹介されているように virt-install を使う方法が一般的なようです。
しかし virt-install はいろいろな仮想化技術をラップするライブラリである libvirt を使っていて、Xen の DomainU を作成するために Xen 以外のソフトウエアのお世話になるのは少々大袈裟な気がします。
なので Xen の機能のみ使って DomainU を作成できればと思い、調べてみました。基本的にはここにある方法で作業を進めていきます。
以下は CentOS 5.0 が動いている Domain0 上で CentOS 4.6 がインストールされた DomainU を作成するための手順です。
DomainU を新規に作成する場合には OS のインストーラを DomainU として走らせる必要があり、まずはインストーラのための DomainU の設定ファイルを作成します。
インストーラのための設定ファイルを /etc/xen/centos4.installation として以下のように作成します。
ちなみに /etc/xen は root 以外はディレクトリの中に入ることもできないので、実際に作業をする時には sudo bash などして root 権限でシェルを立ち上げてから作業をしたほうがやりやすいでしょう。

kernel = "/var/lib/xen/images/vmlinuz-CentOS4.6-Installer"
ramdisk = "/var/lib/xen/images/initrd-CentOS4.6-Installer.img"
extra = [...]

Feb
1

jognote in silico はじめます

ジョグノートには既にJogNote(ジョグノート)開発ブログがありますが、それとはまた別の視点で開発ブログを始めようと思います。ここではジョグノートユーザーというよりは、ウェブサービスを提供する側の視点から見て感じたことなどを書いていこうと思います。どうぞよろしくお願いいたします。
さて初回は、現在のjognoteを運営しているサーバ環境について簡単に紹介したいと思います。
2008年2月1日現在、jognoteはさくらインターネットの専用サーバ10台で運用しています。
マシンのスペックやOSのバージョンは様々で、これらのマシンはネットワーク的にも独立したところにあります。
マシンは、遅いものは次のような感じで、

CPU: AMD Sempron(tm) Processor 2600+ (1607.40-MHz 686-class CPU)
real memory = 469696512 (447 MB)
avail memory = 453799936 (432 MB)

最近契約した速いものだと

CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (3000.13-MHz 686-class CPU)
real memory = 2146304000 (2046 MB)
avail memory = 2095185920 (1998 MB)

とか

CPU: Intel(R) Pentium(R) M processor 2.00GHz stepping 08
Memory: 2065156k/2087808k available (2169k kernel code, 21592k reserved, 725k data, 172k [...]