PHPのセッションハンドラを Microsoft Azure Table Storage に保存するためのプログラムを、githubに公開してみた。
https://github.com/cocteau666/php-azure-session/
Azure SDK for PHP に依存しています。
https://github.com/cocteau666/azure-sdk-for-php
Microsoft Azure でPHPを使う場合に、セッションデータをローカルに持たないようにするためにも、使ってみてはいかがでしょうか?
使い方は、こんな感じ。
require 'AzureTableSessionHandler.php';
$sessionHandler = new AzureTableSessionHandler($blob_account, $blob_key);
session_set_save_handler($sessionHandler, TRUE);
session_start();
シンプルですねー。
2014年7月30日水曜日
2014年7月14日月曜日
CentOS7 あれこれ
Microsoft Azure で CentOS7 を動かし始めて数日。
どうでも良いかもしれない、気が付いた事を。
1. firewalld ってもしかして Pythonスクリプト?
psコマンドで確認すると、以下のような表示が。
まさか、こいつ…。
と思って vim で開いたら、
こうすると、現在の設定が一覧表示されます。
$ sudo firewall-cmd --list-all-zone
httpd を永続的に追加するにはこうします。(若干、--permanent オプションにハマる)
$ sudo firewall-cmd --permanent --add-service=http --zone=public
3. gccにGO言語のコンパイラあるのね
gcc-go ってパッケージがあるんだー。知らなかったよ。
どうでも良いかもしれない、気が付いた事を。
1. firewalld ってもしかして Pythonスクリプト?
psコマンドで確認すると、以下のような表示が。
root 2726 1 0 20:17 ? 00:00:01 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
まさか、こいつ…。
と思って vim で開いたら、
#!/usr/bin/python -Es
# -*- coding: utf-8 -*-
ではじまってるんだが。
時間があったら見てみよう。
2. httpdを公開するために
firewalld が iptables の設定を管理するようになったので、設定方法が変わっています。
デフォルトでは ssh しか許可されてません。
httpd を許可するためには、firewalld が動作中に firewall-cmd コマンドで設定する必要があります。こうすると、現在の設定が一覧表示されます。
$ sudo firewall-cmd --list-all-zone
httpd を永続的に追加するにはこうします。(若干、--permanent オプションにハマる)
$ sudo firewall-cmd --permanent --add-service=http --zone=public
3. gccにGO言語のコンパイラあるのね
gcc-go ってパッケージがあるんだー。知らなかったよ。
2014年7月12日土曜日
さっそくMicrosoftAzureでCentOS7を動かしてみる
7月7日に公開になったCentOS7ですが、各方面で情報が出回っているかと思います。
http://centos.org
特徴としては、
ってところでしょうか。
※なお、私が作ったCentOS7のVMDepotイメージはこちらで。
http://vmdepot.msopentech.com/Vhd/Show?vhdId=42491&version=43576
MicrosoftAzureでCentOS7を動かすには、自分でHyper-Vからイメージをアップロードする必要があります。
必要なものは以下の通り。
基本的には、以下のリンクの通りで良いのですが、
http://www.atmarkit.co.jp/ait/articles/1405/29/news148.html
Azureで動作させるためのVHDには条件があり、サイズ固定で127GB以下である必要がありますのでご注意ください。
2. WALinuxAgentのインストール
インストールが終わったら、WALinuxAgentのインストールを行います。
以下のサイトからgitで取得します。(gitコマンドはyumでインストールできます)
https://github.com/Azure/WALinuxAgent
中身はPythonですので、以下のようにインストールを。
$ cd WALinuxAgent
$ sudo python setup.py install
ここでインストールされるのですが、systemd向けのスクリプトがありませんので、別途導入します。
$ sudo cp distro/systemd/waagent.service /etc/systemd/system/
$ sudo systemctl enable waagent
$ sudo systemctl start waagent
3. 設定の初期化
Azureでマイイメージとして利用するために、以下のように初期化を行います。
$ sudo waagent -deprovision
このコマンドは以下の処理を行います。
4. Azureストレージへのアップロード
仮想マシンを停止したら、作成したVHDをAzureストレージにPageBlobとしてアップロードします。
アップロード方法はPageBlobでアップロード可能であれば何でもOKです。
5. マイイメージの作成
Azureポータルにログインして、アップロードしたVHDファイルからイメージを作成します。
仮想マシン>イメージ>作成、ですね。
以下のように入力してイメージを作成すると、仮想マシン作成時にアップロードしたイメージから仮想マシンが作成できます。
6. 仮想マシンを作成して遊ぶ
あとは仮想マシンを作るだけです。
http://centos.org
特徴としては、
- Kernelが3.10.0
- Apacheが2.4系に
- systemdの採用(今までのinitではない)
- firewalldの採用(iptablesの設定を管理する)
- MariaDBの採用(MySQLの代替)
ってところでしょうか。
※なお、私が作ったCentOS7のVMDepotイメージはこちらで。
http://vmdepot.msopentech.com/Vhd/Show?vhdId=42491&version=43576
MicrosoftAzureでCentOS7を動かすには、自分でHyper-Vからイメージをアップロードする必要があります。
必要なものは以下の通り。
- Hyper-V(Windows8のものでOK)
- Azureストレージにアップロードするツール(私はCloudBerryExplorerでやりました)
- MicrosoftAzureサブスクリプション
- WALinuxAgent(githubより取得)
ハマるところだけいくつか解説します。
1. CentOS7をHyper-V上の仮想マシンにインストール
基本的には、以下のリンクの通りで良いのですが、
http://www.atmarkit.co.jp/ait/articles/1405/29/news148.html
Azureで動作させるためのVHDには条件があり、サイズ固定で127GB以下である必要がありますのでご注意ください。
2. WALinuxAgentのインストール
インストールが終わったら、WALinuxAgentのインストールを行います。
以下のサイトからgitで取得します。(gitコマンドはyumでインストールできます)
https://github.com/Azure/WALinuxAgent
中身はPythonですので、以下のようにインストールを。
$ cd WALinuxAgent
$ sudo python setup.py install
ここでインストールされるのですが、systemd向けのスクリプトがありませんので、別途導入します。
$ sudo cp distro/systemd/waagent.service /etc/systemd/system/
$ sudo systemctl enable waagent
$ sudo systemctl start waagent
3. 設定の初期化
Azureでマイイメージとして利用するために、以下のように初期化を行います。
$ sudo waagent -deprovision
このコマンドは以下の処理を行います。
- waagentの停止
- SSHホストキーのペアを削除
- DHCPリースの削除
- resolv.confの削除
- rootパスワードの削除
4. Azureストレージへのアップロード
仮想マシンを停止したら、作成したVHDをAzureストレージにPageBlobとしてアップロードします。
アップロード方法はPageBlobでアップロード可能であれば何でもOKです。
5. マイイメージの作成
Azureポータルにログインして、アップロードしたVHDファイルからイメージを作成します。
仮想マシン>イメージ>作成、ですね。
以下のように入力してイメージを作成すると、仮想マシン作成時にアップロードしたイメージから仮想マシンが作成できます。
6. 仮想マシンを作成して遊ぶ
あとは仮想マシンを作るだけです。
登録:
投稿 (Atom)