Skip to content

Instantly share code, notes, and snippets.

@ishikawa84g
Last active December 25, 2015 01:49

Revisions

  1. ishikawa84g revised this gist Oct 21, 2013. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions keystone_data.sh
    Original file line number Diff line number Diff line change
    @@ -148,9 +148,9 @@ keystone endpoint-create \
    keystone endpoint-create \
    --region $REGION \
    --service_id $NEUTRON_SERVICE \
    --publicurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_HOST:9696/" \
    --adminurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_ADMIN_HOST:9696/" \
    --internalurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_INT_HOST:9696/"
    --publicurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_HOST:9696" \
    --adminurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_ADMIN_HOST:9696" \
    --internalurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_INT_HOST:9696"

    keystone endpoint-create \
    --region $REGION \
  2. ishikawa84g revised this gist Oct 9, 2013. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions keystone_data.sh
    Original file line number Diff line number Diff line change
    @@ -70,8 +70,10 @@ SERVICE_TENANT=$(get_id keystone tenant-create --name $SERVICE_TENANT_NAME)
    # --------------------------------------
    # demo
    # --------------------------------------
    MEMBER_ROLE=$(keystone role-list | awk "/ _member_ / { print \$2 }")
    DEMO_TENANT=$(get_id keystone tenant-create --name=demo)
    DEMO_USER=$(get_id keystone user-create --name demo --pass "$ADMIN_PASSWORD" --email [email protected])
    keystone user-role-add --user-id $DEMO_USER --role-id $MEMBER_ROLE --tenant-id $DEMO_TENANT
    keystone user-role-add --user-id $ADMIN_USER --role-id $ADMIN_ROLE --tenant-id $DEMO_TENANT

    # --------------------------------------
  3. ishikawa84g renamed this gist Oct 9, 2013. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  4. ishikawa84g created this gist Oct 9, 2013.
    172 changes: 172 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,172 @@
    #!/bin/bash

    # --------
    # Defaults
    # --------

    ADMIN_PASSWORD=${ADMIN_PASSWORD:-secret}
    SERVICE_PASSWORD=${SERVICE_PASSWORD:-$ADMIN_PASSWORD}
    export SERVICE_TOKEN=ADMIN
    export SERVICE_ENDPOINT=http://127.0.0.1:35357/v2.0
    SERVICE_TENANT_NAME=${SERVICE_TENANT_NAME:-service}

    KEYSTONE_SERVICE_PROTOCOL=http
    KEYSTONE_AUTH_PROTOCOL=http
    NOVA_SERVICE_PROTOCOL=http
    CINDER_SERVICE_PROTOCOL=http
    GLANCE_SERVICE_PROTOCOL=http
    CEILOMETER_SERVICE_PROTOCOL=http
    NEUTRON_SERVICE_PROTOCOL=http
    EC2_SERVICE_PROTOCOL=http

    IDENTITY_API_VERSION=2.0

    REGION=RegionOne

    SERVICE_HOST=127.0.0.1
    KEYSTONE_SERVICE_HOST=${SERVICE_HOST:-127.0.0.1}
    KEYSTONE_SERVICE_INT_HOST=${KEYSTONE_SERVICE_HOST:-127.0.0.1}
    KEYSTONE_SERVICE_ADMIN_HOST=${KEYSTONE_SERVICE_HOST:-127.0.0.1}
    GLANCE_SERVICE_HOST=${SERVICE_HOST:-127.0.0.1}
    GLANCE_SERVICE_INT_HOST=${GLANCE_SERVICE_HOST:-127.0.0.1}
    GLANCE_SERVICE_ADMIN_HOST=${GLANCE_SERVICE_HOST:-127.0.0.1}
    CEILOMETER_SERVICE_HOST=${SERVICE_HOST:-127.0.0.1}
    CEILOMETER_SERVICE_INT_HOST=${CEILOMETER_SERVICE_HOST:-127.0.0.1}
    CEILOMETER_SERVICE_ADMIN_HOST=${CEILOMETER_SERVICE_HOST:-127.0.0.1}
    NOVA_SERVICE_HOST=${SERVICE_HOST:-127.0.0.1}
    NOVA_SERVICE_INT_HOST=${NOVA_SERVICE_HOST:-127.0.0.1}
    NOVA_SERVICE_ADMIN_HOST=${NOVA_SERVICE_HOST:-127.0.0.1}
    NEUTRON_SERVICE_HOST=${SERVICE_HOST:-127.0.0.1}
    NEUTRON_SERVICE_INT_HOST=${NEUTRON_SERVICE_HOST:-127.0.0.1}
    NEUTRON_SERVICE_ADMIN_HOST=${NEUTRON_SERVICE_HOST:-127.0.0.1}
    EC2_SERVICE_HOST=${SERVICE_HOST:-127.0.0.1}
    EC2_SERVICE_INT_HOST=${EC2_SERVICE_HOST:-127.0.0.1}
    EC2_SERVICE_ADMIN_HOST=${EC2_SERVICE_HOST:-127.0.0.1}
    CINDER_SERVICE_HOST=${SERVICE_HOST:-127.0.0.1}
    CINDER_SERVICE_INT_HOST=${CINDER_SERVICE_HOST:-127.0.0.1}
    CINDER_SERVICE_ADMIN_HOST=${CINDER_SERVICE_HOST:-127.0.0.1}

    # ------------
    # Function
    # ------------

    function get_id () {
    echo `"$@" | awk '/ id / { print $4 }'`
    }

    # --------------------------------------
    # Admin
    # --------------------------------------
    ADMIN_TENANT=$(get_id keystone tenant-create --name admin)
    ADMIN_ROLE=$(get_id keystone role-create --name admin)
    ADMIN_USER=$(get_id keystone user-create --name admin --pass "$ADMIN_PASSWORD" --email [email protected])
    keystone user-role-add --user-id $ADMIN_USER --role-id $ADMIN_ROLE --tenant-id $ADMIN_TENANT

    # --------------------------------------
    # Service
    # --------------------------------------
    SERVICE_TENANT=$(get_id keystone tenant-create --name $SERVICE_TENANT_NAME)

    # --------------------------------------
    # demo
    # --------------------------------------
    DEMO_TENANT=$(get_id keystone tenant-create --name=demo)
    DEMO_USER=$(get_id keystone user-create --name demo --pass "$ADMIN_PASSWORD" --email [email protected])
    keystone user-role-add --user-id $ADMIN_USER --role-id $ADMIN_ROLE --tenant-id $DEMO_TENANT

    # --------------------------------------
    # Services
    # --------------------------------------
    KEYSTONE_SERVICE=$(get_id keystone service-create --name keystone --type identity --description "Keystone Identity Service")
    GLANCE_SERVICE=$(get_id keystone service-create --name=glance --type=image --description="Glance Image Service")
    CEILOMETER_SERVICE=$(get_id keystone service-create --name=ceilometer --type=metering --description="Ceilometer Service")
    NOVA_SERVICE=$(get_id keystone service-create --name=nova --type=compute --description="Nova Compute Service")
    NOVA_V3_SERVICE=$(get_id keystone service-create --name=nova --type=computev3 --description="Nova Compute Service V3")
    NEUTRON_SERVICE=$(get_id keystone service-create --name=neutron --type=network --description="Neutron Service")
    EC2_SERVICE=$(get_id keystone service-create --name=ec2 --type=ec2 --description="EC2 Compatibility Layer")
    CINDER_SERVICE=$(get_id keystone service-create --name=cinder --type=volume --description="Cinder Volume Service")
    CINDER_V2_SERVICE=$(get_id keystone service-create --name=cinder --type=volumev2 --description="Cinder Volume Service V2")

    # --------------------------------------
    # Service Users
    # --------------------------------------
    NOVA_USER=$(get_id keystone user-create --name=nova --pass="$SERVICE_PASSWORD" --tenant_id $SERVICE_TENANT [email protected])
    GLANCE_USER=$(get_id keystone user-create --name=glance --pass="$SERVICE_PASSWORD" --tenant_id $SERVICE_TENANT [email protected])
    CEILOMETER_USER=$(get_id keystone user-create --name=ceilometer --pass="$SERVICE_PASSWORD" --tenant_id $SERVICE_TENANT [email protected])
    NEUTRON_USER=$(get_id keystone user-create --name=neutron --pass="$SERVICE_PASSWORD" --tenant_id $SERVICE_TENANT [email protected])
    CINDER_USER=$(get_id keystone user-create --name=cinder --pass="$SERVICE_PASSWORD" --tenant_id $SERVICE_TENANT [email protected])

    # --------------------------------------
    # User role add
    # --------------------------------------
    keystone user-role-add --tenant-id $SERVICE_TENANT --role-id $ADMIN_ROLE --user-id $GLANCE_USER
    keystone user-role-add --tenant-id $SERVICE_TENANT --role-id $ADMIN_ROLE --user-id $CEILOMETER_USER
    keystone user-role-add --tenant-id $SERVICE_TENANT --role-id $ADMIN_ROLE --user-id $NOVA_USER
    keystone user-role-add --tenant-id $SERVICE_TENANT --role-id $ADMIN_ROLE --user-id $NEUTRON_USER
    keystone user-role-add --tenant-id $SERVICE_TENANT --role-id $ADMIN_ROLE --user-id $CINDER_USER

    # --------------------------------------
    # Endpoints
    # --------------------------------------
    keystone endpoint-create \
    --region $REGION \
    --service_id $KEYSTONE_SERVICE \
    --publicurl "$KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_HOST:5000/v$IDENTITY_API_VERSION" \
    --adminurl "$KEYSTONE_AUTH_PROTOCOL://$KEYSTONE_SERVICE_ADMIN_HOST:35357/v$IDENTITY_API_VERSION" \
    --internalurl "$KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_INT_HOST:5000/v$IDENTITY_API_VERSION"

    keystone endpoint-create \
    --region $REGION \
    --service_id $GLANCE_SERVICE \
    --publicurl "$GLANCE_SERVICE_PROTOCOL://$GLANCE_SERVICE_HOST:9292" \
    --adminurl "$GLANCE_SERVICE_PROTOCOL://$GLANCE_SERVICE_ADMIN_HOST:9292" \
    --internalurl "$GLANCE_SERVICE_PROTOCOL://$GLANCE_SERVICE_INT_HOST:9292"

    keystone endpoint-create \
    --region $REGION \
    --service_id $CEILOMETER_SERVICE \
    --publicurl "$CEILOMETER_SERVICE_PROTOCOL://$CEILOMETER_SERVICE_HOST:8777" \
    --adminurl "$CEILOMETER_SERVICE_PROTOCOL://$CEILOMETER_SERVICE_ADMIN_HOST:8777" \
    --internalurl "$CEILOMETER_SERVICE_PROTOCOL://$CEILOMETER_SERVICE_INT_HOST:8777"

    keystone endpoint-create \
    --region $REGION \
    --service_id $NOVA_SERVICE \
    --publicurl "$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_HOST:8774/v2/\$(tenant_id)s" \
    --adminurl "$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_ADMIN_HOST:8774/v2/\$(tenant_id)s" \
    --internalurl "$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_INT_HOST:8774/v2/\$(tenant_id)s"

    keystone endpoint-create \
    --region $REGION \
    --service_id $NOVA_V3_SERVICE \
    --publicurl "$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_HOST:8774/v3" \
    --adminurl "$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_ADMIN_HOST:8774/v3" \
    --internalurl "$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_INT_HOST:8774/v3"

    keystone endpoint-create \
    --region $REGION \
    --service_id $NEUTRON_SERVICE \
    --publicurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_HOST:9696/" \
    --adminurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_ADMIN_HOST:9696/" \
    --internalurl "$NEUTRON_SERVICE_PROTOCOL://$NEUTRON_SERVICE_INT_HOST:9696/"

    keystone endpoint-create \
    --region $REGION \
    --service_id $EC2_SERVICE \
    --publicurl "$EC2_SERVICE_PROTOCOL://$EC2_SERVICE_HOST:8773/services/Cloud" \
    --adminurl "$EC2_SERVICE_PROTOCOL://$EC2_SERVICE_ADMIN_HOST:8773/services/Admin" \
    --internalurl "$EC2_SERVICE_PROTOCOL://$EC2_SERVICE_INT_HOST:8773/services/Cloud"

    keystone endpoint-create \
    --region $REGION \
    --service_id $CINDER_SERVICE \
    --publicurl "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:8776/v1/\$(tenant_id)s" \
    --adminurl "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_ADMIN_HOST:8776/v1/\$(tenant_id)s" \
    --internalurl "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_INT_HOST:8776/v1/\$(tenant_id)s"

    keystone endpoint-create \
    --region $REGION \
    --service_id $CINDER_V2_SERVICE \
    --publicurl "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:8776/v2/\$(tenant_id)s" \
    --adminurl "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_ADMIN_HOST:8776/v2/\$(tenant_id)s" \
    --internalurl "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_INT_HOST:8776/v2/\$(tenant_id)s"