GitBucket cluster
takezoe opened this issue · comments
Naoki Takezoe commented
Considering to make it possible to run GitBucket using multiple servers for load balancing or/and HA.
Listing obstacles and potential solutions below:
- HttpSession
- Use sticky session or configure an application server to share session across multiple servers
- Shared disk +
--save_sessions
(FileSessionDataStore) - Support cookie session or JDBCSessionDataStore in the future
- Shared disk +
- Use sticky session or configure an application server to share session across multiple servers
- Cache
- Provide an option to disable cache for now #3245
- Support external cache server or shared file system backed cache in the future
- File system
- Use a shared file system for the following directories (ref: https://github.com/gitbucket/gitbucket/blob/master/doc/directory.md)
<GITBUCKET_HOME>/repositories
<GITBUCKET_HOME>/data
<GITBUCKET_HOME>/sessions
<GITBUCKET_HOME>/tmp
- Use a shared file system for the following directories (ref: https://github.com/gitbucket/gitbucket/blob/master/doc/directory.md)
- Database
- Use a shared external database
- Plugins
- Some plugins (e.g. CI plugin) don't work on multiple servers properly
- Some plugins may require additional file system sharing (e.g. Gist plugin uses
GITBUCKET_HOME/gist
)
- activity.log
- Written in
GITBUCKET_HOME/activity.log
and shown in the dashboard - Better to migrate back to RDB? or add an option to disable showing on the dashboard? #3246
- Written in