Speicherkorridor von St-Pete
Hallo! Ich bin Mons Anderson, der Architekt der Mail.ru Cloud Solutions- Plattform , und ich werde Ihnen sagen, wie wir unseren S3-Speicher aufgebaut haben, wie er funktioniert, welche Lösungen sich als erfolgreich erwiesen haben und welche es wert wären, geändert zu werden, wenn wir dasselbe Projekt jetzt von Grund auf neu starten würden.
@Databases Meetup by Mail.ru Cloud Solutions & Tarantool. :
- Mail.ru, S3-;
- , Mail.ru Cloud Storage;
- ;
- : ;
- ;
- SSL-.
Mail.ru, S3-
S3 Mail.ru, , .
Mail.ru . storage- — 36 12–14 . , .
«» (pair). — unit . , , , , .
— , , . , , 3/2.

(pair) —
PairDB — Tarantool. , , — Tarantool, .
PairDB , , , , . , , , . PairDB — .

Pair DB:
, , , , — FileDB. , : - -, .

— Nylon, . , PairDB, FileDB. stateless-, , , FileDB , , , .

Nylon:
- . — Streamer. HTTP-: PUT, , GET, . HTTP — .
Streamer'y, Nylon PairDB, , , WebDAV .
, storage — nginx , . Streamer , , . .

Streamer:
, S3-
, , S3-. PUT . . S3. S3, , :
- — ;
- HTTP;
- — ;
- HTTP-S3 Endpoint. S3 — , .
. .
, S3 API. S3 API Amazon, XML . - , .
Nginx. SSL, , Lua (, ).
S3 Tarantool. S3 , Streamer.
Nginx + S3 API +
, S3. — . . . URL. — blob, , . : — URL, ACL ( ), — .
: , , . , : uploads chunks. .
b2b- , .
Tarantool.

S3-:
, : , .
-. , - . - : S3- , , - . , -.
, - , , S3.
Tarantool. - — 21 , , . : -, . . , , . , Token Bucket. -, , , , . S3-, .

. S3 , . : Streamer, FileDB, PairDB, Storage. .
nginx, , SSD RAM-. Tarantool, , . , 32 , Tarantool .

, , capacity (), , , , .
:
, - — .
S3- Tarantool. Tarantool, - . , API, — Tarantool, . , . .

,
, — . , .
: , , . , , . , , , . , .

, — , . .

, : , ACL. . , , , .
:
- , , ;
- , , ;
- lifecycle — , , .

, . , , , , .

, , .
, . 256 . . — , , :
f(bucket, shards) = subset
, , . map-reduce , , , . , . , , .
— , , . , :
f(object, subset) = shard
, , — .

, , . . , — , , .

— . , . , .
, . nginx, S3 API, , primary- ,

, : « , , — , ». , , URL .

Icebox , Hotbox, - . Hotbox Icebox , .
, , , , , . . .
primary-. Tarantool :
- , Hotbox;
- Tarantool ( — Icebox), ;
- , , , .
, , , , . , Hotbox, Icebox — , .
Migrating, , , , .
. API Icebox, Hotbox, , Nginx.
, , Nginx API Icebox .
Icebox nginx S3 API — :

, — , Migrating, Local.

, , .

:
-
Non-sharded. , . -
Sharded. - ,
Migrating.
:
- , .
- .
- : , , .
SSL-
Nginx. Nginx, OpenResty, Nginx LuaJIT.
— SSL-. S3- , CNAME. HTTPS : SSL-.
, SSL Nginx. Nginx, OpenResty, Nginx LuaJIT.
Nginx . ( ). ssl_certificate_by_lua, TLS-. Tarantool: .
, , Let's Encrypt.

, -,
. . , , , , , , . .
Tarantool . . , .
. , , . S3 .
S3 «». , . .
. , , , , .
. , Amazon, , .
. , .
Tarantool. Tarantool , , , .
@Databases Meetup by Mail.ru Cloud Solutions&Tarantool. Telegram Kubernetes Mail.ru Group.
, S3 .