Difference: InstallingAndConfiguringKeystone (12 vs. 13)

Revision 132012-11-19 - MatteoManzali

Line: 1 to 1
 
META TOPICPARENT name="GestioneServiziGenerali.GestioneOpenstack"

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"

 
  • Creare il ruolo lanciando il seguente comando:
Line: 118 to 118
  # export ADMIN_ROLE_ID=2f196d11ff954c67befc3f190195f47c
Deleted:
<
<
# keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT role-create --name memberRole +----------+----------------------------------+
Property Value
+----------+----------------------------------+
id d193b58e977d4c398b41c518f3629ea7
name memberRole
+----------+----------------------------------+
 

Assegnazione del ruolo "admin" all'utente "AdminUser"

  • Assegnare il ruolo tramite il seguente comando:

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
 
  • Assegnare il ruolo tramite il seguente comando:

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
 
  • Assegnare il ruolo tramite il seguente comando:

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

  • Creare l'utente tramite il seguente comando:
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-create --tenant_id $SERVICE_TENANT_ID --name ec2 --pass <EC2_PASSWORD> --enabled true
    +----------+-------------------------------------------------------------------------------------------------------------------------+
    | Property |                                                          Value                                                          |
    +----------+-------------------------------------------------------------------------------------------------------------------------+
    | email    | None                                                                                                                    |
    | enabled  | True                                                                                                                    |
    | id       | ea9ed6847b814e8e8f315b15ac987ce3                                                                                        |
    | name     | ec2                                                                                                                     |
    | password | $6$rounds=40000$egKz.H1MiHWIvq9o$wXiMiSx8FuIy2KOltS875ldjv0Q591y3xlEYvWl6Uk.n/5Lt.wgJS8.uJ28g75UFCWfys3JffJaOLFYO1nqN8/ |
    | tenantId | 73016aa2c9ca4aeba3736cf44cc8433b                                                                                        |
    +----------+-------------------------------------------------------------------------------------------------------------------------+
    
    export EC2_USER_ID=ea9ed6847b814e8e8f315b15ac987ce3
    
    
    Dove <EC2_PASSWORD> la password che si desidera associare all'utente del servizio EC2.

  • Assegnare il ruolo tramite il seguente comando:
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $EC2_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 Swift

  • Creare l'utente tramite il seguente comando:
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-create --tenant_id $SERVICE_TENANT_ID --name swift --pass <SWIFT_PASSWORD> --enabled true
    +----------+-------------------------------------------------------------------------------------------------------------------------+
    | Property |                                                          Value                                                          |
    +----------+-------------------------------------------------------------------------------------------------------------------------+
    | email    | None                                                                                                                    |
    | enabled  | True                                                                                                                    |
    | id       | 995ee845a29147b7a93443054d185c3b                                                                                        |
    | name     | swift                                                                                                                   |
    | password | $6$rounds=40000$CRLmdT7rWkiLClCL$nZ54lQSF5J.wxUrCgZ37wYPywyx9WqChnAJr3g.XPG.S3LFGTSqcXvWwkROqQbJrKCi34Jvy1uZY/P6c2XBV3/ |
    | tenantId | 73016aa2c9ca4aeba3736cf44cc8433b                                                                                        |
    +----------+-------------------------------------------------------------------------------------------------------------------------+
    
    export SWIFT_USER_ID=995ee845a29147b7a93443054d185c3b
    
    Dove <SWIFT_PASSWORD> la password che si desidera associare all'utente del servizio Swift.

  • Assegnare il ruolo tramite il seguente comando:
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT user-role-add --user $SWIFT_USER_ID --tenant_id  $SERVICE_TENANT_ID --role $ADMIN_ROLE_ID
>
>
# 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
 
  • Creare l'endpoint per il servizio "nova":

Changed:
<
<
# keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_SERVICE_ID --publicurl='http://:8774/v2/%(tenant_id)s' --internalurl='http://:8774/v2/%(tenant_id)s' --adminurl='http://:8774/v2/%(tenant_id)s'
>
>
# keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$NOVA_SERVICE_ID --publicurl='http://:8774/v2/%(tenant_id)s' --internalurl='http://:8774/v2/%(tenant_id)s' --adminurl='http://:8774/v2/%(tenant_id)s'
 +-------------+--------------------------------------------------------+
Property Value
+-------------+--------------------------------------------------------+
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)

  • Creare il servizio "ec2":
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=ec2 --type=ec2 --description="EC2 Compatibility Service"
    +-------------+----------------------------------+
    |   Property  |              Value               |
    +-------------+----------------------------------+
    | description | EC2 Compatibility Service        |
    | id          | 0f30dac463d242668e999955f7ee3d61 |
    | name        | ec2                              |
    | type        | ec2                              |
    +-------------+----------------------------------+
    
    export EC2_COMPATIBILITY_SERVICE_ID=0f30dac463d242668e999955f7ee3d61
    
  • Creare l'endpoint per il servizio "ec2":
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$EC2_COMPATIBILITY_SERVICE_ID --publicurl=http://<EC2_SERVER_HOSTNAME>:8773/services/Cloud  --internalurl=http://<EC2_SERVER_HOSTNAME>:8773/services/Cloud --adminurl=http://<EC2_SERVER_HOSTNAME>:8773/services/Cloud
    +-------------+------------------------------------------------------+
    |   Property  |                        Value                         |
    +-------------+------------------------------------------------------+
    | adminurl    | http://openstack-01.cnaf.infn.it:8773/services/Cloud |
    | id          | e927ee99f3b84894a11f9216118d677a                     |
    | internalurl | http://openstack-01.cnaf.infn.it:8773/services/Cloud |
    | publicurl   | http://openstack-01.cnaf.infn.it:8773/services/Cloud |
    | region      | RegionOne                                            |
    | service_id  | 0f30dac463d242668e999955f7ee3d61                     |
    +-------------+------------------------------------------------------+
    
    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.

  • Creare il servizio "swift":
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT service-create --name=swift --type=object-store --description="Object Storage Service"
    +-------------+----------------------------------+
    |   Property  |              Value               |
    +-------------+----------------------------------+
    | description | Object Storage Service           |
    | id          | 5b978ae3aeb1456a9d14c76f1d0c7956 |
    | name        | swift                            |
    | type        | object-store                     |
    +-------------+----------------------------------+
    
    export OBJECT_STORAGE_SERVICE_ID=5b978ae3aeb1456a9d14c76f1d0c7956
    
  • Creare l'endpoint per il servizio "swift":
    # keystone --token $ADMIN_TOKEN --endpoint $ENDPOINT endpoint-create --region RegionOne --service_id=$OBJECT_STORAGE_SERVICE_ID --publicurl='<SWIFT_SERVER_HOSTNAME>:8080/v1/AUTH_%(tenant_id)s'  --internalurl='<SWIFT_SERVER_HOSTNAME>:8080/v1/AUTH_%(tenant_id)s' --adminurl='<SWIFT_SERVER_HOSTNAME>:8080/v1/AUTH_%(tenant_id)s'
    +-------------+-------------------------------------------------------------+
    |   Property  |                            Value                            |
    +-------------+-------------------------------------------------------------+
    | adminurl    | http://openstack-04.cnaf.infn.it:8080/v1/AUTH_%(tenant_id)s |
    | id          | ef01e39c5dde4757834aba9070132f34                            |
    | internalurl | http://openstack-04.cnaf.infn.it:8080/v1/AUTH_%(tenant_id)s |
    | publicurl   | http://openstack-04.cnaf.infn.it:8080/v1/AUTH_%(tenant_id)s |
    | region      | RegionOne                                                   |
    | service_id  | 5b978ae3aeb1456a9d14c76f1d0c7956                            |
    +-------------+-------------------------------------------------------------+
    
    
    Dove <SWIFT_SERVER_HOSTNAME> l'hostname del server sui installato il servizio Swift. Nel nostro caso "openstack-04.cnaf.infn.it".
 

Troubleshooting

  • Per le principali operazioni di troubleshooting riferirsi alla guida.
Line: 540 to 415
  } ], "endpoints_links": [],
Deleted:
<
<
"name": "ec2", "type": "ec2" }, { "endpoints": [ {
"adminURL"
"http://hostname1.domain:8888/v1/AUTH_c8854bd3d15f4f479476d0cf58ef7db2",
"internalURL"
"http://hostname1.domain:8888/v1/AUTH_c8854bd3d15f4f479476d0cf58ef7db2",
"publicURL"
"http://hostname1.domain:8888/v1/AUTH_c8854bd3d15f4f479476d0cf58ef7db2",
"region"
"RegionOne" } ], "endpoints_links": [], "name": "swift", "type": "object-store" }, { "endpoints": [ {
"adminURL"
"http://hostname1.domain:35357/v2.0/",
"internalURL"
"http://hostname1.domain:5000/v2.0/",
"publicURL"
"http://hostname1.domain:5000/v2.0/",
"region"
"RegionOne" } ], "endpoints_links": [],
  "name": "keystone", "type": "identity" }
 
This site is powered by the TWiki collaboration platformCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback