Storage
What is it, How has it changed, How is changing
elb addr
ansible deployed
web heads
Existing infra
storage[..].prod.planet-labs.com
ro-storage[..].prod...
storage-db-a-01.prod... fails
over to storage-db-b-01
storage-db-c-01.prod...
Source
of
Truth
Extra Indexing
Data Stores
indexer/streamsets
ES-Nodes
Platform still connects to the DB direct
tiles, mosaics, view servers
storage-ro.prod.planet-labs.com
Primary
zippy-storage-ro-db.prod.planet-labs.com
storage-db-c-01.prod.planet-labs.com
Current pain points
- Takes mins (usually around 20) to add a node to the storage pool
- Very expensive PG databases
- Poor utilization of ES nodes
- Very poor availability
- Going to run out of space on PG DB
Solution: k8s
k8s Cluster
db-a
db-b
Deployed via ansible
AutoScalar
AutoScalar
AutoScalar
Pets
ES
StreamSets
ELB
PG-Read
ro-storage
storage
bouncer
extended-fs
bouncer
extended-fs
What is Extended FS
- Pull extended and cmo from the DB
- It stores extended and cmo as gzipped files on disk
- We store the entire history, and then have a cron job reap old data
- We support Block or NFS based storage. Autosharding with DNS and Block storage. For GCE moving to bigtable should be easy
Storage Scalability
By Alex Newman
Storage Scalability
- 791