You can support us by downloading this article as PDF from the Link below. Download the guide as PDF
So far we’ve covered part one and part two of our Openstack Lab guide series. The aim of this series Labs is not to prepare you for Openstack Sys Admin role, but to help you understand how Openstack services are installed and Configured. This is good for students,IT professionals and any techie who want to venture into the fascinating world of Virtualization and Cloud Computing.

If you followed prior tutorials:

Openstack Liberty Lab PART ONE: Setup Networking and all Prerequisites

Openstack Liberty Lab PART TWO: Install Openstack Packages

You should have Keystone identity service installed. In this part of the series, we take closer look at all configuration options and parameters required in Keystone configuration file.

We won’t edit configuration files directly with text editors like nano or vim, instead we use openstack-config tool which will automate the process and make our work much simpler. Openstack-config is a utility for manipulating ini files. It comes installed with installation of openstack, the only thing you’ve to do is merely use it.
The first step is preparing database that Keystone will use. Since MariaDB database service is already¬† installed, you have to setup the password by running mysql_secure_installation tool. You don’t require this step if you’ve working database system in your server.

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20mysql_secure_installation%0A%0ANOTE%3A%20RUNNING%20ALL%20PARTS%20OF%20THIS%20SCRIPT%20IS%20RECOMMENDED%20FOR%20ALL%20MariaDB%0ASERVERS%20IN%20PRODUCTION%20USE!%20PLEASE%20READ%20EACH%20STEP%20CAREFULLY!%0AIn%20order%20to%20log%20into%20MariaDB%20to%20secure%20it%2C%20we’ll%20need%20the%20current%0Apassword%20for%20the%20root%20user.%20If%20you’ve%20just%20installed%20MariaDB%2C%20and%0Ayou%20haven’t%20set%20the%20root%20password%20yet%2C%20the%20password%20will%20be%20blank%2C%0Aso%20you%20should%20just%20press%20enter%20here.%0AEnter%20current%20password%20for%20root%20(enter%20for%20none)%3A%0AOK%2C%20successfully%20used%20password%2C%20moving%20on…%0ASetting%20the%20root%20password%20ensures%20that%20nobody%20can%20log%20into%20the%20MariaDB%0Aroot%20user%20without%20the%20proper%20authorisation.%0ASet%20root%20password%3F%20%5BY%2Fn%5D%20Y%0ANew%20password%3A%0ARe-enter%20new%20password%3A%0APassword%20updated%20successfully!%0AReloading%20privilege%20tables..%0A…%20Success!%0ABy%20default%2C%20a%20MariaDB%20installation%20has%20an%20anonymous%20user%2C%20allowing%20anyone%0Ato%20log%20into%20MariaDB%20without%20having%20to%20have%20a%20user%20account%20created%20for%0Athem.%20This%20is%20intended%20only%20for%20testing%2C%20and%20to%20make%20the%20installation%0Ago%20a%20bit%20smoother.%20You%20should%20remove%20them%20before%20moving%20into%20a%0Aproduction%20environment.%0ARemove%20anonymous%20users%3F%20%5BY%2Fn%5D%20Y%0A…%20Success!%0ANormally%2C%20root%20should%20only%20be%20allowed%20to%20connect%20from%20’localhost’.%20This%0Aensures%20that%20someone%20cannot%20guess%20at%20the%20root%20password%20from%20the%20network.%0ADisallow%20root%20login%20remotely%3F%20%5BY%2Fn%5D%20Y%0A…%20Success!%0ABy%20default%2C%20MariaDB%20comes%20with%20a%20database%20named%20’test’%20that%20anyone%20can%0Aaccess.%20This%20is%20also%20intended%20only%20for%20testing%2C%20and%20should%20be%20removed%0Abefore%20moving%20into%20a%20production%20environment.%0A%0A%0ARemove%20test%20database%20and%20access%20to%20it%3F%20%5BY%2Fn%5D%20Y%0A-%20Dropping%20test%20database…%0A…%20Success!%0A-%20Removing%20privileges%20on%20test%20database…%0A…%20Success!%0AReloading%20the%20privilege%20tables%20will%20ensure%20that%20all%20changes%20made%20so%20far%0Awill%20take%20effect%20immediately.%0AReload%20privilege%20tables%20now%3F%20%5BY%2Fn%5D%20Y%0ACleaning%20up…%0AAll%20done!%20If%20you’ve%20completed%20all%20of%20the%20above%20steps%2C%20your%20MariaDB%0Ainstallation%20should%20now%20be%20secure.%0AThanks%20for%20using%20MariaDB!%C2%A0%0A%0A”/]

Now login as root user and provide password you set above. Make sure MariaDB service is up and running:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20systemctl%20status%20mariadb.service%20%0A%E2%97%8F%20mariadb.service%20-%20MariaDB%20database%20server%0A%C2%A0%C2%A0%20Loaded%3A%20loaded%20(%2Fusr%2Flib%2Fsystemd%2Fsystem%2Fmariadb.service%3B%20enabled%3B%20vendor%20preset%3A%20disabled)%0A%C2%A0%C2%A0%20Active%3A%20active%20(running)%20since%20Mon%202016-03-28%2012%3A03%3A24%20EAT%3B%204h%2055min%20ago%0A%C2%A0Main%20PID%3A%202134%20(mysqld_safe)%0A%C2%A0%C2%A0%20CGroup%3A%20%2Fsystem.slice%2Fmariadb.service%0A%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%20%E2%94%9C%E2%94%802134%20%2Fbin%2Fsh%20%2Fusr%2Fbin%2Fmysqld_safe%20–basedir%3D%2Fusr%0A%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%20%E2%94%94%E2%94%802331%20%2Fusr%2Flibexec%2Fmysqld%20–basedir%3D%2Fusr%20–datadir%3D%2Fvar%2Flib%2Fmysql…%0A%0AMar%2028%2012%3A03%3A13%20controller%20systemd%5B1%5D%3A%20Starting%20MariaDB%20database%20server…%0AMar%2028%2012%3A03%3A15%20controller%20mysqld_safe%5B2134%5D%3A%20160328%2012%3A03%3A15%20mysqld_safe%20Lo….%0AMar%2028%2012%3A03%3A16%20controller%20mysqld_safe%5B2134%5D%3A%20160328%2012%3A03%3A16%20mysqld_safe%20St…l%0AMar%2028%2012%3A03%3A24%20controller%20systemd%5B1%5D%3A%20Started%20MariaDB%20database%20server.%0AHint%3A%20Some%20lines%20were%20ellipsized%2C%20use%20-l%20to%20show%20in%20full.%0A%5Broot%40controller%20~%5D%23%C2%A0″/]

If not, do:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%C2%A0%5Broot%40controller%20~%5D%23%20systemctl%20start%20mariadb.service%0A%C2%A0%5Broot%40controller%20~%5D%23%20systemctl%20enabled%20mariadb.service%C2%A0″/]

Steps used to configure Keystone are namely:

  1. Create Database

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20mysql%20-u%20root%20-p%0AEnter%20password%3A%20%0AWelcome%20to%20the%20MariaDB%20monitor.%C2%A0%20Commands%20end%20with%20%3B%20or%20g.%0AYour%20MariaDB%20connection%20id%20is%2013%0AServer%20version%3A%205.5.44-MariaDB%20MariaDB%20Server%0A%0ACopyright%20(c)%202000%2C%202015%2C%20Oracle%2C%20MariaDB%20Corporation%20Ab%20and%20others.%0A%0AType%20’help%3B’%20or%20’h’%20for%20help.%20Type%20’c’%20to%20clear%20the%20current%20input%20statement.%0A%0AMariaDB%20%5B(none)%5D%3E%20create%20database%20keystone%3B%0AMariaDB%20%5B(none)%5D%3E%20grant%20all%20privileges%20on%20keystone.*%20to%20keystone%40’localhost’%20identified%20by%20’moonstack’%3B%0AMariaDB%20%5B(none)%5D%3E%20grant%20all%20privileges%20on%20keystone.*%20to%20keystone%40’%25’%20identified%20by%20’moonstack’%3B%0AMariaDB%20%5B(none)%5D%3E%20flush%20privileges%3B%0AMariaDB%20%5B(none)%5D%3E%20exit%3B”/]

Replace moonstack with your desired password for keystone database user.

  1. Configure Keystone

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20openstack-config%20–set%20%2Fetc%2Fkeystone%2Fkeystone.conf%20DEFAULT%20admin_token%20admintoken%0A%5Broot%40controller%20~%5D%23%20openstack-config%20–set%20%2Fetc%2Fkeystone%2Fkeystone.conf%20database%20connection%20mysql%3A%2F%2Fkeystone%3Amoonstack%40192.168.1.60%2Fkeystone%0A%5Broot%40controller%20~%5D%23%20openstack-config%20–set%20%2Fetc%2Fkeystone%2Fkeystone.conf%20memcache%20servers%20localhost%3A11211%0A%5Broot%40controller%20~%5D%23%20openstack-config%20–set%20%2Fetc%2Fkeystone%2Fkeystone.conf%20token%20provider%20uuid%0A%5Broot%40controller%20~%5D%23%20openstack-config%20–set%20%2Fetc%2Fkeystone%2Fkeystone.conf%20token%20driver%20memcache%0A%5Broot%40controller%20~%5D%23%20openstack-config%20–set%20%2Fetc%2Fkeystone%2Fkeystone.conf%20revoke%20driver%20sql”/]

Explanations:
admintoken: This is the initial administration token.Replace with admin token you want to use, you can generate it with openssl command, like:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%C2%A0%20%5Broot%40controller%20~%5D%23%20openssl%20rand%20-hex%208%0A”/]

moonstack: Keysone database password configured in step 1,while creating keystone database.
192.168.1.60: Ip address of the controller since it’s all in one installation, equivalent to ip address of server running MySQL service.
keystone: is the database name used by keystone

  1. Populate the Identity service database:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20su%20-s%20%2Fbin%2Fsh%20-c%20%22keystone-manage%20db_sync%22%20keystone%0A”/]

Configure http server (Apache):

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20echo%20ServerName%20192.168.1.60%20%3E%3E%20%2Fetc%2Fhttpd%2Fconf%2Fhttpd.conf%0A”/]

  • ¬† Create the /etc/httpd/conf.d/wsgi-keystone.conf file

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20cat%20%3E%20%2Fetc%2Fhttpd%2Fconf.d%2Fwsgi-keystone.conf%20%3C%3CEOF%0AListen%205000%0AListen%2035357%20%3CVirtualHost%20*%3A5000%3E%0A%0A%0AWSGIDaemonProcess%20keystone-public%20processes%3D5%20threads%3D1%20user%3Dkeystone%20group%3Dkeystone%20display-name%3D%25%7BGROUP%7D%0AWSGIProcessGroup%20keystone-public%0AWSGIScriptAlias%20%2F%20%2Fusr%2Fbin%2Fkeystone-wsgi-public%0AWSGIApplicationGroup%20%25%7BGLOBAL%7D%0AWSGIPassAuthorization%20On%0A%3CIfVersion%20%3E%3D%202.4%3E%0AErrorLogFormat%20%22%25%7Bcu%7Dt%20%25M%22%0A%3C%2FIfVersion%3E%0AErrorLog%20%2Fvar%2Flog%2Fhttpd%2Fkeystone-error.log%0ACustomLog%20%2Fvar%2Flog%2Fhttpd%2Fkeystone-access.log%20combined%0A%3CDirectory%20%2Fusr%2Fbin%3E%0A%3CIfVersion%20%3E%3D%202.4%3E%0ARequire%20all%20granted%0A%3C%2FIfVersion%3E%0A%3CIfVersion%20%3C%202.4%3E%0AOrder%20allow%2Cdeny%0AAllow%20from%20all%0A%3C%2FIfVersion%3E%0A%3C%2FDirectory%3E%0A%3C%2FVirtualHost%3E%20%3CVirtualHost%20*%3A35357%3E%0A%0A%0AWSGIDaemonProcess%20keystone-admin%20processes%3D5%20threads%3D1%20user%3Dkeystone%20group%3Dkeystone%20display-name%3D%25%7BGROUP%7D%0AWSGIProcessGroup%20keystone-admin%0AWSGIScriptAlias%20%2F%20%2Fusr%2Fbin%2Fkeystone-wsgi-admin%0AWSGIApplicationGroup%20%25%7BGLOBAL%7D%0AWSGIPassAuthorization%20On%0A%3CIfVersion%20%3E%3D%202.4%3E%0AErrorLogFormat%20%22%25%7Bcu%7Dt%20%25M%22%0A%3C%2FIfVersion%3E%0AErrorLog%20%2Fvar%2Flog%2Fhttpd%2Fkeystone-error.log%0ACustomLog%20%2Fvar%2Flog%2Fhttpd%2Fkeystone-access.log%20combined%0A%3CDirectory%20%2Fusr%2Fbin%3E%0A%3CIfVersion%20%3E%3D%202.4%3E%0ARequire%20all%20granted%0A%3C%2FIfVersion%3E%0A%3CIfVersion%20%3C%202.4%3E%0AOrder%20allow%2Cdeny%0AAllow%20from%20all%0A%3C%2FIfVersion%3E%0A%3C%2FDirectory%3E%0A%3C%2FVirtualHost%3E%0AEOF”/]

 

Reload httpd:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20systemctl%20reload%20httpd.service%0A”/]

  1. Add services, roles and users to keystone

Load Environment:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20export%20OS_TOKEN%3Dadmintoken%20%0A%5Broot%40controller%20~%5D%23%20export%20OS_URL%3Dhttp%3A%2F%2F192.168.1.60%3A35357%2Fv3%20%0A%5Broot%40controller%20~%5D%23%20export%20OS_IDENTITY_API_VERSION%3D3″/]

Replace admintoken with your token, 192.168.1.60 with your ip.

  • Add admin and Member Roles:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20openstack%20role%20create%20admin%20%0A%2B——-%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B——-%2B———————————-%2B%0A%7C%20id%20%7C%20ef185921b0114f879e4fc1927516de75%20%7C%0A%7C%20name%20%7C%20admin%20%7C%0A%2B——-%2B———————————-%2B%0A%5Broot%40controller%20~%5D%23%20openstack%20role%20create%20Member%20%0A%2B——-%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B——-%2B———————————-%2B%0A%7C%20id%20%7C%202b0d67fc55fd4cb8b29301a6dbe33445%20%7C%0A%7C%20name%20%7C%20Member%20%7C%0A%2B——-%2B———————————-%2B”/]

  • Add admin and service projects:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20openstack%20project%20create%20–domain%20default%20–description%20%22Admin%20Project%22%20admin%20%0A%5Broot%40controller%20~%5D%23%20openstack%20project%20create%20–domain%20default%20–description%20%22Service%20Project%22%20service%20%0A%2B————-%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B————-%2B———————————-%2B%0A%7C%20description%20%7C%20Service%20Project%20%7C%0A%7C%20domain_id%20%7C%20default%20%7C%0A%7C%20enabled%20%7C%20True%20%7C%0A%7C%20id%20%7C%209c3ec09f5e08442eb211612f99cd22ad%20%7C%0A%7C%20is_domain%20%7C%20False%20%7C%0A%7C%20name%20%7C%20service%20%7C%0A%7C%20parent_id%20%7C%20None%20%7C%0A%2B————-%2B———————————-%2B%0A%5Broot%40controller%20~%5D%23″/]

  • Add admin user account and add admin user to in admin role:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20openstack%20user%20create%20–domain%20default%20–project%20admin%20–password%20moonstack%20admin%0A%2B——————–%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B——————–%2B———————————-%2B%0A%7C%20default_project_id%20%7C%20abc5d2a310ad46fba0b2a311a187088b%20%7C%0A%7C%20domain_id%20%7C%20default%20%7C%0A%7C%20enabled%20%7C%20True%20%7C%0A%7C%20id%20%7C%20faf51d1898204d38aff144c8c1248c7d%20%7C%0A%7C%20name%20%7C%20admin%20%7C%0A%2B——————–%2B———————————-%2B%0A%5Broot%40controller%20~%5D%23%20openstack%20role%20add%20–project%20admin%20–user%20admin%20admin%20%0A%5Broot%40controller%20~%5D%23″/]

  • Confirm settings:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20openstack%20user%20list%20%0A%2B———————————-%2B——-%2B%0A%7C%20ID%20%7C%20Name%20%7C%0A%2B———————————-%2B——-%2B%0A%7C%20faf51d1898204d38aff144c8c1248c7d%20%7C%20admin%20%7C%0A%2B———————————-%2B——-%2B%0A%5Broot%40controller%20~%5D%23%20openstack%20role%20list%20%0A%2B———————————-%2B——–%2B%0A%7C%20ID%20%7C%20Name%20%7C%0A%2B———————————-%2B——–%2B%0A%7C%202b0d67fc55fd4cb8b29301a6dbe33445%20%7C%20Member%20%7C%0A%7C%20ef185921b0114f879e4fc1927516de75%20%7C%20admin%20%7C%0A%2B———————————-%2B——–%2B%0A%5Broot%40controller%20~%5D%23%20openstack%20project%20list%20%0A%2B———————————-%2B———%2B%0A%7C%20ID%20%7C%20Name%20%7C%0A%2B———————————-%2B———%2B%0A%7C%209c3ec09f5e08442eb211612f99cd22ad%20%7C%20service%20%7C%0A%7C%20abc5d2a310ad46fba0b2a311a187088b%20%7C%20admin%20%7C%0A%2B———————————-%2B———%2B%0A”/]

  1. Add service entity and API endpoints; internal,public and admin endpoints:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20openstack%20service%20create%20–name%20keystone%20–description%20%22OpenStack%20Identity%22%20identity%20%0A%2B————-%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B————-%2B———————————-%2B%0A%7C%20description%20%7C%20OpenStack%20Identity%20%7C%0A%7C%20enabled%20%7C%20True%20%7C%0A%7C%20id%20%7C%204d3aa109aa534ceb92187549a5e728bf%20%7C%0A%7C%20name%20%7C%20keystone%20%7C%0A%7C%20type%20%7C%20identity%20%7C%0A%2B————-%2B———————————-%2B%0A%5Broot%40controller%20~%5D%23%20export%20controller%3D192.168.1.60%20%0A%5Broot%40controller%20~%5D%23%20openstack%20endpoint%20create%20–region%20RegionOne%20identity%20public%20http%3A%2F%2F%24controller%3A5000%2Fv2.0%20%0A%2B————–%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B————–%2B———————————-%2B%0A%7C%20enabled%20%7C%20True%20%7C%0A%7C%20id%20%7C%20651d5f5fc4bb4d6db1b74b217b6fcda5%20%7C%0A%7C%20interface%20%7C%20public%20%7C%0A%7C%20region%20%7C%20RegionOne%20%7C%0A%7C%20region_id%20%7C%20RegionOne%20%7C%0A%7C%20service_id%20%7C%204d3aa109aa534ceb92187549a5e728bf%20%7C%0A%7C%20service_name%20%7C%20keyst%20%7C%0A%7C%20service_type%20%7C%20identi%20%7C%0A%7C%20url%20%7C%20http%3A%2F%2F192.168.1.60%3A5000%2Fv2.0%20%7C%0A%2B————–%2B———————————-%2B%0A%5Broot%40controller%20~%5D%23%20openstack%20endpoint%20create%20–region%20RegionOne%20identity%20internal%20http%3A%2F%2F%24controller%3A5000%2Fv2.0%20%0A%2B————–%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B————–%2B———————————-%2B%0A%7C%20enabled%20%7C%20True%20%7C%0A%7C%20id%20%7C%20f714e382f39748afaf8bd2d5e0054c24%20%7C%0A%7C%20interface%20%7C%20internal%20%7C%0A%7C%20region%20%7C%20RegionOne%20%7C%0A%7C%20region_id%20%7C%20RegionOne%20%7C%0A%7C%20service_id%20%7C%204d3aa109aa534ceb92187549a5e728bf%20%7C%0A%7C%20service_name%20%7C%20keystone%20%7C%0A%7C%20service_type%20%7C%20identity%20%7C%0A%7C%20url%20%7C%20http%3A%2F%2F192.168.1.60%3A5000%2Fv2.0%20%7C%0A%2B————–%2B———————————-%2B%0A%5Broot%40controller%20~%5D%23%20openstack%20endpoint%20create%20–region%20RegionOne%20identity%20admin%20http%3A%2F%2F%24controller%3A35357%2Fv2.0%20%0A%2B————–%2B———————————-%2B%0A%7C%20Field%20%7C%20Value%20%7C%0A%2B————–%2B———————————-%2B%0A%7C%20enabled%20%7C%20True%20%7C%0A%7C%20id%20%7C%2081b112cbfbd949578262a4fd3ebce9fd%20%7C%0A%7C%20interface%20%7C%20admin%20%7C%0A%7C%20region%20%7C%20RegionOne%20%7C%0A%7C%20region_id%20%7C%20RegionOne%20%7C%0A%7C%20service_id%20%7C%204d3aa109aa534ceb92187549a5e728bf%20%7C%0A%7C%20service_name%7C%20keystone%20%7C%0A%7C%20service_type%20%7C%20identity%20%7C%0A%7C%20url%20%7C%20http%3A%2F%2F192.168.1.60%3A35357%2Fv2.0%20%7C%0A%2B————–%2B———————————-%2B%0A%5Broot%40controller%20~%5D%23″/]

  • Confirm settings:

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”%5Broot%40controller%20~%5D%23%20openstack%20endpoint%20list%20%0A%2B———————————-%2B———–%2B————–%2B————–%2B———%2B———–%2B——————————–%2B%0A%7C%20ID%20%7C%20Region%20%7C%20Service%20Name%20%7C%20Service%20Type%20%7C%20Enabled%20%7C%20Interface%20%7C%20URL%20%7C%0A%2B———————————-%2B———–%2B————–%2B————–%2B———%2B———–%2B——————————–%2B%0A%7C%20651d5f5fc4bb4d6db1b74b217b6fcda5%20%7C%20RegionOne%20%7C%20keystone%20%7C%20identity%20%7C%20True%20%7C%20public%20%7C%20http%3A%2F%2F192.168.1.60%3A5000%2Fv2.0%20%7C%0A%7C%2081b112cbfbd949578262a4fd3ebce9fd%20%7C%20RegionOne%20%7C%20keystone%20%7C%20identity%20%7C%20True%20%7C%20admin%20%7C%20http%3A%2F%2F192.168.1.60%3A35357%2Fv2.0%20%7C%0A%7C%20f714e382f39748afaf8bd2d5e0054c24%20%7C%20RegionOne%20%7C%20keystone%20%7C%20identity%20%7C%20True%20%7C%20internal%20%7C%20http%3A%2F%2F192.168.1.60%3A5000%2Fv2.0%20%7C%0A%2B———————————-%2B———–%2B————–%2B————–%2B———%2B———–%2B——————————–%2B%0A%5Broot%40controller%20~%5D%23%20openstack%20service%20list%20%0A%2B———————————-%2B———-%2B———-%2B%0A%7C%20ID%20%7C%20Name%20%7C%20Type%20%7C%0A%2B———————————-%2B———-%2B———-%2B%0A%7C%204d3aa109aa534ceb92187549a5e728bf%20%7C%20keystone%20%7C%20identity%20%7C%0A%2B———————————-%2B———-%2B———-%2B”/]

You’ve completed Keystone identity service configuration. In our next article we’ll talk about complete configuration of Glance image service.
PREVIOUS ARTICLE:

Openstack Liberty Lab PART TWO: Install Openstack Packages

NEXT ARTICLE:

Openstack Liberty Lab PART FOUR: Configuring Glance Image Service

You can support us by downloading this article as PDF from the Link below. Download the guide as PDF

LEAVE A REPLY

Please enter your comment!
Please enter your name here