---
title: Charmhub | Deploy Openstack Charmers Next Openstack Base Xenial Mitaka using
  Charmhub - The Open Operator Collection
description: Deploy the latest version of Openstack Charmers Next Openstack Base Xenial
  Mitaka on any cloud.
url: https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/keystone
---

##### We've discontinued the registration of new Bundles

New Bundle registrations are no longer accepted. Existing bundles remain functional. We recommend using the Juju Terraform Provider for new deployments.

[Learn more](https://discourse.charmhub.io/t/discontinuing-new-charmhub-bundle-registrations/15344)

# Openstack Charmers Next Openstack Base Xenial Mitaka

[OpenStack Charmers - Testing Charms](https://charmhub.io/publisher/openstack-charmers-next "View all packages from OpenStack Charmers - Testing Charms")
| bundle

* [OpenStack Charmers - Testing Charms](https://charmhub.io/publisher/openstack-charmers-next "View all packages from OpenStack Charmers - Testing Charms")
  | bundle

Platform:

stable 8

```
juju deploy openstack-charmers-next-openstack-base-xenial-mitaka
```

[Learn to deploy on juju >](https://juju.is/docs/juju/manage-applications)

* [Ceph Mon](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/ceph-mon)
* [Ceph Osd](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/ceph-osd)
* [Ceph Radosgw](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/ceph-radosgw)
* [Cinder](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/cinder)
* [Cinder Ceph](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/cinder-ceph)
* [Glance](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/glance)
* [Keystone](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/keystone)
* [Percona Cluster](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/percona-cluster)
* [Neutron Api](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/neutron-api)
* [Neutron Gateway](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/neutron-gateway)
* [Neutron Openvswitch](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/neutron-openvswitch)
* [Nova Cloud Controller](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/nova-cloud-controller)
* [Nova Compute](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/nova-compute)
* [Ntp](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/ntp)
* [Openstack Dashboard](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/openstack-dashboard)
* [Rabbitmq Server](https://charmhub.io/openstack-charmers-next-openstack-base-xenial-mitaka/configurations/rabbitmq-server)

[Learn about configurations >](https://juju.is/docs/juju/configuration#heading--application-configuration)

* action-managed-upgrade | boolean

  If True enables openstack upgrades for this charm via juju actions.
  You will still need to set openstack-origin to the new repository but
  instead of an upgrade running automatically across all units, it will
  wait for you to execute the openstack-upgrade action for this charm on
  each unit. If False it will revert to existing behavior of upgrading
  all units on config change.
* admin-password | string

  Default: None

  Admin password. To be used \*for testing only\*. Randomly generated by
  default. To retrieve the generated password run:
  .
  juju run --unit keystone/0 leader-get admin\_passwd
* admin-port | int

  Default: 35357

  Port the bind the Admin API server to.
* admin-role | string

  Default: Admin

  Admin role to be associated with admin and service users.
* admin-user | string

  Default: admin

  Default admin user to create and manage.
* assignment-backend | string

  Default: sql

  Keystone assignment backend, valid options are sql, ldap.
  .
  [DEPRECATED] this option should no longer be used to configure ldap.
  Instead the cs:keystone-ldap subordinate charm should be used to
  configure ldap backends. This option will be removed in the next release.
* catalog-cache-expiration | int

  Default: 60

  Amount of time (in seconds) the catalog should be cached for.
* database | string

  Default: keystone

  Keystone database name.
* database-user | string

  Default: keystone

  Username used for connecting to the Keystone database.
* debug | boolean

  Enable debug logging.
* default-authorization-ttl | int

  Default time (in minutes) for the validity of group memberships carried
  over from a federation mapping. Default is 0 which means disabled.
* dns-ha | boolean

  Use DNS HA with MAAS 2.0. Note if this is set do not set vip settings
  below.
* dogpile-cache-expiration | int

  Default: 600

  Amount of time (in seconds) to cache items in the dogpile.cache. This
  only applies to cached methods that do not have an explicitly defined
  cache expiration time.
* ec2-auth-ttl | int

  Default: 15

  The config item specifies the auth\_ttl otion in [credentials]. This is
  the length of time in minutes for which a signed EC2 or S3 token request
  is valid from the timestamp contained in the token request.
* fernet-max-active-keys | int

  Default: 3

  This is the maximum number of active keys when `token-provider` is set to
  "fernet". If has a minimum of 3, which includes the spare and staging
  keys. When set to 3, the rotation time for the keys is the same as the
  token expiration time. When set to a higher value, the rotation time is
  less than the `token-expiration` time as calculated by:
  .
  rotation-time = token-expiration / (fernet-max-active-keys - 2)
  .
  Please see the charm documentation for further details about how to use
  the Fernet token parameters to achieve a key strategy appropriate for the
  system in question.
* ha-bindiface | string

  Default: eth0

  Default network interface on which HA cluster will bind to communication
  with the other members of the HA Cluster.
* ha-mcastport | int

  Default: 5434

  Default multicast port number that will be used to communicate between
  HA Cluster nodes.
* haproxy-client-timeout | int

  Client timeout configuration in ms for haproxy, used in HA
  configurations. If not provided, default value of 90000ms is used.
* haproxy-connect-timeout | int

  Connect timeout configuration in ms for haproxy, used in HA
  configurations. If not provided, default value of 9000ms is used.
* haproxy-queue-timeout | int

  Queue timeout configuration in ms for haproxy, used in HA
  configurations. If not provided, default value of 9000ms is used.
* haproxy-server-timeout | int

  Server timeout configuration in ms for haproxy, used in HA
  configurations. If not provided, default value of 90000ms is used.
* harden | string

  Apply system hardening. Supports a space-delimited list of modules
  to run. Supported modules currently include os, ssh, apache and mysql.
* identity-backend | string

  Default: sql

  Keystone identity backend, valid options are: sql, ldap, pam.
  .
  NOTE: this option should no longer be used to configure ldap. Instead
  the cs:keystone-ldap subordinate charm should be used to configure ldap
  backends.
* identity-cache-expiration | int

  Amount of time (in seconds) user identity information should be cached
  for. This impacts user information such as email and description, which
  could display stale information from cache after being updated. Reducing
  cache\_time means more database queries so if an impact is perceived
  this value should be increased. If unspecified, the default value of
  600 is used.
* keystone-admin-role | string

  Default: Admin

  Role that allows admin operations (access to all operations).
* keystone-service-admin-role | string

  Default: KeystoneServiceAdmin

  Role that allows acting as service admin.
* ldap-config-flags | string

  Default: None

  Comma-separated options for ldap configuration.
  .
  [DEPRECATED] this option should no longer be used to configure ldap.
  Instead the cs:keystone-ldap subordinate charm should be used to
  configure ldap backends. This option will be removed in the next release.
* ldap-password | string

  Default: None

  Password of the ldap identity server.
  .
  [DEPRECATED] this option should no longer be used to configure ldap.
  Instead the cs:keystone-ldap subordinate charm should be used to
  configure ldap backends. This option will be removed in the next release.
* ldap-readonly | boolean

  Default: True

  Ldap identity server backend readonly to keystone.
  .
  [DEPRECATED] this option should no longer be used to configure ldap.
  Instead the cs:keystone-ldap subordinate charm should be used to
  configure ldap backends. This option will be removed in the next release.
* ldap-server | string

  Default: None

  Ldap server address for keystone identity backend.
  .
  [DEPRECATED] this option should no longer be used to configure ldap.
  Instead the cs:keystone-ldap subordinate charm should be used to
  configure ldap backends. This option will be removed in the next release.
* ldap-suffix | string

  Default: None

  Ldap server suffix to be used by keystone.
  .
  [DEPRECATED] this option should no longer be used to configure ldap.
  Instead the cs:keystone-ldap subordinate charm should be used to
  configure ldap backends. This option will be removed in the next release.
* ldap-user | string

  Default: None

  Username of the ldap identity server.
  .
  [DEPRECATED] this option should no longer be used to configure ldap.
  Instead the cs:keystone-ldap subordinate charm should be used to
  configure ldap backends. This option will be removed in the next release.
* log-level | string

  Default: WARNING

  Log level (WARNING, INFO, DEBUG, ERROR)
* nagios\_context | string

  Default: juju

  Used by the nrpe-external-master subordinate charm. A string that will
  be prepended to instance name to set the host name in nagios. So for
  instance the hostname would be something like 'juju-myservice-0'. If
  you are running multiple environments with the same services in them
  this allows you to differentiate between them.
* nagios\_servicegroups | string

  A comma-separated list of nagios servicegroups.
  If left empty, the nagios\_context will be used as the servicegroup
* openstack-origin | string

  Default: yoga

  Repository from which to install. May be one of the following:
  distro (default), ppa:somecustom/ppa, a deb url sources entry,
  or a supported Ubuntu Cloud Archive e.g.
  .
  cloud:<series>-<openstack-release>
  cloud:<series>-<openstack-release>/updates
  cloud:<series>-<openstack-release>/staging
  cloud:<series>-<openstack-release>/proposed
  .
  See https://wiki.ubuntu.com/OpenStack/CloudArchive for info on which
  cloud archives are available and supported.
  .
  NOTE: updating this setting to a source that is known to provide
  a later version of OpenStack will trigger a software upgrade unless
  action-managed-upgrade is set to True.
  NOTE: a corresponding public key from keyserver.ubuntu.com can be used
  when specifying a repository by appending the key separated by a | when
  entering the deb url sources entry, i.e.
  openstack-origin="deb <DEB URL>|<PUB KEY>"
* os-admin-hostname | string

  The hostname or address of the admin endpoints created for keystone
  in the keystone identity provider (itself).
  .
  This value will be used for admin endpoints. For example, an
  os-admin-hostname set to 'keystone.admin.example.com' with ssl enabled
  will create a admin endpoint for keystone as:
  .
  https://keystone.admin.example.com:5000/v2.0
* os-admin-network | string

  The IP address and netmask of the OpenStack Admin network (e.g.
  192.168.0.0/24)
  .
  This network will be used for admin endpoints.
* os-internal-hostname | string

  The hostname or address of the internal endpoints created for keystone
  in the keystone identity provider (itself).
  .
  This value will be used for internal endpoints. For example, an
  os-internal-hostname set to 'keystone.internal.example.com' with ssl
  enabled will create a internal endpoint for keystone as:
  .
  https://keystone.internal.example.com:5000/v2.0
* os-internal-network | string

  The IP address and netmask of the OpenStack Internal network (e.g.
  192.168.0.0/24)
  .
  This network will be used for internal endpoints.
* os-public-hostname | string

  The hostname or address of the public endpoints created for keystone
  in the keystone identity provider (itself).
  .
  This value will be used for public endpoints. For example, an
  os-public-hostname set to 'keystone.example.com' with ssl enabled will
  create a public endpoint for keystone as:
  .
  https://keystone.example.com:5000/v2.0
* os-public-network | string

  The IP address and netmask of the OpenStack Public network (e.g.
  192.168.0.0/24)
  .
  This network will be used for public endpoints.
* password-security-compliance | string

  This config item, if set, is used to configure the [security\_compliance]
  section of the keystone.conf file. This is used to control how the
  security around passwords is manged. Please refer to the charm README
  for full details.
  .
  The config item should be a YAML complaint string that sets the various
  allowed options in [security\_compliance]. The settings are checked by
  the charm, but it's possible that it may break things unexpectedly.
  Please ensure that the the README and relevant documentation is consulted
  before setting this configuration option.
* prefer-ipv6 | boolean

  If True enables IPv6 support. The charm will expect network interfaces
  to be configured with an IPv6 address. If set to False (default) IPv4
  is expected.
  .
  NOTE: these charms do not currently support IPv6 privacy extension. In
  order for this charm to function correctly, the privacy extension must be
  disabled and a non-temporary address must be configured/available on
  your network interface.
* preferred-api-version | int

  Use this keystone api version for keystone endpoints and advertise this
  version to identity client charms. For OpenStack releases < Queens this
  option defaults to 2; for Queens or later it defaults to 3.
* region | string

  Default: RegionOne

  Space-separated list of Openstack regions.
* role-cache-expiration | int

  Amount of time (in seconds) role assignments should be cached for.
  Relying on the global expiration\_time can cause applications that
  frequently add/remove role assignments to become slow or fail
  since assignment changes will take up to expiration\_time to sync
  across all caches. Reducing cache\_time means more database queries
  so if an impact is perceived this value should be increased.
* service-admin-prefix | string

  When service relations are joined they provide a name used to create a
  service admin\_username in keystone. The name used may be too crude for
  some situations e.g. pre-populated LDAP identity backend. If set, this
  option will be prepended to each service admin\_username.
* service-port | int

  Default: 5000

  Port the bind the API server to.
* service-tenant | string

  Default: services

  Name of tenant to associate service credentials.
* ssl\_ca | string

  base64-encoded SSL CA to use with the certificate and key provided -
  this is only required if you are providing a privately signed ssl\_cert
  and ssl\_key.
* ssl\_cert | string

  base64-encoded SSL certificate to install and use for API ports. Setting
  this value and ssl\_key will enable reverse proxying, point Keystone's
  entry in the Keystone catalog to use https, and override any certificate
  and key issued by Keystone (if it is configured to do so).
* ssl\_key | string

  base64-encoded SSL key to use with certificate specified as ssl\_cert.
* token-expiration | int

  Default: 3600

  Amount of time (in seconds) a token should remain valid.
* token-provider | string

  Transitional configuration option to enable migration to Fernet tokens
  prior to upgrade to OpenStack Rocky.
  .
  Supported values are 'uuid' and 'fernet'.
  .
  NOTE: This configuration option is honoured on OpenStack versions Ocata
  through Queens. For OpenStack Rocky it is a unconfigurable default.
  Silently ignored for all other versions.
* use-policyd-override | boolean

  If True then use the resource file named 'policyd-override' to install
  override YAML files in the service's policy.d directory. The resource
  file should be a ZIP file containing at least one yaml file with a .yaml
  or .yml extension. If False then remove the overrides.
* use-syslog | boolean

  Setting this to True will allow supporting services to log to syslog.
* verbose | boolean

  Enable verbose logging.
* vip | string

  Virtual IP(s) to use to front API services in HA configuration.
  .
  If multiple networks are being used, a VIP should be provided for each
  network, separated by spaces.
* vip\_cidr | int

  Default: 24

  Default CIDR netmask to use for HA vip when it cannot be automatically
  determined.
* vip\_iface | string

  Default: eth0

  Default network interface to use for HA vip when it cannot be
  automatically determined.
* worker-multiplier | float

  The CPU core multiplier to use when configuring worker processes for
  this service. By default, the number of workers for each daemon is
  set to twice the number of CPU cores a service unit has. This default
  value will be capped to 4 workers unless this configuration option
  is set.
* wsgi-socket-rotation | boolean

  Default: True

  Allow users to disable Apache wsgi socket rotation. If not configured,
  this option sets True as the default value, which is consistent with the
  default value 'WSGISocketRotation On' in Apache. This option should be
  used with caution. Please read the Apache doc page for more information.
