クラウドインフラ構築記

現在AWSの構築支援に携わっております。今注視しているのは、GKE、BigQuery、Google Dataflowなどサービスを展開しているGoolge Cloud Platformです。

2013年4月29日
から hiruta
api.cloudfoundry.comへのphpアプリケーションのデプロイ はコメントを受け付けていません

api.cloudfoundry.comへのphpアプリケーションのデプロイ

仮想マシン内に構築したCloudfoundryでは、wordpressをデプロイできるのだが、本家の「api.cloudfoundry.com」だと

Unknown framework 「php」となり、デプロイできない。Frameworkにphpを対応していなそう。redmineをデプロイしようとしても、「too large」と怒られてします

 git clone git://github.com/phpfog/af-sample-wordpress.git

ローカルのubuntu server 10には、以下コマンドで一発で構築完了。ただし、PCが途中でスリープしたりすると、ビルドが失敗してしまう場合があります。

$ bash < <(curl -s -k -B https://raw.github.com/cloudfoundry/vcap/master/dev_setup/bin/vcap_dev_setup)

AppFogを試しに使ってみたところ、問題なくredmineをデプロイできました。

2013年4月28日
から hiruta
クラウド・専用サーバーのハイブリット接続。 はコメントを受け付けていません

クラウド・専用サーバーのハイブリット接続。

専用サーバーだけで、WEBサーバー、ストレージ、DBサーバーすべてを賄うには、現在の大容量コンテンツに対応するには、コスト(ロードバランサー、帯域、サーバースペック)から難しくなりつつある。

専用サーバーサービスだと、スペックを柔軟に増設が行えない。

専用サーバーサービスだと、トラフィックが多いときに設計すると、トラフィックが少ない場合は、持て余してしまう。

ロードバランサーも高価。

クラウドサービスだと、スペックの上下が柔軟に行え、(ソフト)ロードバランサーも安価で利用できる。

フロントエンドに、クラウドサーバー(PaaS、laaS)、バックエンド(DB)に、専用サーバー、ストレージは、AmazonS3ようなストレージサービスをうまく組み合わせてハイブリット構成を検討する必要があります。

2013年4月23日
から hiruta
0件のコメント

第7回 NTTコミュニケーションズ Cloudn(クラウド・エヌ)勉強会

本日の「第7回 NTTコミュニケーションズ Cloudn(クラウド・エヌ)勉強会」に参加しました。

3月にリリースされた新機能の紹介、今後の展開

日本DCに新リージョン追加!月額かかるコストにあるところまでで抑えることができる

LBA、AutoScalling、Zone分散

専用サーバーでLBAを実現すると高価な機器が必要だが、クラウドの場合、ロードバランサー機能を手軽に構築できる。Cloudnの場合、AWSのAPI仕様にできるだけ準拠するようになっており、AWSのAPIコマンドツールで、LBA生成、LBAに仮想マシンをひもづける、オートスケールの設定などを行うことができる。elb-create-lb、elb-register-instances-with-lb、as-create-launch-config、as-create-auto-scalling-groupなどのコマンドを利用することがでいます。Cloudnの仮想化技術はKVMを利用。

Cloudn RDB

MySQL 5.5ベース。RDBはまだ発展途上。バックアップ機能などは今後実装される。

CloudfoundryベースのPaaS

cloudfoundryをコアに使用して、WEBベースのインターフェースなどを開発。CPU、メモリの変更などをWEBベースで行える。本家のcloudfoundryでは、vmcコマンドで行う必要があります。勉強会の中でredmineをデプロイするデモをありました。

cloudfoundryにアカウントを取得してあったので、redmineをデプロイトライ中。あまり大きいと、「HTTP Error 413 Request entity too large」となる。アップロード方法間違っているのか!?

 

2013年4月21日
から hiruta
phpでabstractクラスを使う場合 はコメントを受け付けていません

phpでabstractクラスを使う場合

phpでabstractクラスで以下のように行うと、arrayがViewクラスに渡らない症状がありました。以下のようにサブクラスにコンストラクタを作成して、親クラスのコンストラクタを呼び出しても同じでした。


class SubView  exxtends View
{
public function __construct($array = NULL)
 {
parent::__construct($array );
}

abstract class View

{

public function __construct($array = NULL)
 {
 $this->smarty = new Smarty;

$this->smarty->assign('yobi',$array['yobi']);

}


$view = new SubView($array);

2013年4月21日
から hiruta
jqueryからラジオボタンに値を設定する方法について はコメントを受け付けていません

jqueryからラジオボタンに値を設定する方法について

jqueryでラジオボタンの値を設定する場合、以下ではうまくいかない。


$("input[name='font_color']").val('2');

以下のようにするとjquery側からラジオボタンに設定することができました。下記例は、「2」の値のラジオボタンを設定する例になります。

<pre id="line1">$("input[name='font_color']")
    .filter(function(){ return ($(this).val() == '2')})
    .attr("checked", true);

また、selectとradioでは値の設定方法も変わります。

2013年4月20日
から hiruta
0件のコメント

Textの縦方向のセンタリング

javafx.scene.text.Textだと縦方向のセンタリングが出来なかったのですが、javafx.scene.control.Labelに替えることで、センタリングが解決。


scrollingText = TextBuilder.create()
.text(space+scroll_char)
.layoutX(50)
.opacity(1)
.textOrigin(VPos.TOP)
.textAlignment(TextAlignment.JUSTIFY)
.fill(bcolor[select_color_index])
.font(Font.font("SansSerif", FontPosture.REGULAR, 60 * getRate()))
.build();

Labelコンポーネントでも、prefHeightのプロパティを設定する必要はあります。


scrollingText = LabelBuilder.create()
 .text(space+scroll_char)
 .opacity(1)
 .prefHeight(90)
 .textAlignment(TextAlignment.CENTER)
 .style(bakcolor[select_color_index])
 .font(Font.font("SansSerif", FontPosture.REGULAR, 60 * getRate()))
 .build();

LabelとTextでは、テキスト色の設定方法が異なります。前者が、fillプロパティでColorを設定するのに対し、後者のLabelは、styleプロパティで、「-fx-text-fill: rgb(255,255,255)」のようにすることで、テキスト色を設定することができます。

 

2013年4月17日
から hiruta
クラウドサービスが続々サービスイン はコメントを受け付けていません

クラウドサービスが続々サービスイン

Amazon、さくらのクラウドだけでなく、マイクロソフト、NTTコムからもクラウドサービスが続々登場している。

Amazonのような仮想マシンを貸し出すサービスだけでなく、アプリケーション実行環境を貸し出すPaaSも最近サービスインした。ベンダーロックインを歌っており、Cloud foundryベースのPaaSでも動作が保証されています。PaaSのメリットとしては、インフラについては、サービス提供業者に任せることが可能で、アプリケーションに専念できるメリットがあります。


CloudnのlaaSはトラフィック課金がないので、月額の上限が決まっているのもよい。さくらのクラウドもそうだが。なお、Amazonの場合は、トラフィック課金があります。

近年の動画配信など大容量のコンテンツを扱うのが当たり前になっていると、専用サーバーでは、拡張性、コスト面で劣っていると思う。とあるソフトバンク系の専用サーバーサービスは帯域保証回線というものがあるが、高価な割に、利用できる帯域が少ない。現状のリッチコンテンツの配信には耐えられないと考えます。

 

 

2013年4月13日
から hiruta
SATA&IDE をUSB2.0に変換するアダプタ はコメントを受け付けていません

SATA&IDE をUSB2.0に変換するアダプタ

シリアルATAをUSB接続HDDと認識できるUSB-CVIDE2の紹介です。型番からわかるように、少し前のIDEのHDDにも対応しています。別途デバイスドライバーが不要なので、接続して直ぐ、パソコンに認識されます。

SZ77R5をSSDに換装 でもディスクコピーにも使用しましたが、一時的にSATA等のHDD、SSDを接続するのに便利なものです。ディスクコピーには必須のアイテムです。

USB接続なので、SATA3.0だとしても、USB2.0の転送速度がボトルネックになって、SATA本来の転送速度はでませんが。

2013年4月11日
から hiruta
Dropbox chooserで複数選択ができるようになっています。 はコメントを受け付けていません

Dropbox chooserで複数選択ができるようになっています。

Dropbox chooserをあるWEBアプリケーションと連携して使用していますが、いつのも間にかファイルの複数選択に対応しています。options に「multiselect : ture」とするだけでOK。

・ファイルのアップロード

・ファイルの複数選択

とここ一ヶ月で使える機能が増えています。機能が少しずつ増えているのは、クラウドのメリット。指定した拡張子しか選択できなくなって、Dropbox Chhoserがモーダルダイアログとなってくれれば、最高なんですが

APIのサポートに投げてみましたが、現状指定した拡張子をフィルタリングすることは不可能との回答を頂いた。

Thanks for writing in. The Dropbox Chooser doesn’t currently have any sort of file type filter like this available, but I’ll be sure to pass this on as feedback.(Dropboxサポートからのメールより)

2013年4月6日
から hiruta
SZ77R5のストレージをSSDに換装 はコメントを受け付けていません

SZ77R5のストレージをSSDに換装

Shuttle PC  「SZ77R5」をIntel SSD 335 Series(240GB)(¥17,000程度)に換装しました。

P1000323

PCのハードディスクスロットに固定するための部品も付属しています。ノートパソコンの場合は、固定部品は不要ですが。

Shuttle SZ77R5には、SATA2.0、SATA3.0それぞれ2ポートずつあるので、 SATA 6Gb/s(=SATA 3.0)に対応しているポートに接続。

1TBのHDDをフルにパーティションを使っていたので、EaseUS Partition Master Home Editionで、240GB以下にパーティションを切り直した。

・EaseUS Partition Master Home Edition (ダウンロードはこちら

その後、EaseUS Disk Copyで、ディスクコピーをしました(240GB)。ディスクコピーするのに1時間30分ほどかかりました。SATAインターフェースをUSBに変換するキットを利用したので、USBの転送速度の分、遅くなったかも。コピー元のディスク容量が大きいと、警告が出ますが、割り当て済のパーティションがコピー先のディスクより小さくしておけば問題ありません。

・EaseUS Disk Copy (ダウンロードはこちら

コピーしたあと、SSDでシステムを起動し、パフォーマンスをチェックしたところ、プライマリハードディスクのスコアが5.9から7.7にあがりました。ちなみに、グラフィックスの数値がやや低いのは、グラボーは使用していないため。

画像4

元のHDDをデータ用として、SSDとともに、PCに接続すると、「オンラインである他のディスクと署名が競合しているために、ディスクはオフラインです。」となり、オンライン状態にならない。MBR情報が残っているためかと思われる。MBR情報を含めて、ハードディスクの初期化を行うことで、無事認識させる(オフライン)にすることができました。

diskpartコマンドでオフラインにすることも可能のようです。記事は以下まで。

http://blog.cis1986.co.jp/?p=174