o2tの日記

京都でIT技術者として働くo2tの日記。phpやpythonネタが多いです。

SDNに挑戦!(ryu SDN frameworkのインストール)

仕事でSDNを理解しないといけなくなり「習うより慣れろ」の精神でSDN環境を構築しようと思い立ちました。

ryu SDN frameworkのインストール

$ sudo apt-get install python-pip
$ sudo pip install ryu

※ここでエラーが発生

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 42: ordinal not in range(128)

調べてみると、データ解析ライブラリが足りないようなので以下を追加インストール。

$ sudo apt-get install python-pandas

改めてryuをインストールしてみます。

$ sudo pip install ryu

Successfully installed ryu eventlet msgpack-python netaddr oslo.config paramiko routes webob greenlet ecdsa repoze.lru

これでインストール成功です!

透過型Proxy

透過型proxyについて調べています。

 

利用者に意識させずに(透過型)外部との通信をproxyサーバ経由にしたいのですが、そうするとSSLで問題が起きるらしいです。

 

そこで、調べてみた結果、以下のようなものを発見!

mitmproxy - home

 

名前からして(man in the middle:中間者)怪しいですが、どうなるでしょうか。

PhoneGap導入

スマートフォン向けのアプリケーション開発のため、マルチデバイスでかつHTML5の既存記述を応用できる「PhoneGap」を導入しようと思います。

環境はmacintosh OS X Mavericksです。

インストール方法

  1. node.jsをインストールします。node.jsからMac OS X Installer (.pkg)をダウンロードしてインストールして下さい。
  2. インストールできたら、Terminalで以下のコマンドを実行します。

    $ sudo npm install -g phonegap

     

  3. これでインストールできました。

拍子抜けするくらい、簡単でした。これから開発環境の整理をしたいともいます。

続報をお待ちください。

仕事で調査中の事項

備忘録。

いま仕事で調査している内容は以下のとおり。

 

デバイス管理

モバイルの日々: iOSキッティング作業の強力ツール:Apple Configurator

 

プログラミング

Python logging 各種出力ハンドラーの使い方について - Symfoware

 

クラウド構築

最新ミッドレンジモデル FAS8000シリーズとは!?|NetApp【ネットワールド】

 

Webテストの自動化

さよなら手作業・人海戦術! HTML5時代のツール「Selenium2」でWebシステムのテストを自動化 (1/2):CodeZine

調査で分かった!ITの現場「新3種の神器」 - Jenkins導入・活用法:コード更新するとテストを自動実行:ITpro

JenkinsとSeleniumでJavaScriptのテスト自動化、最初の一歩。第1回 日本Seleniumユーザーコミュニティ勉強会 - Publickey

ソフトウェアテスト: 5分でできるWebテスト自動化 - Jenkins x Selenium

 

Pythonのログ出力に困る

Pythonスクリプトを書いていますが

ログ出力に手間取っています。

 

特に、Daemonにするとうまく行きません。

いまは先達のありがたいお知恵を拝見しながらコーディングしています。

 

Python の logging 力を高める | CUBE SUGAR STORAGE

 

ある程度まとまったら、自分用のナレッジベースとして後で記載する予定です。

SDNソフトウェアスイッチがOSSで公開

NTTがOpenFlow仕様に準拠したSDNソフトウェアスイッチをオープンソースとして公開するそうです。

http://www.ntt.co.jp/news2014/1406/140606a.html

100万フロー制御ルールのサポートや10Gbpsの通信性能を実現しているそうで、データセンタや広域ネットワークでの利用を想定している模様。

 

SDNって結局なにができるのか?って人は

5分でネットがわかるシリーズ(16):5分で絶対に分かるSDN (1/5) - @IT

を読むと参考になります。

 

あと、こんなのもありました。

Ryu SDN Frameworkを活用した簡易ルータ機能の作成(1) 〜ARP Request/Reply編〜 - SDN開発エンジニアを目指した活動ブログ

 

実に楽しそうです。職場の環境を利用してテストしてみたいです。

 

MySQLでサブクエリを書いたが問題発生

以下のようなSQLMySQLで実行すると、データ件数が2万件程度なのに、Loadaverageを1以上に上げたまま帰ってこない現象に悩まされています。

select tmpAllNendo.* from (
select * from tbl2009
union all
select * from tbl2010
union all
select * from tbl2011
union all
select * from tbl2012
) as tmpAllNendo

普段はunion allは使わないのですが、今回は避けられず。

サブクエリを使って、結合結果に対してorder byをしたいんだけど。 

 

どうも、MySQLはサブクエリの処理が不得意のようです。

もう少し調べてみます。