Beispiel #1
0
 def __init__(self, conf, logger=None):
     super(ContainerController, self).__init__(conf)
     self.logger = logger or get_logger(conf, log_route='container-server')
     self.log_requests = config_true_value(conf.get('log_requests', 'true'))
     self.root = conf.get('devices', '/srv/node')
     self.mount_check = config_true_value(conf.get('mount_check', 'true'))
     self.node_timeout = float(conf.get('node_timeout', 3))
     self.conn_timeout = float(conf.get('conn_timeout', 0.5))
     #: ContainerSyncCluster instance for validating sync-to values.
     self.realms_conf = ContainerSyncRealms(
         os.path.join(conf.get('swift_dir', '/etc/swift'),
                      'container-sync-realms.conf'), self.logger)
     #: The list of hosts we're allowed to send syncs to. This can be
     #: overridden by data in self.realms_conf
     self.allowed_sync_hosts = [
         h.strip()
         for h in conf.get('allowed_sync_hosts', '127.0.0.1').split(',')
         if h.strip()
     ]
     self.replicator_rpc = ContainerReplicatorRpc(self.root,
                                                  DATADIR,
                                                  ContainerBroker,
                                                  self.mount_check,
                                                  logger=self.logger)
     self.auto_create_account_prefix = \
         conf.get('auto_create_account_prefix') or '.'
     if config_true_value(conf.get('allow_versions', 'f')):
         self.save_headers.append('x-versions-location')
     swift.common.db.DB_PREALLOCATION = \
         config_true_value(conf.get('db_preallocation', 'f'))
     self.sync_store = ContainerSyncStore(self.root, self.logger,
                                          self.mount_check)
Beispiel #2
0
 def __init__(self, conf, logger=None):
     super(ContainerController, self).__init__(conf)
     self.logger = logger or get_logger(conf, log_route='container-server')
     self.log_requests = config_true_value(conf.get('log_requests', 'true'))
     self.root = conf.get('devices', '/srv/node')
     self.mount_check = config_true_value(conf.get('mount_check', 'true'))
     self.node_timeout = float(conf.get('node_timeout', 3))
     self.conn_timeout = float(conf.get('conn_timeout', 0.5))
     #: ContainerSyncCluster instance for validating sync-to values.
     self.realms_conf = ContainerSyncRealms(
         os.path.join(conf.get('swift_dir', '/etc/swift'),
                      'container-sync-realms.conf'), self.logger)
     #: The list of hosts we're allowed to send syncs to. This can be
     #: overridden by data in self.realms_conf
     self.allowed_sync_hosts = [
         h.strip()
         for h in conf.get('allowed_sync_hosts', '127.0.0.1').split(',')
         if h.strip()
     ]
     self.replicator_rpc = ContainerReplicatorRpc(self.root,
                                                  DATADIR,
                                                  ContainerBroker,
                                                  self.mount_check,
                                                  logger=self.logger)
     if conf.get('auto_create_account_prefix'):
         self.logger.warning('Option auto_create_account_prefix is '
                             'deprecated. Configure '
                             'auto_create_account_prefix under the '
                             'swift-constraints section of '
                             'swift.conf. This option will '
                             'be ignored in a future release.')
         self.auto_create_account_prefix = \
             conf['auto_create_account_prefix']
     else:
         self.auto_create_account_prefix = AUTO_CREATE_ACCOUNT_PREFIX
     self.shards_account_prefix = (self.auto_create_account_prefix +
                                   'shards_')
     if config_true_value(conf.get('allow_versions', 'f')):
         self.save_headers.append('x-versions-location')
     if 'allow_versions' in conf:
         self.logger.warning('Option allow_versions is deprecated. '
                             'Configure the versioned_writes middleware in '
                             'the proxy-server instead. This option will '
                             'be ignored in a future release.')
     swift.common.db.DB_PREALLOCATION = \
         config_true_value(conf.get('db_preallocation', 'f'))
     swift.common.db.QUERY_LOGGING = \
         config_true_value(conf.get('db_query_logging', 'f'))
     self.sync_store = ContainerSyncStore(self.root, self.logger,
                                          self.mount_check)
     self.fallocate_reserve, self.fallocate_is_percent = \
         config_fallocate_value(conf.get('fallocate_reserve', '1%'))