> (you don't have to strictly follow this form)

**Use case**

Sometimes, for really sophisticated scenarios it can be hard to control the amount of in-progress backups run externally. For the purpose of simpler control we can introduce server-level setting which disallows running concurrent backups of any type. 

Something like this in `config.xml` (enabled by default):
`<allow_concurrent_backups>true</allow_concurrent_backups>`

**Describe the solution you'd like**

It's important that backups can be executed in distributed way on multiple servers. Need to take it into account.

**Describe alternatives you've considered**
External check of `system.backups` table, but it can be complex.

String default_profile_name;                            
    String system_profile_name;                             
    String buffer_profile_name;                             
    std::unique_ptr<AccessControl> access_control;
    mutable ResourceManagerPtr resource_manager;
    mutable UncompressedCachePtr uncompressed_cache;        
    mutable MarkCachePtr mark_cache;                        
    mutable std::unique_ptr<ThreadPool> load_marks_threadpool; 
    mutable UncompressedCachePtr index_uncompressed_cache;  
    mutable MarkCachePtr index_mark_cache;                  
    mutable MMappedFileCachePtr mmap_cache; 
    ProcessList process_list;                               
    GlobalOvercommitTracker global_overcommit_tracker;
    MergeList merge_list;                                   
    MovesList moves_list;                                   
    ReplicatedFetchList replicated_fetch_list;
    ConfigurationPtr users_config;                          
    InterserverIOHandler interserver_io_handler;            
    mutable std::unique_ptr<BackgroundSchedulePool> buffer_flush_schedule_pool; 
    mutable std::unique_ptr<BackgroundSchedulePool> schedule_pool;    
    mutable std::unique_ptr<BackgroundSchedulePool> distributed_schedule_pool; 
    mutable std::unique_ptr<BackgroundSchedulePool> message_broker_schedule_pool; 
    mutable std::unique_ptr<IAsynchronousReader> asynchronous_remote_fs_reader;
    mutable std::unique_ptr<IAsynchronousReader> asynchronous_local_fs_reader;
    mutable std::unique_ptr<IAsynchronousReader> synchronous_local_fs_reader;
    mutable std::unique_ptr<ThreadPool> threadpool_writer;
    mutable ThrottlerPtr replicated_fetches_throttler;      
    mutable ThrottlerPtr replicated_sends_throttler;        
    mutable ThrottlerPtr remote_read_throttler;             
    mutable ThrottlerPtr remote_write_throttler;