Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement re-scheduling of databases #178

Open
alphadose opened this issue Dec 13, 2019 · 5 comments
Open

Implement re-scheduling of databases #178

alphadose opened this issue Dec 13, 2019 · 5 comments
Assignees
Labels
Milestone

Comments

@alphadose
Copy link
Member

alphadose commented Dec 13, 2019

One possible way is to use network mounted volumes using https://github.com/chrislusf/seaweedfs or https://godoc.org/github.com/control-center/serviced/dfs/nfs

In this manner, databases would survive node failure

@alphadose alphadose added this to the v2.0 milestone Dec 13, 2019
@supra08 supra08 added the gsoc label Feb 5, 2020
@alphadose alphadose removed the gsoc label Feb 22, 2020
@karan0299
Copy link
Contributor

@supra08 are we going to use one of the above file system?

@supra08
Copy link
Member

supra08 commented May 8, 2020

Yeah last time I checked when this issue was created, seaweedfs looked quite promising. Probably the mentee will put in some more research before heading into this issue.

@karan0299
Copy link
Contributor

karan0299 commented May 8, 2020

yeah , Docs too is better for seaweedfs.

@supra08 supra08 added this to To do in Summer Majors May 19, 2020
@supra08 supra08 moved this from To do to In progress in Summer Majors Jul 25, 2020
@chrislusf
Copy link

I am working on SeaweedFS. Just let me know if I can help anything here.

@angad-k
Copy link
Member

angad-k commented Nov 23, 2020

Hey @chrislusf ! Thanks for showing interest in our project!
I have set up functionality in the code base to deploy docker containers to run the SeaweedFS service and also written docker images that then mount the working directory onto seaweedFS before starting the database. However, MongoDB's container gives this error when I try to run it :
This is SeaweedFS version 30GB 2.08 9b10d1a linux amd64 mount point owner uid=100 gid=0 mode=drwxr-xr-x I1123 14:12:08 6 leveldb_store.go:40] filer store dir: /tmp/8190/meta I1123 14:12:08 6 file_util.go:23] Folder /tmp/8190/meta Permission: -rwxr-xr-x I1123 14:12:08 6 mount_std.go:207] mounted 127.0.0.1:8888/mongodb to /data/db 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] MongoDB starting : pid=23 port=27017 dbpath=/data/db 64-bit host=docker-desktop 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] db version v3.4.4 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] git version: 888390515874a9debd1b6c5d36559ca86b44babd 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] OpenSSL version: LibreSSL 2.5.5 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] allocator: system 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] modules: none 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] build environment: 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] distarch: x86_64 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] target_arch: x86_64 2020-11-23T14:12:13.308+0000 I CONTROL [initandlisten] options: {} 2020-11-23T14:12:13.316+0000 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=480M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0), 2020-11-23T14:12:14.614+0000 E STORAGE [initandlisten] WiredTiger error (0) [1606140734:614429][23:0x7fd987756dc0], file:WiredTiger.wt, WT_CURSOR.next: WiredTiger.turtle: encountered an illegal file format or internal value 2020-11-23T14:12:14.614+0000 E STORAGE [initandlisten] WiredTiger error (-31804) [1606140734:614485][23:0x7fd987756dc0], file:WiredTiger.wt, WT_CURSOR.next: the process must exit and restart: WT_PANIC: WiredTiger library panic 2020-11-23T14:12:14.614+0000 I - [initandlisten] Fatal Assertion 28558 at src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp 361 2020-11-23T14:12:14.614+0000 I - [initandlisten] ***aborting after fassert() failure 2020-11-23T14:12:14.614+0000 F - [initandlisten] Got signal: 6 (Aborted).
You can find the code for the same on this branch : https://github.com/sdslabs/gasper/tree/network-mounted-volumes-dockerized . Also the docker files that I have written can be found here : https://github.com/sdslabs/gasper-dockerfiles/tree/network-mounted-volumes .
It would be great if you could tell me where I'm going wrong.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Summer Majors
  
In progress
Development

No branches or pull requests

5 participants