カテゴリー別アーカイブ: 未分類

システム開発に役立つデータ類1

 システム開発をする上で困るのにデータの調達がある。
 よく利用する物では、電話の国番号をキーにした国名データとか、都道府県コード、郵便番号データ等だが、この辺はどこででも拾える。
 困ってくるのは路線・駅情報とか、詳細な町名情報とかだけど、この辺は数百万で開発用データを売ってたりする。
 なんとかデータを安く手に入れようとするときに役に立つのが、官公庁が提供している公開データ。

 最近利用したのが、国交省の位置参照情報ダウンロードサービスと言うヤツ。
 ここでは全国の字町名とその座標が入ったCSVデータ集が手に入る。
 CSVを適当にデータベースに挿入してやっておくと、ある町名を選んだときに、近隣町名を求めると言った事が出来る。
 Webで地図を扱う場合、GoogleMAP APIを利用することが多いけど、こういった機能が無い(地図表示を見ればポイントの周辺の地名が表示されているけど、これを取得する方法がない)ので、ピックされたポイントの座標から、+-LAT/LNGの範囲を求める事でざっくりと近隣の字町名が得られる(先のデータベースにWHERE LAT BETWEEN point_lat-distance AND point_lat+distance AND LNG BETWEEN point_lng-distance AND point_lng+distance みたいにしてみる)

(232)


カテゴリー: 未分類 | コメントをどうぞ

ネットワーク帯域制御 – CISCO ルーター

 CISCOルータを使って帯域制限を行う話。
 固定IPのプロバイダ契約して自宅にもサーバを構築してウェブアプリなどをデプロイしているのだけど、お客さんがいっぱい来ると、プロバイダに解約されたりしてしまう事がある。
 で、自宅のサーバ用に使っているCISCO1812Jルータでは、帯域制御を行うことが出来るので、これを使って対応する。
 通常のアクセス用には別のルータで構築してあるので、単純にこのCISCOの帯域を制限すればOK。
>en
#conf t
#policy-map shape
#class class-default
#shape peak 1024000
ctrl+z
#int FastEthernet0
#service-policy output shape

シェーピング(帯域制御)用にshapeと言う名前のポリシーマップを行う
ポリシーのクラスにはclass-default(全てのパケットに合致)を指定
ポリシーにピーク1Mbpsのシェーピングを指定する
PPPoEに使っているインターフェイスを指定して、帯域制限ポリシーを外向きにサービス登録している(PPPoEのリンクに設定しても動作しなかった)

 今回の外向きシェーピングは、単純な回線帯域制御の他、回線で絞っておくことでサーバの負荷を軽減する目的もある。

(1055)


カテゴリー: 未分類 | コメントをどうぞ

さくらVPSにWindowsServerを導入する

さくらVPSへのWindows導入方法の自分メモ
VMwareでVM(以下VMwin)を作る。 HDDはIDEで16GB位まで、CPUコアは2個で設定しておく。
VMwinを起動してWindowsServer(今回は2003R2)のメディアでブートして導入する。 導入後は、PRO 1000 MTのドライバをダウンロードしてVMwinのデスクトップに置いておく。 おまじないをしておく↓

  • 7010IDE.reg
  • Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\pci#ven_8086&dev_7010]
    “ClassGUID”=”{4D36E96A-E325-11CE-BFC1-08002BE10318}”
    “Service”=”intelide”

    これは、さくらVPSの仮想マシン環境のIDEコントローラがVEN8086&DEV7010の識別子のデバイスになっているが、VMwareは異なる識別子のデバイスを使っているので、いざVPSで起動しようとするとブートデバイスを見失ってブルースクリーンになるのを防ぐのに必要。 7010IDE.regファイルに保存して、VMwinで開いてレジストリ登録したらシャットダウンする。
    ※認証はVPSに乗せたあとに行う(ハードウェア構成が変わるから、そのままでは本番に乗せたあとに電話認証になってしまう)

    さくらのコントロールパネルから、カスタムOSインストールを選び、Debian 6 i386を導入する(以下VPStemp)
    パーティションの切り分けはマニュアルで、前方に非マウントExt3パーティションをVMwinのディスクサイズに合わせて切って、残りもExt3で/(root)マウントに設定してインストール。
    proftpd, vsftpd等のftpdを導入して動かしておいて、一時別作業。

    VMwareに作業用VM(VMLinux)を作る。 HDDサイズはSCSIモードで、容量は3GBもあれば事足りる。
    VMLinuxを起動して適当なLinuxディストリを導入してシャットダウンする。
    VM管理でVMLinuxにHDD追加を選択して、既存のイメージ(VMwinのディスク)をIDEで追加して起動する。
    fdisk -lコマンドでNTFSの場所を確認する(/dev/hda1になっているはず)
    /dev/hda1であれば、

    dd if=/dev/hda|gzip -c >winimg.gz

    で、HDDイメージを吸い出す(完了すればVMwinは不要)
    吸い出したイメージをftpでVPStempにアップロードする(こちらも完了すればVMLinuxは不要)

    VPStempでアップされたファイルをディスクに流し込む。

    gzip -dc <winimg.gz|dd of=/dev/sda

    ddが完了したらrebootする。

    WindowsServerが起動するので、VNCで入ってPRO1000MTドライバを導入、管理用リモートデスクトップの設定をしてやれば、あとはリモートデスクトップで快適に管理可能。
    (利用可能メモリ350MB程度確保できていたので、ちょっとしたasp.netアプリを動かすには十分そうだ)

    (623)


    カテゴリー: 未分類 | 1件のコメント

    さくらのVPSを併用してみた

     DTIのVPS 1980円コースは、グローバルIPが4個貰えるのが便利で使っているのだが、単純なパフォーマンス的にはさくらの980円コースの方が良いというのは色々な場所でのベンチ結果。
     そんなわけで、どうせならさくらの3980円コースあたり(保証メモリ4GB)に移行したい感じもあるんだけど、複数IPがほしいので併用しようかと思う。
     さくらを使うスペック面以外の理由が、裏技でWindowsサーバを導入出来ること(15GBくらいのパーティションにWindowsをインストールしてddで吸い出した物を用意して、VPSで前方に15GBくらいのブートパーティション、後方に小さなシステムパーティションを作ってLinuxを導入して、そのLinuxから先頭にddしてやると再起動後はddしたイメージのOSが起動できる)
     さくらVPSはKVMと言うシステムで完全仮想化しているので、基本的にどんなAT機用OSも動くんだけど、ServersMan@VPSはOpenVZと言うシステムで準仮想化(導入OS側にも仮想化の対応が必要)なので、自由なOS導入が出来ない。 と言うか、ServersMan@VPSの準仮想化では、NFSやSambaのようなOS機能に深く影響するサービスも動かない。
     WindowsServer2003位なら色々削ればIISを立てても980円コースで何とかなる(先日、2008R2に移行したため、2003のライセンスが浮いているので活用できる)
     IISが動けば、ホームサーバで公開していたASPアプリを移せるので、自宅の電気代が減るので何となく良い感じ。
     しかし、さくらのVPSの管理コンソールであるTightVNCはJP106キーボードでコンフィギュレーションされているので、英語キーボードしか持っていないと文字が化けまくってまともに操作できないのが難点(おとなしくJP106を買ってくるか、管理用リモートデスクトップを使えばOK) シリアルコンソールを使うとJP106の呪縛から解かれるので、最初のLinux操作はシリアルコンソールで済ませるのがおすすめ。

    (239)


    カテゴリー: 未分類 | コメントをどうぞ