Provided by: masakari-common_16.0.0-0ubuntu2_all
NAME
masakari - masakari 16.0.0 Masakari is an OpenStack project designed to ensure high availability of instances and compute processes running on hosts. This documentation is intended to help explain the current scope of the Masakari project and the architectural decisions made to support this scope. The documentation will include the future architectural roadmap and the current development process and policies.
MASAKARI API REFERENCES
The Masakari API is extensive. We provide a concept guide which gives some of the high level details, as well as a more detailed API reference.
OPERATOR GUIDE
Architecture Overview • Masakari architecture: An overview of how all the components in masakari work together. Installation A detailed install guide for masakari. Masakari services Masakari service overview Masakari provides Virtual Machines High Availability(VMHA), and rescues KVM-based Virtual Machines(VM) from a failure events described below: • VM process down - restart vm (use nova stop API, and nova start API). Libvirt events will be also emitted by other failures. • Provisioning process down - restarts process, changes nova-compute service status to maintenance mode (use nova service-disable). • nova-compute host failure - evacuate all the VMs from failure host according to the following recovery methods (use nova evacuate API). • auto - evacuate all the VMs with no destination node for nova scheduler. • reserved_host - evacuate all the VMs with reserved hosts as the destination nodes for nova scheduler. • auto_priority - evacuate all the VMs by using auto recovery method firstly. If failed, then using reserved_host recovery method. • rh_priority - evacuate all the VMs by using reserved_host recovery method firstly. If failed, then using auto recovery method. The below services enables deplores to integrate with the Masakari directly or through custom plug-ins. The Masakari service consists of the following components: masakari-api An OpenStack-native REST API that processes API requests by sending them to the masakari-engine over Remote Procedure Call (RPC). masakari-engine Processes the notifications received from masakari-api by executing the recovery workflow in asynchronous way. Install and configure This section describes how to install and configure Masakari services on the compute node. This section assumes that you already have a working OpenStack environment with the following components installed: Nova, Glance, Cinder, Neutron and Identity. The installation and configuration vary by distribution. Install and configure for Ubuntu This section describes how to install and configure Masakari for Ubuntu 18.04 (bionic). Prerequisites Before you install and configure the masakari service, you must create databases, service credentials, and API endpoints. 1. To create the masakari database, follow these steps: • Use the database access client to connect to the database server as the root user: # mysql • Create the masakari database: mysql> CREATE DATABASE masakari CHARACTER SET utf8; • Grant access privileges to the databases: mysql> GRANT ALL PRIVILEGES ON masakari.* TO 'username'@'localhost' \ IDENTIFIED BY 'MASAKARI_DBPASS'; mysql> GRANT ALL PRIVILEGES ON masakari.* TO 'username'@'%' \ IDENTIFIED BY 'MASAKARI_DBPASS'; Replace MASAKARI_DBPASS with a suitable password. • Exit the database access client. 2. Source the admin credentials to gain access to admin-only CLI commands: $ . admin-openrc 3. Create the Masakari service credentials: • Create the masakari user with password as masakari: $ openstack user create --password-prompt masakari User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | 8a7dbf5279404537b1c7b86c033620fe | | name | masakari | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ • Add the admin role to the masakari user: $ openstack role add --project service --user masakari admin • Create the masakari service entity: $ openstack service create --name masakari \ --description "masakari high availability" instance-ha +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | masakari high availability | | enabled | True | | id | 060d59eac51b4594815603d75a00aba2 | | name | masakari | | type | instance-ha | +-------------+----------------------------------+ 4. Create the Masakari API service endpoints: $ openstack endpoint create --region RegionOne \ masakari public http:// <CONTROLLER_IP>/instance-ha/v1/$\(tenant_id\)s +--------------+-------------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------------+ | enabled | True | | id | 38f7af91666a47cfb97b4dc790b94424 | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | 060d59eac51b4594815603d75a00aba2 | | service_name | masakari | | service_type | instance-ha | | url | http://<CONTROLLER_IP>/instance-ha/v1/$(tenant_id)s | +--------------+-------------------------------------------------------+ $ openstack endpoint create --region RegionOne \ masakari internal http:// <CONTROLLER_IP>/instance-ha/v1/$\(tenant_id\)s +--------------+-------------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------------+ | enabled | True | | id | 38f7af91666a47cfb97b4dc790b94424 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | 060d59eac51b4594815603d75a00aba2 | | service_name | masakari | | service_type | instance-ha | | url | http://<CONTROLLER_IP>/instance-ha/v1/$(tenant_id)s | +--------------+-------------------------------------------------------+ $ openstack endpoint create --region RegionOne \ masakari admin http://<CONTROLLER_IP>/instance-ha/v1/$\(tenant_id\)s +--------------+-------------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------------+ | enabled | True | | id | 38f7af91666a47cfb97b4dc790b94424 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | 060d59eac51b4594815603d75a00aba2 | | service_name | masakari | | service_type | instance-ha | | url | http://<CONTROLLER_IP>/instance-ha/v1/$(tenant_id)s | +--------------+-------------------------------------------------------+ Install and configure Masakari NOTE: • You must install Masakari on the Controller Nodes only. 1. Clone masakari using: # git clone https://opendev.org/openstack/masakari.git 2. Prepare the masakari configuration files: 1. Generate via tox: Go to /opt/stack/masakari and execute the command below. This will generate masakari.conf.sample, a sample configuration file, at /opt/stack/masakari/etc/masakari/: # tox -egenconfig 2. Download from: # masakari.conf.sample 3. Rename masakari.conf.sample file to masakari.conf, and edit sections as shown below: [DEFAULT] transport_url = rabbit://stackrabbit:admin@<CONTROLLER_IP>:5672/ graceful_shutdown_timeout = 5 os_privileged_user_tenant = service os_privileged_user_password = admin os_privileged_user_auth_url = http://<CONTROLLER_IP>/identity os_privileged_user_name = nova logging_exception_prefix = %(color)s%(asctime)s.%(msecs)03d TRACE %(name)s [01;35m%(instance)s[00m logging_debug_format_suffix = [00;33mfrom (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d[00m logging_default_format_string = %(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [[00;36m-%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m logging_context_format_string = %(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [[01;36m%(request_id)s [00;36m%(project_name)s %(user_name)s%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m use_syslog = False debug = True masakari_api_workers = 2 [database] connection = mysql+pymysql://root:admin@1<CONTROLLER_IP>/masakari?charset=utf8 [keystone_authtoken] memcached_servers = localhost:11211 cafile = /opt/stack/data/ca-bundle.pem project_domain_name = Default project_name = service user_domain_name = Default password = <MASAKARI_PASS> username = masakari auth_url = http://<CONTROLLER_IP>/identity auth_type = password [taskflow] connection = mysql+pymysql://root:admin@<CONTROLLER_IP>/masakari?charset=utf8 NOTE: Replace CONTROLLER_IP with the IP address of controller node. Replace MASAKARI_PASS with the password you chose for the masakari user in the Identity service. 4. Create masakari directory in /etc/: Copy masakari.conf file to /etc/masakari/ # cp -p etc/masakari/masakari.conf.sample /etc/masakari/masakari.conf 3. To install masakari run setup.py from masakari: # cd masakari # sudo python setup.py install 4. Run below db command to sync database: # masakari-manage db sync Finalize installation • Start masakari services: # masakari-api # masakari-engine Verify operation Verify Masakari installation. 1. Source the admin credentials to gain access to admin-only CLI commands: $ . admin-openrc 2. List API endpoints in the Identity service to verify connectivity with the Identity service: NOTE: Below endpoints list may differ depending on the installation of OpenStack components. $ openstack endpoint list +-------------+----------------+--------------------------------------------------------+ | Name | Type | Endpoints | +-------------+----------------+--------------------------------------------------------+ | nova_legacy | compute_legacy | RegionOne | | | | public: http://controller/compute/v2/<tenant_id> | | | | | | nova | compute | RegionOne | | | | public: http://controller/compute/v2.1 | | | | | | cinder | block-storage | RegionOne | | | | public: http://controller/volume/v3/<tenant_id> | | | | | | glance | image | RegionOne | | | | public: http://controller/image | | | | | | cinderv3 | volumev3 | RegionOne | | | | public: http://controller/volume/v3/<tenant_id> | | | | | | masakari | instance-ha | RegionOne | | | | internal: http://controller/instance-ha/v1/<tenant_id> | | | | RegionOne | | | | admin: http://controller/instance-ha/v1/<tenant_id> | | | | RegionOne | | | | public: http://controller/instance-ha/v1/<tenant_id> | | | | | | keystone | identity | RegionOne | | | | public: http://controller/identity | | | | RegionOne | | | | admin: http://controller/identity | | | | | | cinderv2 | volumev2 | RegionOne | | | | public: http://controller/volume/v2/<tenant_id> | | | | | | placement | placement | RegionOne | | | | public: http://controller/placement | | | | | | neutron | network | RegionOne | | | | public: http://controller:9696/ | | | | | +-------------+----------------+--------------------------------------------------------+ 3. Run segment list command to verify masakari-api is running properly. This will return empty segment list as you haven’t yet configured Failover segments. $ openstack segment list NOTE: Since Failover segments are not configured, there is no way to verify masakari-engine is running properly as the notification cannot be sent from masakari-api to masakari-engine. Reference Material • Configuration Guide: Information on configuration files. • Custom Recovery Workflow Configuration Guide • CLI Commands for Masakari: The complete command reference for Masakari. • Versioned Notifications: This provides the list of existing versioned notifications with sample payloads. This will help newcomers understand basics of Masakari • Nova Docs: A collection of guides for Nova. Masakari CLI Documentation In this section you will find information on Masakari’s command line interface. masakari-status CLI interface for Masakari status commands Synopsis masakari-status <category> <command> [<args>] Description masakari-status is a tool that provides routines for checking the status of a Masakari deployment. Options The standard pattern for executing a masakari-status command is: masakari-status <category> <command> [<args>] Run without arguments to see a list of available command categories: masakari-status Categories are: • upgrade Detailed descriptions are below: You can also run with a category argument such as upgrade to see a list of all commands in that category: masakari-status upgrade These sections describe the available categories and arguments for masakari-status. Upgrade masakari-status upgrade check Performs a release-specific readiness check before restarting services with new code. For example, missing or changed configuration options, incompatible object states, or other conditions that could lead to failures while upgrading. Return Codes ┌────────────┬──────────────────────────────────┐ │Return code │ Description │ ├────────────┼──────────────────────────────────┤ │0 │ All upgrade readiness checks │ │ │ passed successfully and there is │ │ │ nothing to do. │ └────────────┴──────────────────────────────────┘ │1 │ At least one check encountered │ │ │ an issue and requires further │ │ │ investigation. This is │ │ │ considered a warning but the │ │ │ upgrade may be OK. │ ├────────────┼──────────────────────────────────┤ │2 │ There was an upgrade status │ │ │ check failure that needs to be │ │ │ investigated. This should be │ │ │ considered something that stops │ │ │ an upgrade. │ ├────────────┼──────────────────────────────────┤ │255 │ An unexpected error occurred. │ └────────────┴──────────────────────────────────┘ History of Checks 7.0.0 (Stein) • Sample check to be filled in with checks as they are added in Stein. masakari-manage Control and manage masakari database Synopsis masakari-manage <category> <action> [<args>] Description masakari-manage controls DB by managing various admin-only aspects of masakari. Options The standard pattern for executing a masakari-manage command is: masakari-manage <category> <command> [<args>] Run without arguments to see a list of available command categories: masakari-manage You can also run with a category argument such as db to see a list of all commands in that category: masakari-manage db These sections describe the available categories and arguments for masakari-manage. Masakari Database masakari-manage db version Print the current main database version. masakari-manage db sync [--version <version>] Upgrade the main database schema up to the most recent version or --version if specified. masakari-manage db purge Deleting rows older than 30 day(s) from table hosts, failover_segments and notifications. openstack masakari To control and manage masakari operations, the extended command list available in openstack command. api-paste.ini The masakari service stores its API configuration settings in the api-paste.ini file. [composite:masakari_api] use = call:masakari.api.urlmap:urlmap_factory /: apiversions /v1: masakari_api_v1 [composite:masakari_api_v1] use = call:masakari.api.auth:pipeline_factory_v1 keystone = cors http_proxy_to_wsgi request_id faultwrap sizelimit authtoken keystonecontext osapi_masakari_app_v1 noauth2 = cors http_proxy_to_wsgi request_id faultwrap sizelimit noauth2 osapi_masakari_app_v1 # filters [filter:cors] paste.filter_factory = oslo_middleware.cors:filter_factory oslo_config_project = masakari [filter:http_proxy_to_wsgi] paste.filter_factory = oslo_middleware.http_proxy_to_wsgi:HTTPProxyToWSGI.factory [filter:request_id] paste.filter_factory = oslo_middleware:RequestId.factory [filter:faultwrap] paste.filter_factory = masakari.api.openstack:FaultWrapper.factory [filter:sizelimit] paste.filter_factory = oslo_middleware:RequestBodySizeLimiter.factory [filter:authtoken] paste.filter_factory = keystonemiddleware.auth_token:filter_factory [filter:keystonecontext] paste.filter_factory = masakari.api.auth:MasakariKeystoneContext.factory [filter:noauth2] paste.filter_factory = masakari.api.auth:NoAuthMiddleware.factory # apps [app:osapi_masakari_app_v1] paste.app_factory = masakari.api.openstack.ha:APIRouterV1.factory [pipeline:apiversions] pipeline = faultwrap http_proxy_to_wsgi apiversionsapp [app:apiversionsapp] paste.app_factory = masakari.api.openstack.ha.versions:Versions.factory Configuration Options The following is an overview of all available configuration options in Masakari. DEFAULT auth_strategy Type string Default keystone Valid Values keystone, noauth2 This determines the strategy to use for authentication: keystone or noauth2. ‘noauth2’ is designed for testing only, as it does no actual credential checking. ‘noauth2’ provides administrative credentials only if ‘admin’ is specified as the username. • Possible values: Either ‘keystone’ (default) or ‘noauth2’. • Services that use this: masakari-api • Related options: None use_forwarded_for Type boolean Default False When True, the ‘X-Forwarded-For’ header is treated as the canonical remote address. When False (the default), the ‘remote_address’ header is used. You should only enable this if you have an HTML sanitizing proxy. • Possible values: True, False (default) • Services that use this: masakari-api • Related options: None osapi_max_limit Type integer Default 1000 As a query can potentially return many thousands of items, you can limit the maximum number of items in a single response by setting this option. • Possible values: Any positive integer. Default is 1000. • Services that use this: masakari-api • Related options: None osapi_masakari_link_prefix Type string Default <None> This string is prepended to the normal URL that is returned in links to the OpenStack Masakari API. If it is empty (the default), the URLs are returned unchanged. • Possible values: Any string, including an empty string (the default). • Services that use this: masakari-api • Related options: None tempdir Type string Default <None> Explicitly specify the temporary working directory. monkey_patch Type boolean Default False Determine if monkey patching should be applied. Related options: • monkey_patch_modules: This must have values set for this option to have any effect monkey_patch_modules Type list Default ['masakari.api:masakari.cmd'] List of modules/decorators to monkey patch. This option allows you to patch a decorator for all functions in specified modules. Related options: • monkey_patch: This must be set to True for this option to have any effect masakari_topic Type string Default ha_engine This is the message queue topic that the masakari engine ‘listens’ on. It is used when the masakari engine is started up to configure the queue, and whenever an RPC call to the masakari engine is made. • Possible values: Any string, but there is almost never any reason to ever change this value from its default of ‘engine’. • Services that use this: masakari-engine • Related options: None WARNING: This option is deprecated for removal since 3.0.0. Its value may be silently ignored in the future. Reason Configurable RPC topic provides little value and it can easily break Masakari if operator configures it to the same topic used by other OpenStack services. duplicate_notification_detection_interval Type integer Default 180 Minimum Value 0 Interval in seconds for identifying duplicate notifications. If the notification received is identical to the previous ones whose status is either new or running and if it’s created_timestamp and the current timestamp is less than this config option value, then the notification will be considered as duplicate and it will be ignored. wait_period_after_service_update Type integer Default 180 Number of seconds to wait after a service is enabled or disabled. wait_period_after_evacuation Type integer Default 90 Wait until instance is evacuated verify_interval Type integer Default 1 The monitoring interval for looping wait_period_after_power_off Type integer Default 180 Number of seconds to wait for instance to shut down wait_period_after_power_on Type integer Default 60 Number of seconds to wait for instance to start process_unfinished_notifications_interval Type integer Default 120 Interval in seconds for processing notifications which are in error or new state. retry_notification_new_status_interval Type integer Default 60 Mutable This option can be changed without restarting. Interval in seconds for identifying notifications which are in new state. If the notification is in new state till this config option value after it’s generated_time, then it is considered that notification is ignored by the messaging queue and will be processed by ‘process_unfinished_notifications’ periodic task. check_expired_notifications_interval Type integer Default 600 Interval in seconds for checking running notifications. notifications_expired_interval Type integer Default 86400 Interval in seconds for identifying running notifications expired. host_failure_recovery_threads Type integer Default 3 Minimum Value 1 Number of threads to be used for evacuating and confirming instances during execution of host_failure workflow. notification_driver Type string Default taskflow_driver Defines which driver to use for executing notification workflows. fatal_exception_format_errors Type boolean Default False Make exception message format errors fatal nova_catalog_admin_info Type string Default compute:nova:publicURL Match this value when searching for nova in the service catalog. Format is: separated values of the form: <service_type>:<service_name>:<endpoint_type> os_region_name Type string Default <None> Region name of this node nova_ca_certificates_file Type string Default <None> Location of ca certificates file to use for nova client requests. nova_api_insecure Type boolean Default False Allow to perform insecure SSL requests to nova os_privileged_user_name Type string Default <None> OpenStack privileged account username. Used for requests to other services (such as Nova) that require an account with special rights. os_privileged_user_password Type string Default <None> Password associated with the OpenStack privileged account. os_privileged_user_tenant Type string Default <None> Tenant name associated with the OpenStack privileged account. os_privileged_user_auth_url Type URI Default <None> Auth URL associated with the OpenStack privileged account. os_user_domain_name Type string Default default User domain name associated with the OpenStack privileged account. os_project_domain_name Type string Default default Project domain name associated with the OpenStack privileged account. os_system_scope Type string Default <None> Scope for system operations. pybasedir Type string Default /build/masakari-tIjyGh/masakari-16.0.0 Directory where the masakari python module is installed bindir Type string Default /usr/local/bin Directory where masakari binaries are installed state_path Type string Default $pybasedir Top-level directory for maintaining masakari’s state host Type host address Default lcy02-amd64-034 Hostname, FQDN or IP address of this host. Must be valid within AMQP key. Possible values: • String with hostname, FQDN or IP address. Default is hostname of this host. engine_manager Type string Default masakari.engine.manager.MasakariManager Full class name for the Manager for masakari engine report_interval Type integer Default 10 Seconds between nodes reporting state to datastore periodic_enable Type boolean Default True Enable periodic tasks periodic_interval_max Type integer Default 300 Max interval time between periodic tasks execution in seconds. periodic_fuzzy_delay Type integer Default 60 Range of seconds to randomly delay when starting the periodic task scheduler to reduce stampeding. (Disable by setting to 0) use_ssl Type boolean Default False Use APIs with SSL enabled masakari_api_listen Type host address Default 0.0.0.0 The IP address on which the Masakari API will listen. masakari_api_listen_port Type integer Default 15868 Minimum Value 1 Maximum Value 65535 The port on which the Masakari API will listen. masakari_api_workers Type integer Default <None> Number of workers for Masakari API service. The default will be the number of CPUs available. service_down_time Type integer Default 60 Maximum time since last check-in for up service backdoor_port Type string Default <None> Enable eventlet backdoor. Acceptable values are 0, <port>, and <start>:<end>, where 0 results in listening on a random tcp port number; <port> results in listening on the specified port number (and not enabling backdoor if that port is in use); and <start>:<end> results in listening on the smallest unused port number within the specified range of port numbers. The chosen port is displayed in the service’s log file. backdoor_socket Type string Default <None> Enable eventlet backdoor, using the provided path as a unix socket that can receive connections. This option is mutually exclusive with ‘backdoor_port’ in that only one should be provided. If both are provided then the existence of this option overrides the usage of that option. Inside the path {pid} will be replaced with the PID of the current process. log_options Type boolean Default True Enables or disables logging values of all registered options when starting a service (at DEBUG level). graceful_shutdown_timeout Type integer Default 60 Specify a timeout after which a gracefully shutdown server will exit. Zero value means endless wait. api_paste_config Type string Default api-paste.ini File name for the paste.deploy config for api service wsgi_log_format Type string Default %(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f A python format string that is used as the template to generate log lines. The following values can beformatted into it: client_ip, date_time, request_line, status_code, body_length, wall_seconds. tcp_keepidle Type integer Default 600 Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X. wsgi_default_pool_size Type integer Default 100 Size of the pool of greenthreads used by wsgi max_header_line Type integer Default 16384 Maximum line size of message headers to be accepted. max_header_line may need to be increased when using large tokens (typically those generated when keystone is configured to use PKI tokens with big service catalogs). wsgi_keep_alive Type boolean Default True If False, closes the client socket connection explicitly. client_socket_timeout Type integer Default 900 Timeout for client connections’ socket operations. If an incoming connection is idle for this number of seconds it will be closed. A value of ‘0’ means wait forever. wsgi_server_debug Type boolean Default False True if the server should send exception tracebacks to the clients on 500 errors. If False, the server will respond with empty bodies. debug Type boolean Default False Mutable This option can be changed without restarting. If set to true, the logging level will be set to DEBUG instead of the default INFO level. log_config_append Type string Default <None> Mutable This option can be changed without restarting. The name of a logging configuration file. This file is appended to any existing logging configuration files. For details about logging configuration files, see the Python logging module documentation. Note that when logging configuration files are used then all logging configuration is set in the configuration file and other logging configuration options are ignored (for example, log-date-format). Deprecated Variations ┌────────┬────────────┐ │Group │ Name │ ├────────┼────────────┤ │DEFAULT │ log-config │ ├────────┼────────────┤ │DEFAULT │ log_config │ └────────┴────────────┘ log_date_format Type string Default %Y-%m-%d %H:%M:%S Defines the format string for %(asctime)s in log records. Default: the value above . This option is ignored if log_config_append is set. log_file Type string Default <None> (Optional) Name of log file to send logging output to. If no default is set, logging will go to stderr as defined by use_stderr. This option is ignored if log_config_append is set. Deprecated Variations ┌────────┬─────────┐ │Group │ Name │ ├────────┼─────────┤ │DEFAULT │ logfile │ └────────┴─────────┘ log_dir Type string Default <None> (Optional) The base directory used for relative log_file paths. This option is ignored if log_config_append is set. Deprecated Variations ┌────────┬────────┐ │Group │ Name │ ├────────┼────────┤ │DEFAULT │ logdir │ └────────┴────────┘ watch_log_file Type boolean Default False Uses logging handler designed to watch file system. When log file is moved or removed this handler will open a new log file with specified path instantaneously. It makes sense only if log_file option is specified and Linux platform is used. This option is ignored if log_config_append is set. use_syslog Type boolean Default False Use syslog for logging. Existing syslog format is DEPRECATED and will be changed later to honor RFC5424. This option is ignored if log_config_append is set. use_journal Type boolean Default False Enable journald for logging. If running in a systemd environment you may wish to enable journal support. Doing so will use the journal native protocol which includes structured metadata in addition to log messages.This option is ignored if log_config_append is set. syslog_log_facility Type string Default LOG_USER Syslog facility to receive log lines. This option is ignored if log_config_append is set. use_json Type boolean Default False Use JSON formatting for logging. This option is ignored if log_config_append is set. use_stderr Type boolean Default False Log output to standard error. This option is ignored if log_config_append is set. use_eventlog Type boolean Default False Log output to Windows Event Log. log_rotate_interval Type integer Default 1 The amount of time before the log files are rotated. This option is ignored unless log_rotation_type is set to “interval”. log_rotate_interval_type Type string Default days Valid Values Seconds, Minutes, Hours, Days, Weekday, Midnight Rotation interval type. The time of the last file change (or the time when the service was started) is used when scheduling the next rotation. max_logfile_count Type integer Default 30 Maximum number of rotated log files. max_logfile_size_mb Type integer Default 200 Log file maximum size in MB. This option is ignored if “log_rotation_type” is not set to “size”. log_rotation_type Type string Default none Valid Values interval, size, none Log rotation type. Possible values interval Rotate logs at predefined time intervals. size Rotate logs once they reach a predefined size. none Do not rotate log files. logging_context_format_string Type string Default %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(global_request_id)s %(request_id)s %(user_identity)s] %(instance)s%(message)s Format string to use for log messages with context. Used by oslo_log.formatters.ContextFormatter logging_default_format_string Type string Default %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s Format string to use for log messages when context is undefined. Used by oslo_log.formatters.ContextFormatter logging_debug_format_suffix Type string Default %(funcName)s %(pathname)s:%(lineno)d Additional data to append to log message when logging level for the message is DEBUG. Used by oslo_log.formatters.ContextFormatter logging_exception_prefix Type string Default %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s Prefix each line of exception output with this format. Used by oslo_log.formatters.ContextFormatter logging_user_identity_format Type string Default %(user)s %(project)s %(domain)s %(system_scope)s %(user_domain)s %(project_domain)s Defines the format string for %(user_identity)s that is used in logging_context_format_string. Used by oslo_log.formatters.ContextFormatter default_log_levels Type list Default ['amqp=WARN', 'amqplib=WARN', 'boto=WARN', 'qpid=WARN', 'sqlalchemy=WARN', 'suds=INFO', 'oslo.messaging=INFO', 'oslo_messaging=INFO', 'iso8601=WARN', 'requests.packages.urllib3.connectionpool=WARN', 'urllib3.connectionpool=WARN', 'websocket=WARN', 'requests.packages.urllib3.util.retry=WARN', 'urllib3.util.retry=WARN', 'keystonemiddleware=WARN', 'routes.middleware=WARN', 'stevedore=WARN', 'taskflow=WARN', 'keystoneauth=WARN', 'oslo.cache=INFO', 'oslo_policy=INFO', 'dogpile.core.dogpile=INFO'] List of package logging levels in logger=LEVEL pairs. This option is ignored if log_config_append is set. publish_errors Type boolean Default False Enables or disables publication of error events. instance_format Type string Default "[instance: %(uuid)s] " The format for an instance that is passed with the log message. instance_uuid_format Type string Default "[instance: %(uuid)s] " The format for an instance UUID that is passed with the log message. rate_limit_interval Type integer Default 0 Interval, number of seconds, of log rate limiting. rate_limit_burst Type integer Default 0 Maximum number of logged messages per rate_limit_interval. rate_limit_except_level Type string Default CRITICAL Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG or empty string. Logs with level greater or equal to rate_limit_except_level are not filtered. An empty string means that all levels are filtered. fatal_deprecations Type boolean Default False Enables or disables fatal status of deprecations. rpc_conn_pool_size Type integer Default 30 Minimum Value 1 Size of RPC connection pool. Deprecated Variations ┌────────┬────────────────────┐ │Group │ Name │ ├────────┼────────────────────┤ │DEFAULT │ rpc_conn_pool_size │ └────────┴────────────────────┘ conn_pool_min_size Type integer Default 2 The pool size limit for connections expiration policy conn_pool_ttl Type integer Default 1200 The time-to-live in sec of idle connections in the pool executor_thread_pool_size Type integer Default 64 Size of executor thread pool when executor is threading or eventlet. Deprecated Variations ┌────────┬──────────────────────┐ │Group │ Name │ ├────────┼──────────────────────┤ │DEFAULT │ rpc_thread_pool_size │ └────────┴──────────────────────┘ rpc_response_timeout Type integer Default 60 Seconds to wait for a response from a call. transport_url Type string Default rabbit:// The network address and optional user credentials for connecting to the messaging backend, in URL format. The expected format is: driver://[user:pass@]host:port[,[userN:passN@]hostN:portN]/virtual_host?query Example: rabbit://rabbitmq:password@127.0.0.1:5672// For full details on the fields in the URL see the documentation of oslo_messaging.TransportURL at https://docs.openstack.org/oslo.messaging/latest/reference/transport.html control_exchange Type string Default openstack The default exchange under which topics are scoped. May be overridden by an exchange name specified in the transport_url option. rpc_ping_enabled Type boolean Default False Add an endpoint to answer to ping calls. Endpoint is named oslo_rpc_server_ping coordination backend_url Type string Default <None> The backend URL to use for distributed coordination.By default it’s None which means that coordination is disabled. The coordination is implemented for distributed lock management and was tested with etcd.Coordination doesn’t work for file driver because lock files aren’t removed after lock releasing. cors allowed_origin Type list Default <None> Indicate whether this resource may be shared with the domain received in the requests “origin” header. Format: “<protocol>://<host>[:<port>]”, no trailing slash. Example: https://horizon.example.com allow_credentials Type boolean Default True Indicate that the actual request can include user credentials expose_headers Type list Default [] Indicate which headers are safe to expose to the API. Defaults to HTTP Simple Headers. max_age Type integer Default 3600 Maximum cache age of CORS preflight requests. allow_methods Type list Default ['OPTIONS', 'GET', 'HEAD', 'POST', 'PUT', 'DELETE', 'TRACE', 'PATCH'] Indicate which methods can be used during the actual request. allow_headers Type list Default [] Indicate which header field names may be used during the actual request. database sqlite_synchronous Type boolean Default True If True, SQLite uses synchronous mode. Deprecated Variations ─────────────────────────────── Group Name ─────────────────────────────── DEFAULT sqlite_synchronous ┌────────┬────────────────────┐ │ │ │ backend │ │ │ │ │ │ Type string │ │ │ │ │ │ Default │ │ │ sqlalchemy │ │ │ │ │ │ --
AUTHOR
unknown
COPYRIGHT
2023, OpenStack Foundation