#290  High availability and scalability
Released
Robin Shen opened 3 years ago
No description
bufferUnderrun commented 3 years ago

What do you mean ?

Robin Shen commented 3 years ago
bufferUnderrun commented 3 years ago

i mean, technically : multiple instances of onedev with sync... ?

Robin Shen commented 3 years ago

Create a cluster with multiple OneDev servers to achieve scalability and reliability.

Artur commented 3 years ago

For the start, like a basic, first version it would be good to have multiple instances of OneDev front end connected to one database (maybe in cluster mode) and store code repository in shared file system, like NFS or something like this.

Artur commented 3 years ago

I think, one way to have kind of simplified HA setup would be to have 2 independent installations and set projects in kind of mirror mode on one system to periodically update source code and issues from another system. This would be acceptable HA setup for many cases.

It seems relatively simple to implement.

And if the mirroring is done on the project level it would allow for a "smart" setup. Let's say you have a team in the US and a team in the EU. You could have 2 OneDev systems running, one in the US and one in the EU.

Then, the team in the EU would use EU system to work, and their projects would be mirrored on the US server and then the team from the US would connect to the US server and their projects would be mirrored on the EU server. If one server fails, both teams cold just switch over to the working server.

Robin Shen commented 3 years ago

You may prototype this if interested. I have not got time to think about it yet.

Noel Nuguid commented 3 years ago

Hello, I'm currently working on trying to implement ondev on AWS ECS Fargate to achieve high availability. My question is that is the git repository data stored on a particular directory?

Robin Shen commented 3 years ago

For a particular project, it is stored under <OneDev install dir>/site/projects/<project id>/git

Noel Nuguid commented 3 years ago

Thanks for responding. some addtional questions:

  • I was originally planning to setup an NFS server to host the data files of onedev. Is there a specific directory that i can mount to achieve this?
  • Is it possible to use an external GIT repository to host the code (ie AWS codecommit?)

Thanks, Noel

Robin Shen commented 3 years ago

You may mount the site as NFS directory. Using external git repository is not supported in OneDev.

Noel Nuguid commented 3 years ago

thanks for clarifying. good day!

OneDev referenced from other issue 1 year ago
Robin Shen batch edited 7 months ago
Name Previous Value Current Value
Label
empty
Enterprise Edition
Robin Shen changed title 7 months ago
Previous Value Current Value
High availability of OneDev server
High availability and scalability
OneDev changed state to 'Closed' 7 months ago
Previous Value Current Value
Open
Closed
OneDev commented 7 months ago

State changed as code fixing the issue is committed (300388b5)

Referenced from commit 7 months ago
Add EE module
feat: high availability and scalability (#290)
feat: user/group dashboard (#377)
feat: cross project code search (#1509)
feat: web terminal to access running jobs (#1511)
feat: able to use separate storage for Git LFS and build artifacts (#1510)
Robin Shen committed 7 months ago
OneDev changed state to 'Released' 7 months ago
Previous Value Current Value
Closed
Released
OneDev commented 7 months ago

State changed as build #4010 is successful

issue 1 of 1
Type
New Feature
Priority
Normal
Assignee
Labels
Enterprise Edition
Issue Votes (1)
Watchers (5)
Reference
onedev/server#290
Please wait...
Page is in error, reload to recover