Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installazione e configurazione del servizio Identity (Keystone) | ||||||||
Line: 349 to 349 | ||||||||
| ||||||||
Deleted: | ||||||||
< < | Dove <GLANCE_SERVER_HOSTNAME> è l'hostname del server sui è installato il servizio Glance. Nel nostro caso è "openstack-01.cnaf.infn.it". | |||||||
Added: | ||||||||
> > | Dove <GLANCE_SERVER_HOSTNAME> è l'hostname del server sui è installato il servizio Glance. Nel nostro caso è "openstack-01.cnaf.infn.it". | |||||||
Troubleshooting |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installazione e configurazione del servizio Identity (Keystone) | ||||||||
Line: 356 to 356 | ||||||||
Troubleshooting
| ||||||||
Deleted: | ||||||||
< < |
| |||||||
[root@clstr-09 ~]# keystone tenant-list +----------------------------------+-------------+---------+ |
Line: 1 to 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Installazione e configurazione del servizio Identity (Keystone) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Line: 358 to 358 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Changed: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
< < | # yum install curl
# curl -d '{"auth": {"tenantName": "adminTenant", "passwordCredentials":{"username": "adminUser", "password": "************"}}}' -H "Content-type:application/json" http://hostname1.domain:35357/v2.0/tokens![]()
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
> > | [root@clstr-09 ~]# keystone tenant-list
+----------------------------------+-------------+---------+
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- MatteoManzali - 2012-10-10 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installazione e configurazione del servizio Identity (Keystone) | ||||||||
Line: 104 to 104 | ||||||||
Dove <ADMIN_TENANT_ID> è l'ID del tenant appena creato, mentre <ADMIN_PASSWORD> è la password scelta per l'utente "adminUser". | ||||||||
Changed: | ||||||||
< < | Creazione dei ruoli admin e memberRole | |||||||
> > | Creazione del ruolo "admin" | |||||||
| ||||||||
Line: 118 to 118 | ||||||||
# export ADMIN_ROLE_ID=2f196d11ff954c67befc3f190195f47c | ||||||||
Deleted: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT role-create --name memberRole
+----------+----------------------------------+
| |||||||
Assegnazione del ruolo "admin" all'utente "AdminUser"
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $ADMIN_USER_ID --tenant_id $ADMIN_TENANT_ID --role $ADMIN_ROLE_ID | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user_id $ADMIN_USER_ID --tenant_id $ADMIN_TENANT_ID --role_id $ADMIN_ROLE_ID | |||||||
Dove <ADMIN_USER_ID> e <ADMIN_TENANT_ID> sono rispettivamente gli ID di user e tenant appena creati. $ADMIN_ROLE_ID è invece l'id del ruolo "admin" esportato nell'istruzione precedente. Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
Line: 184 to 177 | ||||||||
| ||||||||
Changed: | ||||||||
< < | keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $GLANCE_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID | |||||||
> > | keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user_id $GLANCE_USER_ID --tenant_id $SERVICE_TENANT_ID --role_id $ADMIN_ROLE_ID | |||||||
Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
Line: 212 to 205 | ||||||||
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $NOVA_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID
Nota bene: non viene visualizzato nulla se il comando ha successo.
Creazione ed inserimento dell'utente associato a EC2
Creazione ed inserimento dell'utente associato a Swift
| |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user_id $NOVA_USER_ID --tenant_id $SERVICE_TENANT_ID --role_id $ADMIN_ROLE_ID | |||||||
Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
Line: 331 to 272 | ||||||||
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_SERVICE_ID --publicurl='http:// | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_SERVICE_ID --publicurl='http:// | |||||||
+-------------+--------------------------------------------------------+
| ||||||||
Line: 412 to 352 | ||||||||
Dove <GLANCE_SERVER_HOSTNAME> è l'hostname del server sui è installato il servizio Glance. Nel nostro caso è "openstack-01.cnaf.infn.it". | ||||||||
Deleted: | ||||||||
< < | Definizione del servizio compatibility (EC2)
Definizione del servizio object storage (Swift)Il servizio object storage richiede un endpoint specifico per ogni tenant.
| |||||||
Troubleshooting
| ||||||||
Line: 540 to 415 | ||||||||
} ], "endpoints_links": [], | ||||||||
Deleted: | ||||||||
< < | "name": "ec2",
"type": "ec2"
},
{
"endpoints": [
{
| |||||||
"name": "keystone", "type": "identity" } |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
Installazione e configurazione del servizio Identity (Keystone) | ||||||||
Line: 597 to 597 | ||||||||
</verbatim -- MatteoManzali - 2012-10-10 | ||||||||
Added: | ||||||||
> > |
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installazione e configurazione del servizio Identity (Keystone) | ||||||||
Line: 53 to 53 | ||||||||
# keystone-manage db_sync | ||||||||
Added: | ||||||||
> > | ||||||||
Creazione di tenant, utente e ruolo per l'amministratore e del tenant per i serviziPer comodità in questa sezione si utilizzeranno delle variabili d'ambiente settate come segue: | ||||||||
Line: 157 to 158 | ||||||||
# export SERVICE_TENANT_ID=73016aa2c9ca4aeba3736cf44cc8433b | ||||||||
Added: | ||||||||
> > | ||||||||
Creazione ed inserimento degli utenti associati ai serviziUna volta creato il "Service Tenant", si andrà ad inserire al suo interno un utente per ogni servizio che si vuole aggiungere. | ||||||||
Line: 267 to 269 | ||||||||
Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
Added: | ||||||||
> > | ||||||||
Definizione dei serviziKeystone agisce anche come catalogo dei servizi per permettere alle altre componenti OpenStack di conoscere quali sono gli endpoint dei vari servizi OpenStack. | ||||||||
Line: 474 to 477 | ||||||||
Dove <SWIFT_SERVER_HOSTNAME> è l'hostname del server sui è installato il servizio Swift. Nel nostro caso è "openstack-04.cnaf.infn.it". | ||||||||
Added: | ||||||||
> > | ||||||||
Troubleshooting
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installazione e configurazione del servizio Identity (Keystone) | ||||||||
Line: 328 to 328 | ||||||||
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_SERVICE_ID --publicurl='http://openstack-01.cnaf.infn.it:8774/v2/%(tenant_id)s' --internalurl='http://openstack-01.cnaf.infn.it:8774/v2/%(tenant_id)s' --adminurl='http://openstack-01.cnaf.infn.it:8774/v2/%(tenant_id)s' | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_SERVICE_ID --publicurl='http:// | |||||||
+-------------+--------------------------------------------------------+
| ||||||||
Line: 341 to 341 | ||||||||
| ||||||||
Added: | ||||||||
> > | Dove <CLOUD_CONTROLLER_HOSTNAME> è l'hostname del Cloud Controller (Nova). Nel nostro caso è "openstack-01.cnaf.infn.it". | |||||||
Definizione del servizio volume (Volume)Il servizio volume richiede un endpoint specifico per ogni tenant. | ||||||||
Line: 362 to 363 | ||||||||
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_VOLUME_SERVICE_ID --publicurl='http://openstack-01.cnaf.infn.it:8776/v1/%(tenant_id)s' --internalurl='http://openstack-01.cnaf.infn.it:8776/v1/%(tenant_id)s' --adminurl='http://openstack-01.cnaf.infn.it:8776/v1/%(tenant_id)s' | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_VOLUME_SERVICE_ID --publicurl='http:// | |||||||
+-------------+--------------------------------------------------------+
| ||||||||
Line: 374 to 375 | ||||||||
| ||||||||
Added: | ||||||||
> > | Dove <CLOUD_CONTROLLER_HOSTNAME> è l'hostname del Cloud Controller (Nova). Nel nostro caso è "openstack-01.cnaf.infn.it". | |||||||
Definizione del servizio image (Glance)
| ||||||||
Line: 393 to 395 | ||||||||
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$GLANCE_IMAGE_SERVICE_ID --publicurl=http://openstack-01.cnaf.infn.it:9292/v1 --internalurl=http://openstack-01.cnaf.infn.it:9292/v1 --adminurl=http://openstack-01.cnaf.infn.it:9292/v1 | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$GLANCE_IMAGE_SERVICE_ID --publicurl=http:// | |||||||
+-------------+------------------------------------------+
| ||||||||
Line: 404 to 406 | ||||||||
| ||||||||
Changed: | ||||||||
< < | ||||||||
> > | Dove <GLANCE_SERVER_HOSTNAME> è l'hostname del server sui è installato il servizio Glance. Nel nostro caso è "openstack-01.cnaf.infn.it". | |||||||
Definizione del servizio compatibility (EC2) | ||||||||
Line: 424 to 426 | ||||||||
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$EC2_COMPATIBILITY_SERVICE_ID --publicurl=http://openstack-01.cnaf.infn.it:8773/services/Cloud --internalurl=http://openstack-01.cnaf.infn.it:8773/services/Cloud --adminurl=http://openstack-01.cnaf.infn.it:8773/services/Cloud | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$EC2_COMPATIBILITY_SERVICE_ID --publicurl=http:// | |||||||
+-------------+------------------------------------------------------+
| ||||||||
Line: 436 to 438 | ||||||||
| ||||||||
Added: | ||||||||
> > | Dove <EC2_SERVER_HOSTNAME> è l'hostname del server sui è installato il servizio EC2. Nel caso di questo prototipo EC2 non è stato installato. | |||||||
Definizione del servizio object storage (Swift)Il servizio object storage richiede un endpoint specifico per ogni tenant. | ||||||||
Line: 456 to 459 | ||||||||
| ||||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$OBJECT_STORAGE_SERVICE_ID --publicurl='http://openstack-01.cnaf.infn.it:8888/v1/AUTH_%(tenant_id)s' --internalurl='http://openstack-01.cnaf.infn.it:8888/v1/AUTH_%(tenant_id)s' --adminurl='http://openstack-01.cnaf.infn.it:8888/v1/AUTH_%(tenant_id)s' | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$OBJECT_STORAGE_SERVICE_ID --publicurl=' | |||||||
+-------------+-------------------------------------------------------------+
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Added: | ||||||||
> > | Dove <SWIFT_SERVER_HOSTNAME> è l'hostname del server sui è installato il servizio Swift. Nel nostro caso è "openstack-04.cnaf.infn.it". | |||||||
Troubleshooting
|
Line: 1 to 1 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Installazione e configurazione del servizio Identity (Keystone) | |||||||||||
Line: 53 to 53 | |||||||||||
# keystone-manage db_sync | |||||||||||
Deleted: | |||||||||||
< < | |||||||||||
Creazione di tenant, utente e ruolo per l'amministratore e del tenant per i serviziPer comodità in questa sezione si utilizzeranno delle variabili d'ambiente settate come segue:# export ADMIN_TOKEN=<ADMIN_TOKEN_VALUE> | |||||||||||
Changed: | |||||||||||
< < | # export KEYSTONE35357=http://hostname1.domain:35357/v2.0 # export KEYSTONE5000=http://hostname1.domain:5000/v2.0 | ||||||||||
> > | export OS_USERNAME=adminUser
export OS_PASSWORD= | ||||||||||
Dove <ADMIN_TOKEN_VALUE> è il valore del parametro admin_token contenuto nel file /etc/keystone/keystone.conf . | |||||||||||
Line: 68 to 71 | |||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name adminTenant --description "Admin Tenant" --enabled true | ||||||||||
> > | keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT tenant-create --name adminTenant --description "Admin Tenant" --enabled true | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | export ADMIN_TENANT_ID=db2cf825309c49989595fc2ff915dc7e | ||||||||||
Creazione dell'utente "adminUser"
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-create --tenant_id $ADMIN_TENANT_ID --name $OS_USERNAME --pass $OS_PASSWORD --enabled true | ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+ | |||||||||||
Deleted: | |||||||||||
< < | Dove <ADMIN_TENANT_ID> è l'ID del tenant appena creato, mentre <ADMIN_PASSWORD> è la password scelta per l'utente "adminUser". Nel caso in esempio <ADMIN_TENANT_ID> equivale a c10d9c9f296b47f8a1212dd7a98357e0 . | ||||||||||
Changed: | |||||||||||
< < | Creazione del ruolo "admin" | ||||||||||
> > | Dove <ADMIN_TENANT_ID> è l'ID del tenant appena creato, mentre <ADMIN_PASSWORD> è la password scelta per l'utente "adminUser".
Creazione dei ruoli admin e memberRole | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 role-create --name admin | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT role-create --name admin | ||||||||||
+----------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > |
# export ADMIN_ROLE_ID=2f196d11ff954c67befc3f190195f47c
# keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT role-create --name memberRole
+----------+----------------------------------+
| ||||||||||
Deleted: | |||||||||||
< < |
| ||||||||||
Assegnazione del ruolo "admin" all'utente "AdminUser"
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $ADMIN_USER_ID --tenant_id $ADMIN_TENANT_ID --role $ADMIN_ROLE_ID | ||||||||||
Added: | |||||||||||
> > | |||||||||||
Dove <ADMIN_USER_ID> e <ADMIN_TENANT_ID> sono rispettivamente gli ID di user e tenant appena creati. $ADMIN_ROLE_ID è invece l'id del ruolo "admin" esportato nell'istruzione precedente. Nota bene: non viene visualizzato nulla se il comando ha successo. | |||||||||||
Added: | |||||||||||
> > | |||||||||||
Creazione del tenant "service":Questo tenant conterrà tutti gli utenti dei servizi che si desidera far conoscere al service catalog. | |||||||||||
Line: 127 to 144 | |||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name service --description "Service Tenant" --enabled true | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT tenant-create --name service --description "Service Tenant" --enabled true | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | # export SERVICE_TENANT_ID=73016aa2c9ca4aeba3736cf44cc8433b | ||||||||||
Deleted: | |||||||||||
< < | |||||||||||
Creazione ed inserimento degli utenti associati ai serviziUna volta creato il "Service Tenant", si andrà ad inserire al suo interno un utente per ogni servizio che si vuole aggiungere. | |||||||||||
Deleted: | |||||||||||
< < | Per comodità è conveniente esportare come variabile d'ambiente l'id del tenant "service":
# export SERVICE_TENANT_ID=<SERVICE_TENANT_ID>Dove <SERVICE_TENANT_ID> è l'id del tenant appena creato, nel caso in esempio va scritto edc5b7a35c644466849123cc937f9a04 . | ||||||||||
Creazione ed inserimento dell'utente associato a Glance
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name glance --pass | ||||||||||
> > | keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-create --tenant_id $SERVICE_TENANT_ID --name glance --pass | ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+ | |||||||||||
Added: | |||||||||||
> > | export GLANCE_USER_ID=90ee5ac051eb4d1eaa543243987968a6 | ||||||||||
Added: | |||||||||||
> > | |||||||||||
Dove <GLANCE_PASSWORD> è la password che si desidera associare all'utente del servizio Glance.
| |||||||||||
Line: 167 to 182 | |||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||||
> > | keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $GLANCE_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID | ||||||||||
Changed: | |||||||||||
< < | Dove <GLANCE_USER_ID> è l'id dello user appena creato, nel caso in esempio va scritto f085dd93f0ae42daa1a0623b9ec978f4 . | ||||||||||
> > | |||||||||||
Nota bene: non viene visualizzato nulla se il comando ha successo.
Creazione ed inserimento dell'utente associato a Nova
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name nova --pass | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-create --tenant_id $SERVICE_TENANT_ID --name nova --pass | ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+ | |||||||||||
Added: | |||||||||||
> > | export NOVA_USER_ID=9b2d55e2f8164be5a9805a39588f4659 | ||||||||||
Added: | |||||||||||
> > | |||||||||||
Dove <NOVA_PASSWORD> è la password che si desidera associare all'utente del servizio Nova.
| |||||||||||
Line: 190 to 208 | |||||||||||
Dove <NOVA_PASSWORD> è la password che si desidera associare all'utente del servizio Nova.
| |||||||||||
Added: | |||||||||||
> > | |||||||||||
Changed: | |||||||||||
< < | keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $NOVA_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID | ||||||||||
Changed: | |||||||||||
< < | Dove <NOVA_USER_ID> è l'id dello user appena creato, nel caso in esempio va scritto 6916a161eb55476a8b2615dae7d00f27 . | ||||||||||
> > | |||||||||||
Nota bene: non viene visualizzato nulla se il comando ha successo.
Creazione ed inserimento dell'utente associato a EC2
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name ec2 --pass | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-create --tenant_id $SERVICE_TENANT_ID --name ec2 --pass | ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+ | |||||||||||
Added: | |||||||||||
> > | export EC2_USER_ID=ea9ed6847b814e8e8f315b15ac987ce3 | ||||||||||
Dove <EC2_PASSWORD> è la password che si desidera associare all'utente del servizio EC2.
| |||||||||||
Changed: | |||||||||||
< < | keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $EC2_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID | ||||||||||
Deleted: | |||||||||||
< < | Dove <EC2_USER_ID> è l'id dello user appena creato, nel caso in esempio va scritto de4ca5902e6f47ffa3e00a37bff6364c . | ||||||||||
Nota bene: non viene visualizzato nulla se il comando ha successo.
Creazione ed inserimento dell'utente associato a Swift
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name swift --pass | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-create --tenant_id $SERVICE_TENANT_ID --name swift --pass | ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+ | |||||||||||
Added: | |||||||||||
> > | export SWIFT_USER_ID=995ee845a29147b7a93443054d185c3b | ||||||||||
Dove <SWIFT_PASSWORD> è la password che si desidera associare all'utente del servizio Swift.
| |||||||||||
Changed: | |||||||||||
< < | keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $SWIFT_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID | ||||||||||
Changed: | |||||||||||
< < | Dove <SWIFT_USER_ID> è l'id dello user appena creato, nel caso in esempio va scritto e79e37013e944d89b1430e31dae316fa . | ||||||||||
> > | |||||||||||
Nota bene: non viene visualizzato nulla se il comando ha successo. | |||||||||||
Deleted: | |||||||||||
< < | |||||||||||
Definizione dei serviziKeystone agisce anche come catalogo dei servizi per permettere alle altre componenti OpenStack di conoscere quali sono gli endpoint dei vari servizi OpenStack. | |||||||||||
Line: 257 to 279 | |||||||||||
Definizione del servizio identity (Keystone)
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=keystone --type=identity --description="Keystone Identity Service" | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=keystone --type=identity --description="Keystone Identity Service" | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | export KEYSTONE_SERVICE_ID=c2b7f0514dde412ea6c1fccac6437bb7 export KEYSTONE5000=http://openstack-01.cnaf.infn.it:5000/v2.0 | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id= | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$KEYSTONE_SERVICE_ID --publicurl=$KEYSTONE5000 --internalurl=$KEYSTONE5000 --adminurl=$ENDPOINT +-------------+----------------------------------------------+ | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | +-------------+------------------------------------+
| ||||||||||
> > | +-------------+----------------------------------------------+
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
Deleted: | |||||||||||
< < | Dove <KEYSTONE_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto cfda291164a2416f99ddffc137ba14f9 . | ||||||||||
Definizione del servizio compute (Nova) | |||||||||||
Changed: | |||||||||||
< < | Il servizio compute richiede un endpoint specifico per ogni tenant. La stringa %(tenant_id)s ed i singoli apici che racchiudono i valori di publicurl, internalurl e adminurl devono essere digitati esattamente come mostrato sia per l'endpoint compute che per l'endpoint volume e l'endpoint object storage (paragrafi successivi). | ||||||||||
> > | Il servizio compute richiede un endpoint specifico per ogni tenant. La stringa %(tenant_id)s ed i singoli apici che racchiudono i valori di publicurl , internalurl e adminurl devono essere digitati esattamente come mostrato sia per l'endpoint compute che per l'endpoint volume e l'endpoint object storage (paragrafi successivi). | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=nova --type=compute --description="Nova Compute Service" | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=nova --type=compute --description="Nova Compute Service" | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | export NOVA_COMPUTE_SERVICE_ID=5bfe94c4ff80410ab60b635cc99e2476 | ||||||||||
Added: | |||||||||||
> > | |||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id=
| ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_SERVICE_ID --publicurl='http://openstack-01.cnaf.infn.it:8774/v2/%(tenant_id)s'
--internalurl='http://openstack-01.cnaf.infn.it:8774/v2/%(tenant_id)s' --adminurl='http://openstack-01.cnaf.infn.it:8774/v2/%(tenant_id)s'
+-------------+--------------------------------------------------------+
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
Deleted: | |||||||||||
< < | Dove <NOVA_COMPUTE_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto 83486ca8422c4cb0aa4be1a231556ee3 . | ||||||||||
Definizione del servizio volume (Volume)Il servizio volume richiede un endpoint specifico per ogni tenant.
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=volume --type=volume --description="Nova Volume Service" | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=volume --type=volume --description="Nova Volume Service" | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | export NOVA_VOLUME_SERVICE_ID=f99ba2241e014295aa3ecfcda6633100 | ||||||||||
Added: | |||||||||||
> > | |||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id= | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_VOLUME_SERVICE_ID --publicurl='http://openstack-01.cnaf.infn.it:8776/v1/%(tenant_id)s' --internalurl='http://openstack-01.cnaf.infn.it:8776/v1/%(tenant_id)s' --adminurl='http://openstack-01.cnaf.infn.it:8776/v1/%(tenant_id)s' +-------------+--------------------------------------------------------+ | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | +-------------+-----------------------------------------------+
| ||||||||||
> > | +-------------+--------------------------------------------------------+
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
Deleted: | |||||||||||
< < | Dove <NOVA_VOLUME_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto 475701d5fb534be291d0f09f4ce39e40 . | ||||||||||
Definizione del servizio image (Glance)
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=glance --type=image --description="Glance Image Service" | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=glance --type=image --description="Glance Image Service" | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | export GLANCE_IMAGE_SERVICE_ID=6c02494e7a534c91a7a01228a4093e63 | ||||||||||
Added: | |||||||||||
> > | |||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id= | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$GLANCE_IMAGE_SERVICE_ID --publicurl=http://openstack-01.cnaf.infn.it:9292/v1 --internalurl=http://openstack-01.cnaf.infn.it:9292/v1 --adminurl=http://openstack-01.cnaf.infn.it:9292/v1 +-------------+------------------------------------------+ | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | +-------------+----------------------------------+
| ||||||||||
> > | +-------------+------------------------------------------+
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
Deleted: | |||||||||||
< < | Dove <GLANCE_IMAGE_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto 97e15631bb8a4b2f8b41efd1ad3d53eb . | ||||||||||
Definizione del servizio compatibility (EC2)
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=ec2 --type=ec2 --description="EC2 Compatibility Service" | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=ec2 --type=ec2 --description="EC2 Compatibility Service" | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | export EC2_COMPATIBILITY_SERVICE_ID=0f30dac463d242668e999955f7ee3d61 | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id= | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$EC2_COMPATIBILITY_SERVICE_ID --publicurl=http://openstack-01.cnaf.infn.it:8773/services/Cloud --internalurl=http://openstack-01.cnaf.infn.it:8773/services/Cloud --adminurl=http://openstack-01.cnaf.infn.it:8773/services/Cloud +-------------+------------------------------------------------------+ | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | +-------------+---------------------------------------------+
| ||||||||||
> > | +-------------+------------------------------------------------------+
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
Deleted: | |||||||||||
< < | Dove <EC2_COMPATIBILITY_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto 26040267bd2744348f52785f8d806123 . | ||||||||||
Definizione del servizio object storage (Swift)Il servizio object storage richiede un endpoint specifico per ogni tenant.
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=swift --type=object-store --description="Object Storage Service" | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=swift --type=object-store --description="Object Storage Service" | ||||||||||
+-------------+----------------------------------+
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
| |||||||||||
Added: | |||||||||||
> > | export OBJECT_STORAGE_SERVICE_ID=5b978ae3aeb1456a9d14c76f1d0c7956 | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id= | ||||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$OBJECT_STORAGE_SERVICE_ID --publicurl='http://openstack-01.cnaf.infn.it:8888/v1/AUTH_%(tenant_id)s' --internalurl='http://openstack-01.cnaf.infn.it:8888/v1/AUTH_%(tenant_id)s' --adminurl='http://openstack-01.cnaf.infn.it:8888/v1/AUTH_%(tenant_id)s' +-------------+-------------------------------------------------------------+ | ||||||||||
| |||||||||||
Changed: | |||||||||||
< < | +-------------+----------------------------------------------------+
| ||||||||||
> > | +-------------+-------------------------------------------------------------+
| ||||||||||
| |||||||||||
Changed: | |||||||||||
< < |
| ||||||||||
> > |
| ||||||||||
Deleted: | |||||||||||
< < | Dove <OBJECT_STORAGE_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto 648da339ec2549fcae0331b96929dd82 . | ||||||||||
Deleted: | |||||||||||
< < | |||||||||||
Troubleshooting
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Changed: | ||||||||
< < | Installing and Configuring the Identity Service (KEYSTONE) | |||||||
> > | Installazione e configurazione del servizio Identity (Keystone) | |||||||
Changed: | ||||||||
< < | Installazione keystone | |||||||
> > | Installazione Keystone | |||||||
Server designato per l'installazione: hostname1.domain . | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
# yum install openstack-utils openstack-keystone python-keystoneclient | ||||||||
Line: 26 to 26 | ||||||||
Configurazione keystone | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
|
Line: 1 to 1 | |||||||||
---|---|---|---|---|---|---|---|---|---|
Installing and Configuring the Identity Service (KEYSTONE) | |||||||||
Line: 14 to 14 | |||||||||
# yum install mysql mysql-server MySQL-python | |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
# chkconfig mysqld on # service mysqld start | |||||||||
Line: 28 to 28 | |||||||||
Configurazione keystone
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
# openstack-db --init --service keystone | |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
connection = mysql://keystone:keystone@hostname1.domain/keystone | |||||||||
Changed: | |||||||||
< < | Nota bene: in keystone:keystone il primo keystone è il nome utente, il secondo è la password. Utilizzando il comando openstack-db --init --service keystone per l'inizializzazione del DB keystone verranno utilizzati quei valori di default. | ||||||||
> > | Nota bene: in keystone:keystone il primo keystone è il nome utente, il secondo è la password. Utilizzando il comando openstack-db --init --service keystone per l'inizializzazione del DB keystone verranno utilizzati quei valori di default. | ||||||||
| |||||||||
Line: 46 to 46 | |||||||||
| |||||||||
Changed: | |||||||||
< < | # service openstack-keystone restart | ||||||||
> > | # service openstack-keystone start | ||||||||
| |||||||||
Line: 54 to 54 | |||||||||
| |||||||||
Changed: | |||||||||
< < | Creazione di tenant, utente e ruolo per l'amministratore | ||||||||
> > | Creazione di tenant, utente e ruolo per l'amministratore e del tenant per i servizi | ||||||||
Per comodità in questa sezione si utilizzeranno delle variabili d'ambiente settate come segue:
# export ADMIN_TOKEN=<ADMIN_TOKEN_VALUE> | |||||||||
Line: 63 to 63 | |||||||||
Dove <ADMIN_TOKEN_VALUE> è il valore del parametro admin_token contenuto nel file /etc/keystone/keystone.conf . | |||||||||
Changed: | |||||||||
< < | Creazione del tenant "Devel-Tenant"Definizione di tenant: A container used to group or isolate resources and/or identity objects. Depending on the service operator, a tenant may map to a customer, account, organization, or project. | ||||||||
> > | Creazione del tenant "adminTenant"Definizione di tenant: Un tenant è un contenitore usato per raggruppare risorse o utenti. | ||||||||
| |||||||||
Changed: | |||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name Devel-Tenant --description "Devel Tenant" --enabled true | ||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name adminTenant --description "Admin Tenant" --enabled true | ||||||||
+-------------+----------------------------------+
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
+-------------+----------------------------------+
Creazione dell'utente "adminUser" | |||||||||
Deleted: | |||||||||
< < | USER: A digital representation of a person, system, or service who uses OpenStack cloud services. Identity authentication services will validate that incoming request are being made by the user who claims to be making the call. Users have a login and may be assigned tokens to access resources. Users may be directly assigned to a particular tenant and behave as if they are contained in that tenant. | ||||||||
| |||||||||
Changed: | |||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $DEVEL_TENANT_ID --name adminUser --pass < ADMIN_PASSWORD > --enabled true | ||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id | ||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||
Line: 97 to 95 | |||||||||
| |||||||||
Changed: | |||||||||
< < | Dove <ADMIN_PASSWORD> è la password scelta per l'amministratore che si desidera creare. | ||||||||
> > | Dove <ADMIN_TENANT_ID> è l'ID del tenant appena creato, mentre <ADMIN_PASSWORD> è la password scelta per l'utente "adminUser". Nel caso in esempio <ADMIN_TENANT_ID> equivale a c10d9c9f296b47f8a1212dd7a98357e0 . | ||||||||
Changed: | |||||||||
< < | Creazione del ruolo adminROLE: A personality that a user assumes when performing a specific set of operations. A role includes a set of right and privileges. A user assuming that role inherits those rights and privileges. In the identity service, a token that is issued to a user includes the list of roles that user can assume. Services that are being called by that user determine how they interpret the set of roles a user has and which operations or resources each roles grants access to. | ||||||||
> > | Creazione del ruolo "admin" | ||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 role-create --name admin | |||||||||
Deleted: | |||||||||
< < | |||||||||
+----------+----------------------------------+
| |||||||||
Line: 113 to 109 | |||||||||
| |||||||||
Added: | |||||||||
> > |
| ||||||||
Assegnazione del ruolo "admin" all'utente "AdminUser"
| |||||||||
Changed: | |||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||
Changed: | |||||||||
< < | Dove <ADMIN_USER_ID> , <DEVEL_TENANT_ID> e <ADMIN_ROLE_ID> sono rispettivamente gli ID di user, tenant e ruolo appena creati. Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
> > | Dove <ADMIN_USER_ID> e <ADMIN_TENANT_ID> sono rispettivamente gli ID di user e tenant appena creati. $ADMIN_ROLE_ID è invece l'id del ruolo "admin" esportato nell'istruzione precedente. Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
Changed: | |||||||||
< < | Creazione di tenant, utente e ruolo per GLANCESONO ARRIVATO QUIIIII! This tenant contains all the services that we make known to the service catalog. | ||||||||
> > | Creazione del tenant "service":Questo tenant conterrà tutti gli utenti dei servizi che si desidera far conoscere al service catalog. | ||||||||
Added: | |||||||||
> > |
| ||||||||
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name service --description "Service Tenant" --enabled true +-------------+----------------------------------+ | |||||||||
Line: 139 to 138 | |||||||||
+-------------+----------------------------------+ | |||||||||
Changed: | |||||||||
< < | Create a Glance Service User in the Service Tenant.You'll do this for any service you add to be in the Keystone service catalog.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name glance --pass $GLANCE_PASSW --enabled true | ||||||||
> > | Creazione ed inserimento degli utenti associati ai serviziUna volta creato il "Service Tenant", si andrà ad inserire al suo interno un utente per ogni servizio che si vuole aggiungere. | ||||||||
Added: | |||||||||
> > | Per comodità è conveniente esportare come variabile d'ambiente l'id del tenant "service":
# export SERVICE_TENANT_ID=<SERVICE_TENANT_ID>Dove <SERVICE_TENANT_ID> è l'id del tenant appena creato, nel caso in esempio va scritto edc5b7a35c644466849123cc937f9a04 . | ||||||||
Added: | |||||||||
> > | Creazione ed inserimento dell'utente associato a Glance
| ||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||
Line: 156 to 163 | |||||||||
| |||||||||
Added: | |||||||||
> > | Dove <GLANCE_PASSWORD> è la password che si desidera associare all'utente del servizio Glance. | ||||||||
Changed: | |||||||||
< < | Grant the admin role to the glance user in the service tenant. | ||||||||
> > |
| ||||||||
Changed: | |||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user $GLANCE_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID | ||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||
Added: | |||||||||
> > | Dove <GLANCE_USER_ID> è l'id dello user appena creato, nel caso in esempio va scritto f085dd93f0ae42daa1a0623b9ec978f4 .
Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
Changed: | |||||||||
< < | There is no output to this command.
Create a Nova Service User in the Service Tenant. | ||||||||
> > | Creazione ed inserimento dell'utente associato a Nova
| ||||||||
Changed: | |||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name nova --pass $NOVA_PASSW --enabled true | ||||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name nova --pass | ||||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| |||||||||
Line: 180 to 187 | |||||||||
| |||||||||
Added: | |||||||||
> > | Dove <NOVA_PASSWORD> è la password che si desidera associare all'utente del servizio Nova. | ||||||||
Changed: | |||||||||
< < |
Grant the admin role to the nova user in the service tenant. | ||||||||
> > |
| ||||||||
Changed: | |||||||||
< < | keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user $NOVA_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID | ||||||||
> > | keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | ||||||||
Changed: | |||||||||
< < | There is no output to this command.
Create an EC2 Service User in the Service Tenant.saltatoGrant the admin role to the ec2 user in the service tenant.saltato | ||||||||
> > | Dove <NOVA_USER_ID> è l'id dello user appena creato, nel caso in esempio va scritto 6916a161eb55476a8b2615dae7d00f27 .
Nota bene: non viene visualizzato nulla se il comando ha successo. | ||||||||
Changed: | |||||||||
< < | Create an Object Storage Service User in the Service Tenant.saltato | ||||||||
> > | Creazione ed inserimento dell'utente associato a EC2
| ||||||||
Changed: | |||||||||
< < | Grant the admin role to the swift user in the service tenant.saltato | ||||||||
> > |
| ||||||||
Added: | |||||||||
> > | Creazione ed inserimento dell'utente associato a Swift
| ||||||||
Changed: | |||||||||
< < | Enable KeystoneRiguarda S3, comunque il file/etc/keystone/keystone.conf è stato modificato seguendo la guida. | ||||||||
> > |
| ||||||||
Changed: | |||||||||
< < | Defining servicesKeystone also acts as a service catalog to let other OpenStack systems know where relevant API endpoints exist for OpenStack Services. The OpenStack Dashboard, in particular, uses the service catalog heavily - and this must be configured for the OpenStack Dashboard to properly function. | ||||||||
> > | Definizione dei serviziKeystone agisce anche come catalogo dei servizi per permettere alle altre componenti OpenStack di conoscere quali sono gli endpoint dei vari servizi OpenStack. | ||||||||
Changed: | |||||||||
< < | Il file /etc/keystone/keystone.conf deve contenere la seguente riga | ||||||||
> > |
| ||||||||
[catalog] driver = keystone.catalog.backends.sql.Catalog | |||||||||
Changed: | |||||||||
< < | Creating keystone services and service endpointsDefine the Identity service | ||||||||
> > | Definizione del servizio identity (Keystone)
| ||||||||
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=keystone --type=identity --description="Keystone Identity Service" | |||||||||
Deleted: | |||||||||
< < | |||||||||
+-------------+----------------------------------+
| |||||||||
Line: 225 to 266 | |||||||||
| |||||||||
Added: | |||||||||
> > | |||||||||
Changed: | |||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id=$KEYSTONE_SERVICE_ID --publicurl=$KEYSTONE5000 --internalurl=$KEYSTONE5000 --adminurl=$KEYSTONE35357 +-------------+-----------------------------------+ | ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < | +-------------+-----------------------------------+
| ||||||||
> > | +-------------+------------------------------------+
| ||||||||
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < | +-------------+-----------------------------------+ | ||||||||
> > | +-------------+------------------------------------+ | ||||||||
Added: | |||||||||
> > | Dove <KEYSTONE_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto cfda291164a2416f99ddffc137ba14f9 . | ||||||||
Added: | |||||||||
> > | Definizione del servizio compute (Nova)Il servizio compute richiede un endpoint specifico per ogni tenant. La stringa%(tenant_id)s ed i singoli apici che racchiudono i valori di publicurl, internalurl e adminurl devono essere digitati esattamente come mostrato sia per l'endpoint compute che per l'endpoint volume e l'endpoint object storage (paragrafi successivi). | ||||||||
Changed: | |||||||||
< < | Define the Compute serviceIt requires a separate endpoint for each tenant. Here we use the service tenant from the previous section. The%(tenant_id)s and single quotes around the publicurl, internalurl, and adminurl must be typed exactly as shown for both the Compute endpoint and the Volume endpoint. | ||||||||
> > |
| ||||||||
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=nova --type=compute --description="Nova Compute Service" | |||||||||
Deleted: | |||||||||
< < | |||||||||
+-------------+----------------------------------+
| |||||||||
Line: 257 to 298 | |||||||||
| |||||||||
Changed: | |||||||||
< < | keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id=$NOVA_COMPUTE_SERVICE_ID --publicurl='http://131.154.101.242:8774/v2/%(tenant_id)s' --internalurl='http://131.154.101.242:8774/v2/%(tenant_id)s' --adminurl='http://131.154.101.242:8774/v2/%(tenant_id)s' +-------------+----------------------------------------------+ | ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < | +-------------+----------------------------------------------+
| ||||||||
> > | +-------------+-----------------------------------------------+
| ||||||||
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < | +-------------+----------------------------------------------+ | ||||||||
> > | +-------------+-----------------------------------------------+ | ||||||||
Added: | |||||||||
> > | Dove <NOVA_COMPUTE_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto 83486ca8422c4cb0aa4be1a231556ee3 . | ||||||||
Added: | |||||||||
> > | Definizione del servizio volume (Volume)Il servizio volume richiede un endpoint specifico per ogni tenant. | ||||||||
Changed: | |||||||||
< < | Define the Volume servicesaltato It also requires a separate endpoint for each tenant. | ||||||||
> > |
| ||||||||
Changed: | |||||||||
< < | Define the Image service | ||||||||
> > | Definizione del servizio image (Glance)
| ||||||||
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=glance --type=image --description="Glance Image Service" | |||||||||
Deleted: | |||||||||
< < | |||||||||
+-------------+----------------------------------+
| |||||||||
Line: 285 to 354 | |||||||||
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id=$GLANCE_SERVICE_ID --publicurl=http://131.154.101.242:9292/v1 --internalurl=http://131.154.101.242:9292/v1 --adminurl=http://131.154.101.242:9292/v1 | ||||||||
> > |
| ||||||||
+-------------+----------------------------------+
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
+-------------+----------------------------------+ | |||||||||
Added: | |||||||||
> > | Dove <GLANCE_IMAGE_SERVICE_ID> è l'id del servizio appena creato, nel caso in esempio va scritto 97e15631bb8a4b2f8b41efd1ad3d53eb . | ||||||||
Changed: | |||||||||
< < | Define the EC2 compatibility servicesaltato | ||||||||
> > | Definizione del servizio compatibility (EC2)
| ||||||||
Changed: | |||||||||
< < | Define the Object Storage servicesaltato | ||||||||
> > | Definizione del servizio object storage (Swift)Il servizio object storage richiede un endpoint specifico per ogni tenant. | ||||||||
Added: | |||||||||
> > |
| ||||||||
Changed: | |||||||||
< < | Troubleshooting | ||||||||
> > | Troubleshooting
| ||||||||
Added: | |||||||||
> > |
| ||||||||
Changed: | |||||||||
< < | yum install curl openssl
curl -d '{"auth": {"tenantName": "adminTenant", "passwordCredentials":
{"username": "adminUser", "password": "********"}}}' -H "Content-type:application/json" http://131.154.101.242:35357/v2.0/tokens![]() | ||||||||
> > | # yum install curl
# curl -d '{"auth": {"tenantName": "adminTenant", "passwordCredentials":{"username": "adminUser", "password": "************"}}}' -H "Content-type:application/json" http://hostname1.domain:35357/v2.0/tokens![]() | ||||||||
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed | |||||||||
Changed: | |||||||||
< < | 183 252 126 252 0 114 4021 1819 --:--:-- --:--:-- --:--:-- 2225 | ||||||||
> > | 106 2446 101 2446 0 120 27990 1373 --:--:-- --:--:-- --:--:-- 27046 | ||||||||
{ "access": { | |||||||||
Changed: | |||||||||
< < | "serviceCatalog": {}, | ||||||||
> > | "serviceCatalog": [
{
"endpoints": [
{
| ||||||||
"token": { | |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
}, "user": { | |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < |
| ||||||||
> > |
| ||||||||
| |||||||||
Changed: | |||||||||
< < |
keystone user-list# keystone user-list +----------------------------------+---------+-------+-----------+ | id | enabled | email | name | +----------------------------------+---------+-------+-----------+ | 6916a161eb55476a8b2615dae7d00f27 | True | None | nova | | b0305faa3ace4671bc0399e71a0a1cc1 | True | None | adminUser | | f085dd93f0ae42daa1a0623b9ec978f4 | True | None | glance | +----------------------------------+---------+-------+-----------+ keystone service-list# keystone service-list +----------------------------------+----------+----------+---------------------------+ | id | name | type | description | +----------------------------------+----------+----------+---------------------------+ | 83486ca8422c4cb0aa4be1a231556ee3 | nova | compute | Nova Compute Service | | cfda291164a2416f99ddffc137ba14f9 | keystone | identity | Keystone Identity Service | +----------------------------------+----------+----------+---------------------------+ keystone endpoint-list# keystone endpoint-list +----------------------------------+-----------+----------------------------------------------+----------------------------------------------+----------------------------------------------+ | id | region | publicurl | internalurl | adminurl | +----------------------------------+-----------+----------------------------------------------+----------------------------------------------+----------------------------------------------+ | e63155b607e1433f9ae8c66bc87c8ebf | RegionOne | http://131.154.101.242:5000/v2.0 | http://131.154.101.242:5000/v2.0 | http://131.154.101.242:35357/v2.0 | | ef8874ac56b34b538536b053591d440e | RegionOne | http://131.154.101.242:8774/v2/%(tenant_id)s | http://131.154.101.242:8774/v2/%(tenant_id)s | http://131.154.101.242:8774/v2/%(tenant_id)s | +----------------------------------+-----------+----------------------------------------------+----------------------------------------------+----------------------------------------------+ | ||||||||
> > | </verbatim | ||||||||
Changed: | |||||||||
< < | -- PaoloVeronesi - 2012-08-30 | ||||||||
> > | -- MatteoManzali - 2012-10-10 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installing and Configuring the Identity Service (KEYSTONE) | ||||||||
Line: 25 to 25 | ||||||||
| ||||||||
Changed: | ||||||||
< < | Configurazione keystone | |||||||
> > | Configurazione keystone | |||||||
| ||||||||
Line: 53 to 53 | ||||||||
# keystone-manage db_sync | ||||||||
Changed: | ||||||||
< < | Setup inizialeCreare il file.keystonerc con le seguenti variabili: | |||||||
> > | Creazione di tenant, utente e ruolo per l'amministratorePer comodità in questa sezione si utilizzeranno delle variabili d'ambiente settate come segue: | |||||||
Changed: | ||||||||
< < | export ADMIN_TOKEN= XXXXXXXXXXXXXX export OS_USERNAME=adminUser export OS_PASSWORD=XXXXXXXXXXXXXX export OS_TENANT_NAME=Devel-Tenant export OS_AUTH_URL=http://stack-01.cnaf.infn.it:5000/v2.0/ | |||||||
> > | # export ADMIN_TOKEN= | |||||||
Changed: | ||||||||
< < | e farne il source con . .keystonerc | |||||||
> > | Dove <ADMIN_TOKEN_VALUE> è il valore del parametro admin_token contenuto nel file /etc/keystone/keystone.conf . | |||||||
Changed: | ||||||||
< < | Creazione del tenantTENANT: A container used to group or isolate resources and/or identity objects. Depending on the service operator, a tenant may map to a customer, account, organization, or project. | |||||||
> > | Creazione del tenant "Devel-Tenant"Definizione di tenant: A container used to group or isolate resources and/or identity objects. Depending on the service operator, a tenant may map to a customer, account, organization, or project. | |||||||
Added: | ||||||||
> > |
| |||||||
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name Devel-Tenant --description "Devel Tenant" --enabled true +-------------+----------------------------------+ | ||||||||
Line: 82 to 82 | ||||||||
Creazione dell'utente "adminUser"USER: A digital representation of a person, system, or service who uses OpenStack cloud services. Identity authentication services will validate that incoming request are being made by the user who claims to be making the call. Users have a login and may be assigned tokens to access resources. Users may be directly assigned to a particular tenant and behave as if they are contained in that tenant. | ||||||||
Added: | ||||||||
> > |
| |||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $DEVEL_TENANT_ID --name $OS_USERNAME --pass $OS_PASSWORD --enabled true | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $DEVEL_TENANT_ID --name adminUser --pass < ADMIN_PASSWORD > --enabled true | |||||||
+----------+-------------------------------------------------------------------------------------------------------------------------+
| ||||||||
Line: 96 to 97 | ||||||||
| ||||||||
Added: | ||||||||
> > | Dove <ADMIN_PASSWORD> è la password scelta per l'amministratore che si desidera creare. | |||||||
Changed: | ||||||||
< < |
Creazione del ruolo "admin" e "memberRole" | |||||||
> > | Creazione del ruolo admin | |||||||
ROLE: A personality that a user assumes when performing a specific set of operations. A role includes a set of right and privileges. A user assuming that role inherits those rights and privileges. In the identity service, a token that is issued to a user includes the list of roles that user can assume. Services that are being called by that user determine how they interpret the set of roles a user has and which operations or resources each roles grants access to. | ||||||||
Added: | ||||||||
> > |
| |||||||
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 role-create --name admin | ||||||||
Line: 109 to 112 | ||||||||
| ||||||||
Deleted: | ||||||||
< < |
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 role-create --name memberRole
+----------+----------------------------------+
| |||||||
Changed: | ||||||||
< < | Assegnazione del ruolo "admin" all'utente "AdminUser" | |||||||
> > | Assegnazione del ruolo "admin" all'utente "AdminUser"
| |||||||
Changed: | ||||||||
< < | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user $ADMIN_USER_ID --tenant_id $DEVEL_TENANT_ID --role $ADMIN_ROLE_ID | |||||||
> > | # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user | |||||||
Changed: | ||||||||
< < | Non viene visualizzato nulla se ha successo il comando | |||||||
> > | Dove <ADMIN_USER_ID> , <DEVEL_TENANT_ID> e <ADMIN_ROLE_ID> sono rispettivamente gli ID di user, tenant e ruolo appena creati. Nota bene: non viene visualizzato nulla se il comando ha successo. | |||||||
Changed: | ||||||||
< < | Create a Service Tenant. | |||||||
> > | Creazione di tenant, utente e ruolo per GLANCESONO ARRIVATO QUIIIII! | |||||||
This tenant contains all the services that we make known to the service catalog. |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installing and Configuring the Identity Service (KEYSTONE) | ||||||||
Line: 30 to 30 | ||||||||
| ||||||||
Changed: | ||||||||
< < | openstack-db --init --service keystone | |||||||
> > | # openstack-db --init --service keystone | |||||||
| ||||||||
Changed: | ||||||||
< < |
Se si e' settata una password diversa di keystone da quella presente in questa linea ricordarsi di modificarla anche qui.
admin_token = XXXXXXXXXXva modificato inserendo una stringa casuale ottenuta, per esempio utilizzando il comando: | |||||||
> > |
| |||||||
Changed: | ||||||||
< < | # export ADMIN_TOKEN=$(openssl rand -hex 10) | |||||||
> > | # openstack-config --set /etc/keystone/keystone.conf DEFAULT admin_token $(openssl rand -hex 10) | |||||||
Changed: | ||||||||
< < | la stringa cosi' ottenuta puo' essere inserita a mano nel file di configurazione o usando il comando: | |||||||
> > |
| |||||||
Changed: | ||||||||
< < | # openstack-config --set /etc/keystone/keystone.conf DEFAULT admin_token $ADMIN_TOKEN | |||||||
> > | # chkconfig openstack-keystone on # service openstack-keystone restart | |||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
Changed: | ||||||||
< < | chkconfig openstack-keystone on service openstack-keystone restart | |||||||
> > | # keystone-manage db_sync | |||||||
Deleted: | ||||||||
< < |
| |||||||
Setup inizialeCreare il file.keystonerc con le seguenti variabili: |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installing and Configuring the Identity Service (KEYSTONE) | ||||||||
Line: 6 to 6 | ||||||||
Installazione keystoneServer designato per l'installazione: hostname1.domain . | ||||||||
Changed: | ||||||||
< < | Installare keystone tramite il gestore di pacchetti yum : | |||||||
> > |
| |||||||
# yum install openstack-utils openstack-keystone python-keystoneclient | ||||||||
Changed: | ||||||||
< < | Installare il server mysql: | |||||||
> > |
| |||||||
# yum install mysql mysql-server MySQL-python | ||||||||
Changed: | ||||||||
< < | Permettere che il servizio mysqld venga avviato di default al riavvio del server: | |||||||
> > |
| |||||||
# chkconfig mysqld on # service mysqld start | ||||||||
Changed: | ||||||||
< < | Inserire la password di root : | |||||||
> > |
| |||||||
# mysqladmin -u root password ******* | ||||||||
Line: 28 to 28 | ||||||||
Configurazione keystone
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
openstack-db --init --service keystone
| ||||||||
Changed: | ||||||||
< < | connection = mysql://keystone: | |||||||
> > | connection = mysql://keystone:keystone@hostname1.domain/keystone | |||||||
Changed: | ||||||||
< < | Dove <YOUR_KEYSTONEDB_PASSWORD> va sostituito con la password scelta per l'utente keystone. | |||||||
> > | Nota bene: in keystone:keystone il primo keystone è il nome utente, il secondo è la password. Utilizzando il comando openstack-db --init --service keystone per l'inizializzazione del DB keystone verranno utilizzati quei valori di default. | |||||||
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Installing and Configuring the Identity Service (KEYSTONE) | ||||||||
Added: | ||||||||
> > | ||||||||
Installazione keystone | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > | Server designato per l'installazione: hostname1.domain . | |||||||
Added: | ||||||||
> > | Installare keystone tramite il gestore di pacchetti yum : | |||||||
Changed: | ||||||||
< < | chkconfig mysqld on service mysqld start mysqladmin -u root password ***** | |||||||
> > | # yum install openstack-utils openstack-keystone python-keystoneclient
Installare il server mysql:
# yum install mysql mysql-server MySQL-pythonPermettere che il servizio mysqld venga avviato di default al riavvio del server:
# chkconfig mysqld on # service mysqld startInserire la password di root :
# mysqladmin -u root password ******* | |||||||
Added: | ||||||||
> > | ||||||||
Configurazione keystone | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
Changed: | ||||||||
< < | connection = mysql://keystone:keystone@stack-01.cnaf.infn.it/keystone | |||||||
> > | connection = mysql://keystone: | |||||||
Changed: | ||||||||
< < | se si e' settata una password diversa di keystone da quella presente in questa linea ricordarsi di modificarla anche qui. | |||||||
> > | Dove <YOUR_KEYSTONEDB_PASSWORD> va sostituito con la password scelta per l'utente keystone. Se si e' settata una password diversa di keystone da quella presente in questa linea ricordarsi di modificarla anche qui. | |||||||
admin_token = XXXXXXXXXX |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Added: | ||||||||
> > |
Installing and Configuring the Identity Service (KEYSTONE)Installazione keystone
chkconfig mysqld on service mysqld start mysqladmin -u root password ******* Configurazione keystone
connection = mysql://keystone:keystone@stack-01.cnaf.infn.it/keystonese si e' settata una password diversa di keystone da quella presente in questa linea ricordarsi di modificarla anche qui.
admin_token = XXXXXXXXXXva modificato inserendo una stringa casuale ottenuta, per esempio utilizzando il comando: # export ADMIN_TOKEN=$(openssl rand -hex 10)la stringa cosi' ottenuta puo' essere inserita a mano nel file di configurazione o usando il comando: # openstack-config --set /etc/keystone/keystone.conf DEFAULT admin_token $ADMIN_TOKEN
chkconfig openstack-keystone on service openstack-keystone restart
Setup inizialeCreare il file.keystonerc con le seguenti variabili:
export ADMIN_TOKEN= XXXXXXXXXXXXXX export OS_USERNAME=adminUser export OS_PASSWORD=XXXXXXXXXXXXXX export OS_TENANT_NAME=Devel-Tenant export OS_AUTH_URL=http://stack-01.cnaf.infn.it:5000/v2.0/e farne il source con . .keystonerc
Creazione del tenantTENANT: A container used to group or isolate resources and/or identity objects. Depending on the service operator, a tenant may map to a customer, account, organization, or project.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name Devel-Tenant --description "Devel Tenant" --enabled true +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Devel Tenant | | enabled | True | | id | c10d9c9f296b47f8a1212dd7a98357e0 | | name | Devel-Tenant | +-------------+----------------------------------+ Creazione dell'utente "adminUser"USER: A digital representation of a person, system, or service who uses OpenStack cloud services. Identity authentication services will validate that incoming request are being made by the user who claims to be making the call. Users have a login and may be assigned tokens to access resources. Users may be directly assigned to a particular tenant and behave as if they are contained in that tenant.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $DEVEL_TENANT_ID --name $OS_USERNAME --pass $OS_PASSWORD --enabled true +----------+-------------------------------------------------------------------------------------------------------------------------+ | Property | Value | +----------+-------------------------------------------------------------------------------------------------------------------------+ | email | None | | enabled | True | | id | b0305faa3ace4671bc0399e71a0a1cc1 | | name | adminUser | | password | $6$rounds=40000$FXbQphsGDVj.Qw6B$q2e/hqj/Jnv7l.r3HW9VLTVyHaRbCB7pySvJ9prsWahvQ.GJyELRARXL4apPZAltov6f3FRAwfXu5yE5kAUbg0 | | tenantId | c10d9c9f296b47f8a1212dd7a98357e0 | +----------+-------------------------------------------------------------------------------------------------------------------------+ Creazione del ruolo "admin" e "memberRole"ROLE: A personality that a user assumes when performing a specific set of operations. A role includes a set of right and privileges. A user assuming that role inherits those rights and privileges. In the identity service, a token that is issued to a user includes the list of roles that user can assume. Services that are being called by that user determine how they interpret the set of roles a user has and which operations or resources each roles grants access to.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 role-create --name admin +----------+----------------------------------+ | Property | Value | +----------+----------------------------------+ | id | 6d67c71be79643e0bf497571510a6894 | | name | admin | +----------+----------------------------------+ # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 role-create --name memberRole +----------+----------------------------------+ | Property | Value | +----------+----------------------------------+ | id | ee2b7e07f35d4927a0f60b54c55fd1a4 | | name | memberRole | +----------+----------------------------------+ Assegnazione del ruolo "admin" all'utente "AdminUser"# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user $ADMIN_USER_ID --tenant_id $DEVEL_TENANT_ID --role $ADMIN_ROLE_IDNon viene visualizzato nulla se ha successo il comando Create a Service Tenant.This tenant contains all the services that we make known to the service catalog.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 tenant-create --name service --description "Service Tenant" --enabled true +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Service Tenant | | enabled | True | | id | edc5b7a35c644466849123cc937f9a04 | | name | service | +-------------+----------------------------------+ Create a Glance Service User in the Service Tenant.You'll do this for any service you add to be in the Keystone service catalog.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name glance --pass $GLANCE_PASSW --enabled true +----------+-------------------------------------------------------------------------------------------------------------------------+ | Property | Value | +----------+-------------------------------------------------------------------------------------------------------------------------+ | email | None | | enabled | True | | id | f085dd93f0ae42daa1a0623b9ec978f4 | | name | glance | | password | $6$rounds=40000$Jt2pbmLiN4liEImG$BheACef6A.wSgpj5EKn.XrAihLYy41y06rrAs3pEPr4Y/IF2uLSt9ADprzFGlATwfbimn98fp/e35wM2f783W1 | | tenantId | edc5b7a35c644466849123cc937f9a04 | +----------+-------------------------------------------------------------------------------------------------------------------------+ Grant the admin role to the glance user in the service tenant.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user $GLANCE_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_IDThere is no output to this command. Create a Nova Service User in the Service Tenant.# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-create --tenant_id $SERVICE_TENANT_ID --name nova --pass $NOVA_PASSW --enabled true +----------+-------------------------------------------------------------------------------------------------------------------------+ | Property | Value | +----------+-------------------------------------------------------------------------------------------------------------------------+ | email | None | | enabled | True | | id | 6916a161eb55476a8b2615dae7d00f27 | | name | nova | | password | $6$rounds=40000$Fi6fO6FbiWQH./Sg$ICF/qEdojYNNCSGQlicUAoFMntUREVz96DPPM4bOHsRBAB0t6vIOEDxSUh3q0IJXFGeH0YASNgmmVIU6CRklw. | | tenantId | edc5b7a35c644466849123cc937f9a04 | +----------+-------------------------------------------------------------------------------------------------------------------------+ Grant the admin role to the nova user in the service tenant.keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 user-role-add --user $NOVA_USER_ID --tenant_id $SERVICE_TENANT_ID --role $ADMIN_ROLE_IDThere is no output to this command. Create an EC2 Service User in the Service Tenant.saltatoGrant the admin role to the ec2 user in the service tenant.saltatoCreate an Object Storage Service User in the Service Tenant.saltatoGrant the admin role to the swift user in the service tenant.saltatoEnable KeystoneRiguarda S3, comunque il file/etc/keystone/keystone.conf è stato modificato seguendo la guida.
Defining servicesKeystone also acts as a service catalog to let other OpenStack systems know where relevant API endpoints exist for OpenStack Services. The OpenStack Dashboard, in particular, uses the service catalog heavily - and this must be configured for the OpenStack Dashboard to properly function. Il file/etc/keystone/keystone.conf deve contenere la seguente riga
[catalog] driver = keystone.catalog.backends.sql.Catalog Creating keystone services and service endpointsDefine the Identity service# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=keystone --type=identity --description="Keystone Identity Service" +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Keystone Identity Service | | id | cfda291164a2416f99ddffc137ba14f9 | | name | keystone | | type | identity | +-------------+----------------------------------+ # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id=$KEYSTONE_SERVICE_ID --publicurl=$KEYSTONE5000 --internalurl=$KEYSTONE5000 --adminurl=$KEYSTONE35357 +-------------+-----------------------------------+ | Property | Value | +-------------+-----------------------------------+ | adminurl | http://131.154.101.242:35357/v2.0 | | id | e63155b607e1433f9ae8c66bc87c8ebf | | internalurl | http://131.154.101.242:5000/v2.0 | | publicurl | http://131.154.101.242:5000/v2.0 | | region | RegionOne | | service_id | cfda291164a2416f99ddffc137ba14f9 | +-------------+-----------------------------------+ Define the Compute serviceIt requires a separate endpoint for each tenant. Here we use the service tenant from the previous section. The%(tenant_id)s and single quotes around the publicurl, internalurl, and adminurl must be typed exactly as shown for both the Compute endpoint and the Volume endpoint.
# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=nova --type=compute --description="Nova Compute Service" +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Nova Compute Service | | id | 83486ca8422c4cb0aa4be1a231556ee3 | | name | nova | | type | compute | +-------------+----------------------------------+ keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id=$NOVA_COMPUTE_SERVICE_ID --publicurl='http://131.154.101.242:8774/v2/%(tenant_id)s' --internalurl='http://131.154.101.242:8774/v2/%(tenant_id)s' --adminurl='http://131.154.101.242:8774/v2/%(tenant_id)s' +-------------+----------------------------------------------+ | Property | Value | +-------------+----------------------------------------------+ | adminurl | http://131.154.101.242:8774/v2/%(tenant_id)s | | id | ef8874ac56b34b538536b053591d440e | | internalurl | http://131.154.101.242:8774/v2/%(tenant_id)s | | publicurl | http://131.154.101.242:8774/v2/%(tenant_id)s | | region | RegionOne | | service_id | 83486ca8422c4cb0aa4be1a231556ee3 | +-------------+----------------------------------------------+ Define the Volume servicesaltato It also requires a separate endpoint for each tenant.Define the Image service# keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 service-create --name=glance --type=image --description="Glance Image Service" +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Glance Image Service | | id | 4ebfd4612e8145d188140dcbd62bcaff | | name | glance | | type | image | +-------------+----------------------------------+ # keystone --token $ADMIN_TOKEN --endpoint $KEYSTONE35357 endpoint-create --region RegionOne --service_id=$GLANCE_SERVICE_ID --publicurl=http://131.154.101.242:9292/v1 --internalurl=http://131.154.101.242:9292/v1 --adminurl=http://131.154.101.242:9292/v1 +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | adminurl | http://131.154.101.242:9292/v1 | | id | 044f6be2f3224b3f96283bb26dcc0949 | | internalurl | http://131.154.101.242:9292/v1 | | publicurl | http://131.154.101.242:9292/v1 | | region | RegionOne | | service_id | 4ebfd4612e8145d188140dcbd62bcaff | +-------------+----------------------------------+ Define the EC2 compatibility servicesaltatoDefine the Object Storage servicesaltatoTroubleshootingyum install curl openssl curl -d '{"auth": {"tenantName": "adminTenant", "passwordCredentials": {"username": "adminUser", "password": "********"}}}' -H "Content-type:application/json" http://131.154.101.242:35357/v2.0/tokens | python -mjson.tool % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 183 252 126 252 0 114 4021 1819 --:--:-- --:--:-- --:--:-- 2225 { "access": { "serviceCatalog": {}, "token": { "expires": "2012-08-30T12:22:54Z", "id": "927b3fb9806f494386c8c1e5af62ad21" }, "user": { "id": "b0305faa3ace4671bc0399e71a0a1cc1", "name": "adminUser", "roles": [], "roles_links": [], "username": "adminUser" } } } keystone user-list# keystone user-list +----------------------------------+---------+-------+-----------+ | id | enabled | email | name | +----------------------------------+---------+-------+-----------+ | 6916a161eb55476a8b2615dae7d00f27 | True | None | nova | | b0305faa3ace4671bc0399e71a0a1cc1 | True | None | adminUser | | f085dd93f0ae42daa1a0623b9ec978f4 | True | None | glance | +----------------------------------+---------+-------+-----------+ keystone service-list# keystone service-list +----------------------------------+----------+----------+---------------------------+ | id | name | type | description | +----------------------------------+----------+----------+---------------------------+ | 83486ca8422c4cb0aa4be1a231556ee3 | nova | compute | Nova Compute Service | | cfda291164a2416f99ddffc137ba14f9 | keystone | identity | Keystone Identity Service | +----------------------------------+----------+----------+---------------------------+ keystone endpoint-list# keystone endpoint-list +----------------------------------+-----------+----------------------------------------------+----------------------------------------------+----------------------------------------------+ | id | region | publicurl | internalurl | adminurl | +----------------------------------+-----------+----------------------------------------------+----------------------------------------------+----------------------------------------------+ | e63155b607e1433f9ae8c66bc87c8ebf | RegionOne | http://131.154.101.242:5000/v2.0 | http://131.154.101.242:5000/v2.0 | http://131.154.101.242:35357/v2.0 | | ef8874ac56b34b538536b053591d440e | RegionOne | http://131.154.101.242:8774/v2/%(tenant_id)s | http://131.154.101.242:8774/v2/%(tenant_id)s | http://131.154.101.242:8774/v2/%(tenant_id)s | +----------------------------------+-----------+----------------------------------------------+----------------------------------------------+----------------------------------------------+-- PaoloVeronesi - 2012-08-30 |