ubuntu 12.04 beta2で。

ubuntu 12.04でのopenstack環境構築の予習ってことでbeta2を試してみました。

インストーラーの画面に選択肢としてでてきました。

おー。
こりゃらくちん。

と思いきや。

ぎゃー

まぁ、とりあえず、nova-*とかはインストールされていたので、rabbitmqとかglanceとかmysqlとかの設定を元々作ってあったホストに向けてみたら

[bash]
AVAILABILITYZONE nova available
AVAILABILITYZONE |- ubuntu1204beta2
AVAILABILITYZONE | |- nova-cert enabled :-) 2012-04-22 21:47:37
AVAILABILITYZONE | |- nova-scheduler enabled :-) 2012-04-22 21:47:37
AVAILABILITYZONE | |- nova-compute enabled :-) 2012-04-22 21:47:38
AVAILABILITYZONE | |- nova-network enabled :-) 2012-04-22 21:47:37
[/bash]

認識はされた。

認識はされたけど、インスタンスを配置しようとするとglanceで認証がうまくいっていないようだ。

nova.confは余り変わっていないけど、api-paste.iniがわりと変わってました。
keystoneの認証もなんか変わってる?

まぁ、やっぱり正式リリースされてからにしよう・・・。

VPSぷち比較

最近またVPSが熱いですなぁ。
熱いよね?

さくらのVPSは昔からよかったけど最近のリニューアルでまたよくなりました。

お名前.comのVPSにもVZだけではなくKVMも登場しました。
HDBenchのスコアはさくらよりも良いし、値段もお手頃です。
ISOアップロードが可能で好きなOSをインストールできます。

cloudcoreは、いいなこれ!と思ったけどキャンペーンなしの月額にするととても高いので却下。

逆にHDD容量がお得で使ってたsaasesの良さが霞みました。ここは思いっきって同じ値段で3倍くらいの容量にしてください。
と思ってたら、プラン改定によりGT2プランでHDD 5円/1GBとなりました。安い。
回線も補強するって書いてたから前よりよくなっているかもですね。

joesクラウドもKVMで安くやるようですね。

というわけで、ちょっとメモってみました。

VPSメモ

ちなみに、実験ということでflask + gunicorn + supervisordで動いています。

内容に関しては、以下のサイトの方がすっきりして見やすいし、カタログ以外の情報もあるのでおすすめです。

VPS比較 SaaSes, さくら, ServersMan@VPS

openstack vlanmanagerで動かしてみた。

catalyst 3500 XLを貸してもらっちゃっいました。
初めてのシリアルコンソールでの設定にうきうきしながら、以前に設定したOpenStackをVlanManagerで設定してみました。

14. OpenStack VlanManager / catalyst 3500 XL — Installing OpenStack essex-4 1 documentation

たぶん動いた気がします・・・。スイッチの設定があってるのかさっぱり・・・。
catalyst3500の中古の値段を見たら割と安いから1こほしいなーと思ったけど、起動しているとすごくうるさいし、なんか暑いので、もっと静かで暑くないのを探そう・・・。

Pythonプロフェッショナルプログラミング

Pythonプロフェッショナルプログラミング を読みました。

昨年1年かけて色々なサイトや本を見て覚えたことが1冊にまとまっている感じでした。
深いことや目新しいことは書いていなかったけど、pythonを使って(主に)ウェブアプリを作ろうとしたときに、頭に入っていると便利なことが一通り載っています。

virtualenvでの環境の構築
mercurialでソース管理
redmineでプロジェクト(チケット)管理
JenkinsでCI
sphinxでのドキュメント
nginxとgunicornで実稼働などなど

広く浅く、でも実用的な話が満載です。

これからpythonを使って何かするには読む価値ありです。

それにしてもビープラウドって会社は楽しそうだねー。

ghc-7.0.4とhaskell-platformのインストール

ghc-7.0.4がよいというコメントを頂いたので、試してみました。
とりあえず、入れてみただけですが、すんなりと入れることができました。
環境はさくらのクラウドのテンプレートから Scientific Linux release 6.1 (Carbon) です。
さくらのクラウドやVPSのテンプレートはgccやmakeは最初からインストール済だった気もする。
ライブラリは gmp-devel zlib-devel freeglut-develがあればmakeできたけど、「
Haskell環境構築:Linux – Google グループ」によると以下の準備に書いたものが必要そうです。

準備

[bash]
sudo yum install gcc make gmp-devel libffi-devel zlib-devel mesa-libGL-devel mesa-libGLU-devel freeglut-devel
[/bash]

isntall ghc

[bash]
cd
mkdir src
cd src
wget http://www.haskell.org/ghc/dist/7.0.4/ghc-7.0.4-x86_64-unknown-linux.tar.bz2
tar jxf ghc-7.0.4-x86_64-unknown-linux.tar.bz2
cd ghc-7.0.4
./configure
make install
[/bash]

install haskell platform

[bash]

cd ~/src
wget http://lambda.haskell.org/platform/download/2011.4.0.0/haskell-platform-2011.4.0.0.tar.gz
tar zxf haskell-platform-2011.4.0.0.tar.gz
cd haskell-platform-2011.4.0.0
./configure
make
make install
[/bash]

cabal

[bash]
cabal update
[/bash]

Welcome to sphinxjp.themes.impressjs’s documentation

次に何かで話す機会があればコレ使ってみよう@v@

[bash]
pip install sphinxjp.themes.impressjs
mkdir test
cd test
sphinx-quickstart
vi conf.py
[/bash]
[python]
extensions = [‘sphinxjp.themecore’]
html_theme = ‘impressjs’
html_use_index = False
[/python]
[bash]
vi index.rst
[/bash]
[text]
.. This is sample documentation file for sphinxjp.themes.impressjs.

======================================================
Welcome to sphinxjp.themes.impressjs’s documentation
======================================================

.. impressjs:: title
:data-x: 0
:data-y: 0
:data-z: -1000
:data-rotate-x: -90
:data-scale: 4

*sphinxjp.themes.impressjs*

.. impressjs:: features
:data-x: 1000
:data-y: 800
:data-rotate: 180
:data-rotate-y: -30
:data-scale: 1

*Feature:*

* provide “impressjs“ directive for impress.js presentaion control
* provide “impressjs“ presentation theme for render HTML document

.. impressjs:: installation
:data-x: -1000
:data-y: -800
:data-rotate-y: 30
:data-scale: 1

*Install:*

.. code-block:: bash

$ easy_install sphinxjp.themes.impressjs

.. impressjs:: setup
:data-x: 0
:data-y: -800
:data-z: -200
:data-scale: 1

*setup your* “conf.py“ *with:*

.. code-block:: python

extensions = [‘sphinxjp.themecore’]
html_theme = ‘sphinxjp.themes.impressjs’
html_use_index = False

.. impressjs:: make
:data-x: 1000
:data-y: -800
:data-rotate-y: -30
:data-scale: 1

*and run:*

.. code-block:: bash

$ make html

then you’ll get this page’s style HTML output. Enjoy!

.. impressjs:: requirements
:data-x: 1000
:data-y: 0
:data-rotate: 90
:data-rotate-y: -30
:data-scale: 1

*requirement:*

Python 2.4 or later (not support 3.x)

Sphinx 1.0.x or later

.. impressjs:: license
:data-x: -1000
:data-y: 0
:data-rotate: -90
:data-rotate-y: 30
:data-scale: 1

*license:*

Licensed under the MIT_ license.

See LICENSE file in details.

.. impressjs:: links
:data-x: -1000
:data-y: 800
:data-rotate: -180
:data-rotate-y: 30
:data-scale: 1

*Links:*

All codes on Github:

repository_, downloads_, issues_

Feel free to fork them on Github!

.. impressjs:: contents
:data-x: 0
:data-y: 0
:data-z: -200
:data-scale: 1

.. toctree::

options
history
authors

.. impressjs:: overview
:data-x: 0
:data-y: 0
:data-scale: 3

.. content

.. _mit: http://www.opensource.org/licenses/mit-license.php
.. _repository: https://github.com/shkumagai/sphinxjp.themes.impressjs
.. _downloads: https://github.com/shkumagai/sphinxjp.themes.impressjs/downloads
.. _issues: https://github.com/shkumagai/sphinxjp.themes.impressjs/issues

.. END
[/text]
[bash]
make html
open _build/html/index.html
[/bash]

Welcome to sphinxjp.themes.impressjs’s documentation
sphinxjp.themes.impressjs 0.1.2 : Python Package Index
impress.js | presentation tool based on the power of CSS3 transforms and transitions in modern browsers | by Bartek Szopka @bartaz

sudoersファイルを書き間違えてsudoできなくなる

openstackを設定するのにsudoers.dを書いてたんですけど、まちがってdevstackのstack.shを動かしてしまったくらいのタイミングで、下のような感じになってしまい、同じ定義を2回しようとしてるよ、と怒られてsudoできなくなりました。

[bash]
#includedir /etc/sudoers.d
#includedir /etc/sudoers.d
[/bash]

ちなみにこの#はコメントではないようです。
sudo の設定は visudo を使わずに sudoers.d に書く

ここで、rootにパスワードが設定してあれば、suできるんですが、そうでない場合、sudoできなくて終わります。
(終わるよね? 他に方法ある?)

で、終わるわけにはいかないので、起動ディスクを使ってsudoersを修正しました。

#. ubuntu live cd で起動する。
#. インストールせずに試す、で起動。
#. gnome-terminal
#. sudo apt-get install mdadm lvm2
#. あとはお好きに。

うちのはmdでraidにしてあったので、適当にmd0を作って、

sudo mdadm –assemble /dev/md0 /dev/sdc2 /dev/sdd2
sudo lvscan
sudo mount /dev/VolGroup00/LogVol01 /mnt
# sudoerなどを編集
sudo umount /mnt

# 本当はこれをしたいのだけど、失敗する。lvmが動いてるから??
# sudo mdadm –stop /dev/md0

はじめてのhaskell Text.Parsec.Stringがない

WEB+DB PRESS vol.67に入門関数プログラミングという記事があったので買って読んでみました。

まずはサンプルコードを試すのにhaskell環境の準備ですが、centosについては特に記述がなかったので、yum search haskellしてでてきた ghcというパッケージをインストールしました。
順調に動かすことができたのですが、csv.hsを読み込んだところで、こんなエラーがでました。

[code language=”bash”]
GHCi, version 6.10.4: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim … linking … done.
Loading package integer … linking … done.
Loading package base … linking … done.

csv.hs:3:7:
Could not find module `Text.Parsec.String’:
Use -v to see a list of the files searched for.
Failed, modules loaded: none.
Prelude>

[/code]

Text.Parsec.Stringがないって言ってる感じです。

きっと、このバージョンにはText.Parsec.Stringというライブラリがないのでしょう。よーし。きっと最新版を入れれば解決だ。

続きを読む

OpenStack essex-4 インストール

今年に入って、はや3ヶ月が経とうとしているわけですが、やっとOpenStackが動いてきました。。。

というわけで、ある程度まとまったので公開しておきます。

-> OpenStack essex-4 インストール手順 — Installing OpenStack essex-4 1 documentation

ベースは、OpenStack インストール手順のようなもの — 2done.orgDevStack – Deploying OpenStack for Developers です。

今回は色々と理解を深められればと、githubのソースから入れたり、upstartを作ったりしていますが、単に動かすだけなら間違いなく、DevStackでいいと思います。
このやり方だと環境がゴミだらけになります。。。

[追記]
少し更新しました。
まだまだうまく動かないところがありますが、もうちょっとでEssexやubuntu12.04LTSがリリースになるので、それまではぼけーっとしてます。