[OSM-ja] (開発者募集)OSMタイル配信サーバの開発

Hal Seki hal @ georepublic.co.jp
2013年 4月 5日 (金) 04:35:24 UTC


三浦さん
ありがとうございます。とりあえず今週末に環境インストールしてみます。

--
位置情報連動型ビジネス調査報告書2013 発売中
http://r.impressrd.jp/iil/geo2013<http://r.impressrd.jp/iil/geo-location2012>
※著者割引で20%引きになります

Georepublic Japan  代表社員/CEO 関 治之
http://georepublic.co.jp/
〒151-0071 東京都渋谷区本町3-24-14
Skype: hal_sk



2013/4/5 Yoichi Kayama <yoichi.kayama @ gmail.com>

> かやまです
>
> いろいろ勉強しなきゃ役にたたないですが、とりあえず見習いで参加させてください
>
>
> 2013年4月5日 8:36 Hiroshi Miura(@osmf) <miurahr @ osmf.jp>:
>
>>  マッパーの皆さん
>>
>> 三浦です。
>>
>> 現在、OSMタイルサーバを開発しています。日本のOSMコミュニティとして
>> 独自レンダリングを実現したいと考えています。
>>
>> 開発への参加者を募集したいと思います。
>>
>> 同時に、日本らしい地図表現を行うためのmapnikでのレンダリングスタイルを
>> 研究される方もWelcomeです。
>>
>> 開発は、github.com[*0]で行なっています。
>>
>> 名前は、キャッシュになっていますが、(最初はキャッシュの構築から開始したため)
>> OSMの独自タイル配信サーバの機能をもたせる計画です。
>>
>> 開発に興味のある方、一緒に研究しませんか。
>>
>>
>> <アーキテクチャ>
>>
>> OSMのwikiでは、apacheにmod_tile[*1]を導入し、mapnik[*3]ライブラリを使った
>> Tirex[*2]がタイル画像を生成する方法が説明されています。
>> また、DBMSには、PostGISを用いて、 osm2pgsqlツールによって最新データを
>> 取り込むようです。osmosisツールを使うことで、自動更新ができます。
>>
>> 独自タイル配信サーバの開発では、次のアーキテクチャを考えています。
>>
>> <開発ロードマップ>
>>
>> Ver 0.8
>>
>> * nginxサーバで、タイルキャッシュ機能を提供します。(DONE)
>> * リクエストのx/y/z値のチェックをおこなって不正なアクセスを
>>   抑止します。(in progress)
>> * tile.openstreetmap.orgの地域分散プログラム(CDN)へ参加可能な
>> 機能を備えます。(DONE)
>>
>> Ver 0.9
>>
>> * PostGISデータベースに日本地域のOSMデータを日次で
>>   自動更新できるようにします。(ほぼ完了)
>> * アクセス元が日本国内かどうかを判定して、独自タイルの配信を
>>    切り替えます。(done)
>> * リクエストのx/y/z値をチェックして、レンダリング対象かどうかを
>> 判定できます。(未実装)
>> * 一部タイルについて、静的タイルを配信できるようにします。(done)
>>
>> Ver 1.0
>>
>> * nginxサーバのLUA拡張を利用して、mod_tile相当を実装します。
>> * タイル生成は、Tirex[*2]で行います。
>> * 生成されたタイル画像ファイルは、ファイルシステムに格納されます。
>> * nginxサーバとTirexは、UDPソケット通信でコマンドをやり取りします。
>> * mapnikのスタイルを改良します。(アイコンとか、色とか)
>>
>> mod_tile相当とは
>> * 独自タイル生成を、リクエストに応じて、on the flyで実施します。
>> * データベースの更新にあわせて、古くなったタイル画像を削除し、
>> 再度生成されるようにします。
>> * タイル画像が古い(expire)の場合でも、レスポンスを確保するため
>> 古いタイルを返送するが、httpでの画像の有効期間を再生成に
>> 必要な時間を動的に計算して、設定します。
>> ユーザが再度表示しようとすると、新しいタイルになります。
>>
>> Ver 1.x
>>
>> * 日本らしい地図表現のバージョンアップをしていきます。
>>
>> Ver 2.0
>>
>> * Redis Key-Value-Storeを活用して、メタ情報を管理します。
>> * Redis Pub/Subを利用して、コマンドをやり取りします。
>> * Tirexを拡張して、redis pub/subに対応させます。
>> * renderd_expireを拡張して、redis pub/subに対応させます。
>> * nginx-luaから、redis pub/subを利用したコマンド利用させます。
>>
>> Ver 3.0
>>
>> * Redis KVSへタイルそのものを格納します。
>> * Redisリプリケーションやnginxリバースプロキシ、Tirex分散等により
>> 大規模サーバ構築可能にします。
>> * 更新タイルやアクセスの少ないタイルのRedis自動expire機能によって
>> DISK容量を削減可能にします。
>> * 本家レンダリングのリプレースを狙います(?)
>>
>> <実行環境>
>>
>> 環境は、Ubuntu 11.10(64bit)です。
>> Nightly buildのmapnikを使っています。[*5]
>> nginxは、nginx-extra packageを使います。
>> luaからredisデータベースへのアクセスは、OpenRestyのLua-redis[*6]
>> モジュールを使います。
>> Tirexは、ドキュメントに従ってmake debして、パッケージを導入します。[*7]
>> redis-server パッケージを導入します。
>>
>> <インストール>
>>
>> 上記実行環境を整えたあと、
>> $ git clone git://github.com/osmfj/tilecache.git
>> $ cd pkgs
>> $ sudo dpkg -i lua-nginx-redis_0.15-1_all.deb<https://github.com/osmfj/tilecache/blob/master/pkgs/lua-nginx-redis_0.15-1_all.deb>
>>    これで、redisにアクセスできる環境ができます。このパッケージは
>> Ubuntu raringからしか提供されていないので、同梱されています。
>> $ cd tilecache
>> $ (cd nginx; sudo ./install.sh)
>>   これで、nginxの設定が導入されます。サーバ名はtileになっている想定です。
>> $ cd render_expire
>> $ make
>> $ sudo make install
>>   これで、render_expireが/opt/tileserver/bin に導入されます。
>>
>>
>> [*0] https://github.com/osmfj/tilecache
>> [*1] http://wiki.openstreetmap.org/wiki/Mod_tile
>> [*2] http://wiki.openstreetmap.org/wiki/Tirex
>> [*3] http://wiki.openstreetmap.org/wiki/Mapnik
>> [*4] http://nginx.org/ja/
>> [*5] https://launchpad.net/~mapnik/+archive/nightly-trunk
>> [*6] https://github.com/agentzh/lua-resty-redis
>> [*7] http://wiki.openstreetmap.org/wiki/Tirex/Building_and_Installing
>>
>>
>>
>> --
>> Hiroshi Miura
>> OpenStreetMap Foundation Japan
>>
>> _______________________________________________
>> Talk-ja mailing list
>> Talk-ja @ openstreetmap.org
>> http://lists.openstreetmap.org/listinfo/talk-ja
>>
>>
>
> _______________________________________________
> Talk-ja mailing list
> Talk-ja @ openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-ja
>
>
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://lists.openstreetmap.org/pipermail/talk-ja/attachments/20130405/0bb450e2/attachment.html>


Talk-ja メーリングリストの案内