2013-01-01から1年間の記事一覧
前回、次のような流れを自動化するという話をしました。(1) 上記のカスタマイズスクリプトを渡してDBサーバーを起動する。 (2) DBサーバー内のゲストOSで、DBのセットアップが終わるのを待つ。 (3) DBサーバーに割り当てられたIPを取得する。 (4) Webサーバ…
参考資料 CloudFormation 詳細 -ほぼ週刊AWSマイスターシリーズ第6回 Heatとは? HeatはAWSのCloudFormation的な仕組みをOpenStack上で実現するコンポーネントです。単一インスタンスの自動セットアップであれば、カスタマイズスクリプト(UserData)に任意…
何の話かというと OpenStackのPython用Client Libraryは、pydoc程度しかドキュメントがなくて困っていたので、pydocから見える情報をベースにして(勘と経験で)利用方法の参考になりそうなサンプルコードを作ってみました。それぞれのクライアントは、「Cli…
何の話かというと LevelDBというのは、組み込み型のKeyValue Storeです。SQLiteのような感じでデーモンを立ち上げずにローカルファイルシステムを使って、KeyValue Storeが利用できます。これをローカルファイルシステムではなくて、GlusterFSのボリュームで…
I created a module with which you can use LevelDB[1] over GlusterFS _without_ FUSE client. This module uses libgfapi[2] which is a native API library for GlsuterFS. It allows applications to bypass the FUSE layer and access GlusterFS volum…
libgfapiとは こちらの記事の図1にあるように、アプリケーションから直接にGlusterFSのボリュームにアクセスするためのAPIを提供するライブラリです。FUSEマウントせずに、直接にボリュームにアクセスできるので性能向上が期待できます。LevelDBをGlusterFS…
何の話かというと RHEL6では、tmpfsに対して、xattr(拡張ファイル属性)が利用できません。正確に言うと、security.selinuxなど特定の属性だけが使えて、user.*やtrusted.*などの一般的な属性が使えません。アップストリームでは、3.0カーネルで、一般的なx…
何の話かというと ここの説明にあるように、Keystoneが発行するトークンには、「Unscoped Token」と「Scoped Token」があります。流れとしては、最初に、UserID/Password認証で「Unscoped Token」を取得して、その後は、Unscoped Tokenを使って、自分のテナ…
Fedora 18のサーバーデスクトップ画面をVNC経由で表示して、virt-managerを使用する手順です。KVMの仮想マシンが起動しているとディスプレイ番号が奪われている場合があるので、仮想マシンはすべて停止した状態で作業してください。まずは、Fedora 18を「Gno…
某所の「すごいHaskell本」輪読会で「第12章モノイド」を読む予定があり、予習しています。第12章の中で、「Foldableクラスでは、foldMapを用意すれば、foldl/foldrが使えるようになる」との説明があるのですが、foldMapからfoldl/foldrを構成する具体的な方…
変更履歴 2013/12/30 仮想マシンでIntel-VTを有効化する手順を追加 Nested KVMを利用して、1台のサーバで、マルチノード構成のRDO(Grizzly)を構築する機会があったので手順を残しておきます。「最短手順でRDO(Grizzly)のデモ環境を構築」で使用したquickrdo…
構築するデモ環境の全体像 物理NICを2個持つサーバーを用意して、両方のNICを同一のパブリックネットワークに接続します。em1にはIPアドレスを割り当てて、外部から管理接続する際に使用します。SSHでログインしたり、WebブラウザでHorizonを使用する際のIP…
先のエントリで、直感的な憶測から『「Monadプローブ結合方式」で、ZipListの演算を実現することはできません』と書いたのですが、本当に不可能なのかじっくり考えてみました。実は、工夫すれば、MonadからZipListを構成できる気がしてきました。。。。(や…
何の話かというと ほぼ独り言のエントリですが。。。。昨日、某所の「すごいHaskell」輪読会に参加して、Applicative Functorの章を読みました。本の構成としては、Monadより先にApplicative Functorを定義して、その後の章で、Applicative Functorの拡張概…
・・・というと、「それってetckeeperでできるよ」という返答が高確率で返ってくるのですが、etckeeperの場合は、/etc以下を直接、バージョン管理システムの管理対象にして、システム管理者が意識的にコミットする形になります。そうではなくて、たとえば、…
「Systemd入門(4) - serviceタイプUnitの設定ファイル」で、[Service]セクションのオプション「PrivateTmp」を紹介しました。実はこの他にも、ファイルシステムのセキュリティ保護を図るオプションがあります。今回は、これらオプションの紹介に加えて、それ…
この連載では、Fedora 17での実装をベースとして、systemdの考え方や仕組み、利用方法を説明します。今後出てくる予定のRHEL7での実装とは異なる部分があるかも知れませんが、その点はご了承ください。今回は、serviceタイプのUnitについて、設定ファイルの…
この連載では、Fedora 17での実装をベースとして、systemdの考え方や仕組み、利用方法を説明します。今後出てくる予定のRHEL7での実装とは異なる部分があるかも知れませんが、その点はご了承ください。今回は、表題の小ネタを2つお届けします。 cgroups syst…
この連載では、Fedora 17での実装をベースとして、systemdの考え方や仕組み、利用方法を説明します。今後出てくる予定のRHEL7での実装とは異なる部分があるかも知れませんが、その点はご了承ください。前回は、systemdの基本概念となるUnitの説明をしました…
Linuxの起動処理は、これまでinit/upstartと呼ばれる仕組みで行われていました。Red Hat Enterprise Linux 7 (RHEL7)では、これが、systemdと呼ばれるまったく新しい仕組みに置き換わります。Fedoraでは、すでに先行してsystemdが採用されていますが、この連…
[参考文献] Haskell/圏論 カテゴリーとは? 「カテゴリー」は、「集合と写像」の概念をより抽象化(簡単化)したものです。おもむろに、図1のように、いくつかの●と、●の間の矢印が集まった図式を考えてみます。 図1 カテゴリーのイメージそれぞれの●は、「a…
2013/08/21追記 技術評論社のサイトに書籍紹介ページができました。目次とサンプルページがありますので、こちらも参照ください。 「『独習Linux専科』サーバ構築/運用/管理 ―― あなたに伝えたい技と知恵と鉄則」の出版が決まりました。今回は、構想段階にお…
A new word "Cloud OS" is floating around these days. If you interpret it as a "system to operate computing resources in the cloud", it makes some sense to me. However, it gives me an impression that there could be more direct comparison be…
自宅のデスクトップをFedora19にしたら、CPU温度を表示するgnome-extentionが使えなくなって悲しかったので、作りました。前提パッケージは多分この程度。 # yum install lm_sensors tkinter tix見た目はこんな感じ。本体は以下。 #!/usr/bin/python # -*- c…
2013/11/02 この記事の内容は古くなっている恐れがあります。複数ノード環境の構築手順については、こちらを参照ください。 「RDOデモ環境を確実に構築する手順」で紹介したdemostackを拡張して、複数ノード構成に対応しました。最初に、Nova Compute以外の…
2013/10/24:より簡単に構築したい方は、こちらの記事も参照ください。 最短手順でRDO(Grizzly)のデモ環境を構築 こちらにRDOのデモ環境を構築した際の手順メモがありますが、なかなか一筋縄ではいきません。そこで、できるだけ手順をシンプルするためのツー…
Note: I have two problems in my setup. (2013/06/06) metadata-agent doesn't work well in my setup. This looks the same problem with this. Resolved with Bug 972239 - root.conf.helper should be replaced by get_root_helper. dnsmasq for the sec…
GlusterFS configuration example Now let's try a little bit more practical challenge. I will show a sample plugin to configure GlusterFS storage nodes. The following is the general configuration steps of GlusterFS storage cluster.1) Install…
Using Puppet modules In the previous example, I used the simple manifest(puppet/templates/motd.pp) which didn't need any additional modules. But in general, Puppet manifests are associated with modules, self-contained bundles of code and d…
Global options I'd like to add my first working plugin which configures "/etc/motd" of the target server. This has three options:1) A switch to enable/disable the plugin. 2) IP address of the target server. (Default is localhost.) 3) One l…