SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
OPENSTACK KEYSTONE IDENTITY SERVICE
Kavit Munshi, CTO, Aptira
WHAT IS KEYSTONE?


Keystone is an OpenStack project that provides Identity, Token, Catalog and
Policy services for use specifically by projects in the OpenStack family. It
implements OpenStack’s Identity API.




The Identity services has two primary functions:

- User management: keep track of users and what they are permitted to do

- Service catalog: Provide a catalog of what services are available and where
their API endpoints are located
KEYSTONE ARCHITECTURE


Keystone is organized as a group of internal services exposed on one or many
endpoints.

1) Identity: The Identity service provides auth credential validation and data
   about Users, Tenants and Roles, as well as any associated metadata.

2) Token: The Token service validates and manages Tokens used for
   authenticating requests once a user/tenant’s credentials have already been
   verified.

3) Catalog: The Catalog service provides an endpoint registry used for endpoint
   discovery.

4) Policy: The Policy service provides a rule-based authorization engine
KEYSTONE ARCHITECTURE


Each of the services can configured to use a backend to allow Keystone to fit a
variety of environments and needs. The backend for each service is defined in
the keystone.conf file

1) KVS Backend: A simple backend interface meant to be further backended
   on anything that can support primary key lookups

2) SQL Backend: A SQL based backend using SQLAlchemy to store data
   persistently.

3) PAM Backend: Extra simple backend that uses the current system’s PAM
   service to authenticate, providing a one-to-one relationship between Users
   and Tenants.

4) LDAP Backend: The LDAP backend stored Users and Tenents in separate
   Subtrees.

5) Templated Backend: A simple Template used to configure Keystone
KEYSTONE ARCHITECTURE


Keystone Architecture Logical Diagram
KEYSTONE ARCHITECTURE
KEYSTONE FLOWCHART
KEYSTONE USER MANAGEMENT




The three main concepts of Identity user management are:

1) Users: A user represents a human user, and has associated information such as
   username, password and email.

2) Tenants: A tenant can be thought of as a project, group, or organization.
   Whenever you make requests to OpenStack services, you must specify a tenant.

3) Roles: A role captures what operations a user is permitted to perform in a given
   tenant.
KEYSTONE SERVICE MANAGEMENT



Keystone also acts as a service catalog to let other OpenStack systems know
where relevant API endpoints exist for OpenStack Services. The two main
concepts of Identity service management are:

- Services
- Endpoints

The Identity service also maintains a user that corresponds to each service (e.g.,
a user named nova, for the Compute service) and a special service tenant, which
is called service.
INSTALLING AND SETTING UP KEYSTONE


Keystone can be either be installed from the source or platform specific packages
available with various distributions. For the purposes of this presentation we will use
Ubuntu 12.04 with platform specific packages available in the repositories.

- sudo apt-get install keystone
- sudo apt-get install python-mysqldb mysql-server (install mysqldb to replace the
  default SQL lite DB)
- mysql> CREATE DATABASE keystone; (Create mysql database for the keystone to
  use)
- mysql> GRANT ALL ON keystone.* TO 'keystone'@'%' IDENTIFIED BY
  '[YOUR_KEYSTONE_PASSWORD]'; (Create mysql user to access the keystone DB)
- Change connection line in /etc/keystone.conf
  connection =
  mysql://keystone:[YOUR_KEYSTONE_PASSWORD]@[YOUR_KEYSTONE_SERVER]/key
  stone
- admin_token = 012345SECRET99TOKEN012345 (Set service token in keystone.conf)
- service keystone restart (Restart the keystone service to apply the changes
- keystone-manage db_sync (Initialise the new keystone database)
KEYSTONE USER MANAGEMENT



1) Create a user called Kavit
   keystone user-create --name=kavit --pass=test123 --email=kavit@aptira.com

2) Create a tenant called test
   keystone tenant-create --name=test

3) Create a role to use on our system
   keystone role-create –name=admin

4) Associate the role and the user with the tenant
   keystone user-role-add --user=USERID –role=ROLEID –tenant_id=TENANTID
KEYSTONE SERVICE MANAGEMENT

1) Create service tenant. This tenant contains all the services that we make known
   to the service catalog.
   keystone tenant-create –name=service

2) Create users for each Openstack service in the service catalog
   keystone user-create –name=nova –pass=test123 --
   email=nova@test.aptira.com

3) Give admin roles to the users nova, glance, etc to the tenant service.

4) Now that we have tenants, users and roles for each of the users, we need to
   create the services we wish authenticate users for.
   keystone service-create --name nova --type compute --description ’OpenStack
   Compute Service’
KEYSTONE SERVICE MANAGEMENT



5) Once the services are created, we will need to associate the endpoints or
network addresses where clients might connect to the services offered.

keystone endpoint-create --region myregion --service_id
1e93ee6c70f8468c88a5cb1b106753f3
--publicurl ’http://192.168.125.111:8774/v2/$(tenant_id)s’
--adminurl ’http://192.168.125.111:8774/v2/$(tenant_id)s’
--internalurl ’http://192.168.125.111:8774/v2/$(tenant_id)s’
KEYSTONE WORKFLOW
IMPORTANT RESOURCES AND LINKS


OpenStack keystone developer documentation
http://docs.openstack.org/developer/keystone/

OpenStack Identity Administration documentation
http://docs.openstack.org/trunk/openstack-compute/install/content/ch_installing-
openstack-identity-service.html

Keystone github
http://github.com/openstack/keystone

Keystone Launchpad site
https://launchpad.net/keystone
THE END

Mais conteúdo relacionado

Mais procurados

Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
Minh Le
 

Mais procurados (20)

Tìm hiểu về OpenStack
Tìm hiểu về OpenStackTìm hiểu về OpenStack
Tìm hiểu về OpenStack
 
Bài 2 Cài đặt Windows Server 2008 - Giáo trình FPT
Bài 2 Cài đặt Windows Server 2008 - Giáo trình FPTBài 2 Cài đặt Windows Server 2008 - Giáo trình FPT
Bài 2 Cài đặt Windows Server 2008 - Giáo trình FPT
 
Openstack Summit Vancouver 2018 - Multicloud Networking
Openstack Summit Vancouver 2018 - Multicloud NetworkingOpenstack Summit Vancouver 2018 - Multicloud Networking
Openstack Summit Vancouver 2018 - Multicloud Networking
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
 
OpenStack Tutorial
OpenStack TutorialOpenStack Tutorial
OpenStack Tutorial
 
Quick overview of Openstack architecture
Quick overview of Openstack architectureQuick overview of Openstack architecture
Quick overview of Openstack architecture
 
Dhcp
DhcpDhcp
Dhcp
 
Bài 3: Triển khai dịch vụ Active Directory - Giáo trình FPT
Bài 3: Triển khai dịch vụ Active Directory - Giáo trình FPTBài 3: Triển khai dịch vụ Active Directory - Giáo trình FPT
Bài 3: Triển khai dịch vụ Active Directory - Giáo trình FPT
 
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
 
OpenStack Load balancer
OpenStack Load balancerOpenStack Load balancer
OpenStack Load balancer
 
cấu hình cloudstack
cấu hình cloudstackcấu hình cloudstack
cấu hình cloudstack
 
오픈스택 멀티노드 설치 후기
오픈스택 멀티노드 설치 후기오픈스택 멀티노드 설치 후기
오픈스택 멀티노드 설치 후기
 
TỰ HỌC LPI 2
TỰ HỌC LPI 2TỰ HỌC LPI 2
TỰ HỌC LPI 2
 
Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...
Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...
Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...
 
OpenStack Architecture and Use Cases
OpenStack Architecture and Use CasesOpenStack Architecture and Use Cases
OpenStack Architecture and Use Cases
 
Introduction to OpenStack
Introduction to OpenStackIntroduction to OpenStack
Introduction to OpenStack
 
Database Firewall with Snort
Database Firewall with SnortDatabase Firewall with Snort
Database Firewall with Snort
 
Room 1 - 1 - Benoit TELLIER - On premise email inbound service with Apache James
Room 1 - 1 - Benoit TELLIER - On premise email inbound service with Apache JamesRoom 1 - 1 - Benoit TELLIER - On premise email inbound service with Apache James
Room 1 - 1 - Benoit TELLIER - On premise email inbound service with Apache James
 
Room 3 - 7 - Nguyễn Như Phúc Huy - Vitastor: a fast and simple Ceph-like bloc...
Room 3 - 7 - Nguyễn Như Phúc Huy - Vitastor: a fast and simple Ceph-like bloc...Room 3 - 7 - Nguyễn Như Phúc Huy - Vitastor: a fast and simple Ceph-like bloc...
Room 3 - 7 - Nguyễn Như Phúc Huy - Vitastor: a fast and simple Ceph-like bloc...
 
Issues of OpenStack multi-region mode
Issues of OpenStack multi-region modeIssues of OpenStack multi-region mode
Issues of OpenStack multi-region mode
 

Destaque (6)

OpenStack keystone identity service
OpenStack keystone identity serviceOpenStack keystone identity service
OpenStack keystone identity service
 
Deep dive into highly available open stack architecture openstack summit va...
Deep dive into highly available open stack architecture   openstack summit va...Deep dive into highly available open stack architecture   openstack summit va...
Deep dive into highly available open stack architecture openstack summit va...
 
openstack keystone
openstack keystoneopenstack keystone
openstack keystone
 
OpenStack GDL : Hacking keystone | 20 Octubre 2014
OpenStack GDL : Hacking keystone | 20 Octubre 2014OpenStack GDL : Hacking keystone | 20 Octubre 2014
OpenStack GDL : Hacking keystone | 20 Octubre 2014
 
Openstack Keystone
Openstack Keystone Openstack Keystone
Openstack Keystone
 
OpenStack Architecture
OpenStack ArchitectureOpenStack Architecture
OpenStack Architecture
 

Semelhante a OpenStack keystone identity service

Aptira presents OpenStack keystone identity service
Aptira presents OpenStack keystone identity serviceAptira presents OpenStack keystone identity service
Aptira presents OpenStack keystone identity service
OpenStack
 
Cache Security- Configuring a Secure Environment
Cache Security- Configuring a Secure EnvironmentCache Security- Configuring a Secure Environment
Cache Security- Configuring a Secure Environment
InterSystems Corporation
 
Introduction Openstack
Introduction OpenstackIntroduction Openstack
Introduction Openstack
Ranjith Kumar
 

Semelhante a OpenStack keystone identity service (20)

Aptira presents OpenStack keystone identity service
Aptira presents OpenStack keystone identity serviceAptira presents OpenStack keystone identity service
Aptira presents OpenStack keystone identity service
 
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio TavillaOpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
 
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio TavillaOpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
 
Building IAM for OpenStack
Building IAM for OpenStackBuilding IAM for OpenStack
Building IAM for OpenStack
 
CIS 2015- Building IAM for OpenStack- Steve Martinelli
CIS 2015- Building IAM for OpenStack- Steve MartinelliCIS 2015- Building IAM for OpenStack- Steve Martinelli
CIS 2015- Building IAM for OpenStack- Steve Martinelli
 
ppt
pptppt
ppt
 
Workshop - Openstack, Cloud Computing, Virtualization
Workshop - Openstack, Cloud Computing, VirtualizationWorkshop - Openstack, Cloud Computing, Virtualization
Workshop - Openstack, Cloud Computing, Virtualization
 
Openstack workshop @ Kalasalingam
Openstack workshop @ KalasalingamOpenstack workshop @ Kalasalingam
Openstack workshop @ Kalasalingam
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
 
Openstack: security beyond firewalls
Openstack: security beyond firewallsOpenstack: security beyond firewalls
Openstack: security beyond firewalls
 
OpenStack: Security Beyond Firewalls
OpenStack: Security Beyond FirewallsOpenStack: Security Beyond Firewalls
OpenStack: Security Beyond Firewalls
 
Cache Security- Configuring a Secure Environment
Cache Security- Configuring a Secure EnvironmentCache Security- Configuring a Secure Environment
Cache Security- Configuring a Secure Environment
 
OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback co...
OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback co...OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback co...
OpenStackSummitVancouver - CloudKitty an Open Source rating and chargeback co...
 
Dev ops operations openstack
Dev ops operations  openstackDev ops operations  openstack
Dev ops operations openstack
 
OpenStack Overview for Austin Cloud User Group
OpenStack Overview for Austin Cloud User GroupOpenStack Overview for Austin Cloud User Group
OpenStack Overview for Austin Cloud User Group
 
Mastering OpenStack - Episode 06 - Controller Nodes
Mastering OpenStack - Episode 06 - Controller NodesMastering OpenStack - Episode 06 - Controller Nodes
Mastering OpenStack - Episode 06 - Controller Nodes
 
7 - Introduction to OpenStack & SDN by Ady Saputra
7 - Introduction to OpenStack & SDN by Ady Saputra7 - Introduction to OpenStack & SDN by Ady Saputra
7 - Introduction to OpenStack & SDN by Ady Saputra
 
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
 
Open stack
Open stackOpen stack
Open stack
 
Introduction Openstack
Introduction OpenstackIntroduction Openstack
Introduction Openstack
 

Mais de openstackindia

Role of sdn controllers in open stack
Role of sdn controllers in open stackRole of sdn controllers in open stack
Role of sdn controllers in open stack
openstackindia
 
Outreachy with-openstack-zaqar
Outreachy with-openstack-zaqarOutreachy with-openstack-zaqar
Outreachy with-openstack-zaqar
openstackindia
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world application
openstackindia
 
Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges
openstackindia
 
Demistifying open stack storage
Demistifying open stack storageDemistifying open stack storage
Demistifying open stack storage
openstackindia
 

Mais de openstackindia (20)

Guts & OpenStack migration
Guts & OpenStack migrationGuts & OpenStack migration
Guts & OpenStack migration
 
Copr HD OpenStack Day India
Copr HD OpenStack Day IndiaCopr HD OpenStack Day India
Copr HD OpenStack Day India
 
OPNFV & OpenStack
OPNFV & OpenStackOPNFV & OpenStack
OPNFV & OpenStack
 
Your first patch to OpenStack
Your first patch to OpenStackYour first patch to OpenStack
Your first patch to OpenStack
 
OpenStack Neutron Behind The Senes
OpenStack Neutron Behind The SenesOpenStack Neutron Behind The Senes
OpenStack Neutron Behind The Senes
 
OpenStack Storage Buddy Ceph
OpenStack Storage Buddy CephOpenStack Storage Buddy Ceph
OpenStack Storage Buddy Ceph
 
OpenStack Watcher
OpenStack WatcherOpenStack Watcher
OpenStack Watcher
 
State of Containers in OpenStack
State of Containers in OpenStackState of Containers in OpenStack
State of Containers in OpenStack
 
The OpenStack Contribution Workflow
The OpenStack Contribution WorkflowThe OpenStack Contribution Workflow
The OpenStack Contribution Workflow
 
Introduction to Cinder
Introduction to CinderIntroduction to Cinder
Introduction to Cinder
 
OpenStack NFV Edge computing for IOT microservices
OpenStack NFV Edge computing for IOT microservicesOpenStack NFV Edge computing for IOT microservices
OpenStack NFV Edge computing for IOT microservices
 
OpenStack Tempest and REST API testing
OpenStack Tempest and REST API testingOpenStack Tempest and REST API testing
OpenStack Tempest and REST API testing
 
Deploying openstack using ansible
Deploying openstack using ansibleDeploying openstack using ansible
Deploying openstack using ansible
 
Ceph openstack-jun-2015-meetup
Ceph openstack-jun-2015-meetupCeph openstack-jun-2015-meetup
Ceph openstack-jun-2015-meetup
 
Role of sdn controllers in open stack
Role of sdn controllers in open stackRole of sdn controllers in open stack
Role of sdn controllers in open stack
 
Outreachy with-openstack-zaqar
Outreachy with-openstack-zaqarOutreachy with-openstack-zaqar
Outreachy with-openstack-zaqar
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world application
 
Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges
 
Demistifying open stack storage
Demistifying open stack storageDemistifying open stack storage
Demistifying open stack storage
 
OpenStack Heat
OpenStack HeatOpenStack Heat
OpenStack Heat
 

Último

Último (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

OpenStack keystone identity service

  • 1. OPENSTACK KEYSTONE IDENTITY SERVICE Kavit Munshi, CTO, Aptira
  • 2. WHAT IS KEYSTONE? Keystone is an OpenStack project that provides Identity, Token, Catalog and Policy services for use specifically by projects in the OpenStack family. It implements OpenStack’s Identity API. The Identity services has two primary functions: - User management: keep track of users and what they are permitted to do - Service catalog: Provide a catalog of what services are available and where their API endpoints are located
  • 3. KEYSTONE ARCHITECTURE Keystone is organized as a group of internal services exposed on one or many endpoints. 1) Identity: The Identity service provides auth credential validation and data about Users, Tenants and Roles, as well as any associated metadata. 2) Token: The Token service validates and manages Tokens used for authenticating requests once a user/tenant’s credentials have already been verified. 3) Catalog: The Catalog service provides an endpoint registry used for endpoint discovery. 4) Policy: The Policy service provides a rule-based authorization engine
  • 4. KEYSTONE ARCHITECTURE Each of the services can configured to use a backend to allow Keystone to fit a variety of environments and needs. The backend for each service is defined in the keystone.conf file 1) KVS Backend: A simple backend interface meant to be further backended on anything that can support primary key lookups 2) SQL Backend: A SQL based backend using SQLAlchemy to store data persistently. 3) PAM Backend: Extra simple backend that uses the current system’s PAM service to authenticate, providing a one-to-one relationship between Users and Tenants. 4) LDAP Backend: The LDAP backend stored Users and Tenents in separate Subtrees. 5) Templated Backend: A simple Template used to configure Keystone
  • 8. KEYSTONE USER MANAGEMENT The three main concepts of Identity user management are: 1) Users: A user represents a human user, and has associated information such as username, password and email. 2) Tenants: A tenant can be thought of as a project, group, or organization. Whenever you make requests to OpenStack services, you must specify a tenant. 3) Roles: A role captures what operations a user is permitted to perform in a given tenant.
  • 9. KEYSTONE SERVICE MANAGEMENT Keystone also acts as a service catalog to let other OpenStack systems know where relevant API endpoints exist for OpenStack Services. The two main concepts of Identity service management are: - Services - Endpoints The Identity service also maintains a user that corresponds to each service (e.g., a user named nova, for the Compute service) and a special service tenant, which is called service.
  • 10. INSTALLING AND SETTING UP KEYSTONE Keystone can be either be installed from the source or platform specific packages available with various distributions. For the purposes of this presentation we will use Ubuntu 12.04 with platform specific packages available in the repositories. - sudo apt-get install keystone - sudo apt-get install python-mysqldb mysql-server (install mysqldb to replace the default SQL lite DB) - mysql> CREATE DATABASE keystone; (Create mysql database for the keystone to use) - mysql> GRANT ALL ON keystone.* TO 'keystone'@'%' IDENTIFIED BY '[YOUR_KEYSTONE_PASSWORD]'; (Create mysql user to access the keystone DB) - Change connection line in /etc/keystone.conf connection = mysql://keystone:[YOUR_KEYSTONE_PASSWORD]@[YOUR_KEYSTONE_SERVER]/key stone - admin_token = 012345SECRET99TOKEN012345 (Set service token in keystone.conf) - service keystone restart (Restart the keystone service to apply the changes - keystone-manage db_sync (Initialise the new keystone database)
  • 11. KEYSTONE USER MANAGEMENT 1) Create a user called Kavit keystone user-create --name=kavit --pass=test123 --email=kavit@aptira.com 2) Create a tenant called test keystone tenant-create --name=test 3) Create a role to use on our system keystone role-create –name=admin 4) Associate the role and the user with the tenant keystone user-role-add --user=USERID –role=ROLEID –tenant_id=TENANTID
  • 12. KEYSTONE SERVICE MANAGEMENT 1) Create service tenant. This tenant contains all the services that we make known to the service catalog. keystone tenant-create –name=service 2) Create users for each Openstack service in the service catalog keystone user-create –name=nova –pass=test123 -- email=nova@test.aptira.com 3) Give admin roles to the users nova, glance, etc to the tenant service. 4) Now that we have tenants, users and roles for each of the users, we need to create the services we wish authenticate users for. keystone service-create --name nova --type compute --description ’OpenStack Compute Service’
  • 13. KEYSTONE SERVICE MANAGEMENT 5) Once the services are created, we will need to associate the endpoints or network addresses where clients might connect to the services offered. keystone endpoint-create --region myregion --service_id 1e93ee6c70f8468c88a5cb1b106753f3 --publicurl ’http://192.168.125.111:8774/v2/$(tenant_id)s’ --adminurl ’http://192.168.125.111:8774/v2/$(tenant_id)s’ --internalurl ’http://192.168.125.111:8774/v2/$(tenant_id)s’
  • 15. IMPORTANT RESOURCES AND LINKS OpenStack keystone developer documentation http://docs.openstack.org/developer/keystone/ OpenStack Identity Administration documentation http://docs.openstack.org/trunk/openstack-compute/install/content/ch_installing- openstack-identity-service.html Keystone github http://github.com/openstack/keystone Keystone Launchpad site https://launchpad.net/keystone