Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Cài đặt
- Các thành phần cơ bản
- Tạo user openstack với home là /opt/openstack :
- #useradd openstack
- #usermod –m –d /opt/openstack openstack
- Cài đặt các gói phục vụ việc build ứng dụng
- #rpm -Uvh http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/6/x86_64/epel-release-6-7.noarch.rpm
- #yum install yum-utils mysql-devel mysql-server python-setuptools gcc python-devel libxml2-devel libxslt-devel
- #easy_install pip
- #pip install virtualenv
- #pip install mysql-python
- Hệ thống sử dụng mysql làm database chung
- #mysql
- #mysql_secure_installation
- Cài đặt Keystone
- Cài đặt
- Tạo database và checkout source từ repo của openstack. Ta sẽ sử dụng bản stable/essex
- #mysql –p
- mysql> create database keystone;
- mysql> grant all on keystone.* to 'keystone'@'%' identified by '123456';
- #mkdir keystone
- #cd keystone
- #git init
- #git remote add origin https://github.com/openstack/keystone.git
- #git fetch origin stable/essex:refs/remotes/origin/stable/essex
- #git checkout stable/essex
- #pip install –r tools/pip-requires
- #python setup.py install
- Copy file etc/keystone.conf vào /etc/keystone/keystone.conf và sửa các nội dung
- mysql://keystone:123456@10.160.0.184/keystone
- admin_token = 660c298b9e10f957c101
- Cài keystoneclient
- #git checkout https://github.com/openstack/python-keystoneclient.git
- #cd python-keystoneclient
- #pip install –r tools/pip-requires
- #python setup.py install
- admin_token có thể được tạo ra bằng lệnh “openssl rand -hex [number]”. Sau đó ta sync db và khởi động service của keystone
- #keystone-manage db_sync
- #keystone-all
- Cấu hình
- Ở bước này setup các user căn bản và đổi store template service từ file sang sử dụng mysql.
- Setup token cho service
- #export SERVICE_ENDPOINT=http://10.160.0.184:35357/v2.0
- #export SERVICE_TOKEN=660c298b9e10f957c101
- Tạo một tenant mới:
- #keystone tenant-create --name openstackDemo --description "Default Tenant" --enabled true
- (id: 0669faf2eed344779f73bafa55cefb89)
- Tạo user admin thuộc tenant trên
- #keystone user-create --tenant_id 0669faf2eed344779f73bafa55cefb89 --name adminUser --pass 123456 --enabled true
- (id: 473f09587e004effbd6048be898f2370)
- Tạo 2 role admin và member
- #keystone role-create --name admin
- (id: 723ee38e160c4be5ac4199ee2585ca76)
- #keystone role-create --name memberRole
- (id: 8779a14d4c6346deb3b8d5fe42697d7f)
- Gán user adminUser vào role admin
- # keystone user-role-add --user 473f09587e004effbd6048be898f2370 --tenant_id 0669faf2eed344779f73bafa55cefb89 --role 723ee38e160c4be5ac4199ee2585ca76
- Tạo tenant Service để chứa toàn bộ user/pass của user các service khác
- # keystone tenant-create --name service --description "Service Tenant" --enabled true
- (id: 0e41079468e3412eb180cc24fe9ed4c4)
- # keystone user-create --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --name glance --pass glance --enabled true
- (id: ea03910d88ab4d4fb02c05d40a467f76)
- # keystone user-role-add --user ea03910d88ab4d4fb02c05d40a467f76 --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --role 723ee38e160c4be5ac4199ee2585ca76 (gán quyền admin cho user glance)
- # keystone user-create --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --name nova --pass nova --enabled true
- (id: 036dc56a5f044b4f93a08555d74614d3)
- # keystone user-role-add --user 036dc56a5f044b4f93a08555d74614d3 --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --role 723ee38e160c4be5ac4199ee2585ca76
- # keystone user-create --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --name ec2 --pass ec2 --enabled true
- (id: ed497072a40a4eaba4256a1e2b6824bc)
- # keystone user-role-add --user ed497072a40a4eaba4256a1e2b6824bc --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --role 723ee38e160c4be5ac4199ee2585ca76
- # keystone user-create --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --name swift --pass swift --enabled true
- (id: 0af0088a9abe4fbcbd51976ca0e25cb6)
- # keystone user-role-add --user 0af0088a9abe4fbcbd51976ca0e25cb6 --tenant_id 0e41079468e3412eb180cc24fe9ed4c4 --role 723ee38e160c4be5ac4199ee2585ca76
- Thay vì sử dụng file config catalog.templates, ta sẽ sử dụng mysql làm backend. Sửa file /etc/keystone/keystone.conf với nội dung
- Thêm
- [filter:s3_extension]
- paste.filter_factory = keystone.contrib.s3:S3Extension.factory
- Thêm s3_extension vào phần [pipeline:admin_api]
- Phần [catalog] sửa thành
- driver = keystone.catalog.backends.sql.Catalog
- Tạo các service cho openstack
- # keystone service-create --name=keystone --type=identity --description="Keystone Identity Service"
- (id: 6b59a94d41c04c32aa9655a7676c602f)
- # keystone service-create --name=nova --type=compute --description="Nova Compute Service"
- (id: 8eea761652dc4db68e70d30eccd161e9)
- # keystone service-create --name=volume --type=volume --description="Nova Volume Service"
- (id: f0e09b1b72f145218733dcb0a3574ea1)
- # keystone service-create --name=glance --type=image --description="Glance Image Service"
- (id: 0cadf5b686d44e5b91edde5f6dd5e268)
- # keystone service-create --name=ec2 --type=ec2 --description="EC2 Compatibility Layer"
- (id: 13f7ab825efe4d44b678eab0cb3af89f)
- # keystone service-create --name=swift --type=object-store --description="Object Storage Service"
- (id: e4f509907d8f4fe5b8d94384dac780ec)
- Tạo endpoint cho các service vừa tạo
- # keystone endpoint-create --region RegionOne --service_id=6b59a94d41c04c32aa9655a7676c602f --publicurl=http://10.160.0.184:5000/v2.0 --internalurl=http://10.160.0.184:5000/v2.0 --adminurl=http://10.160.0.184:35357/v2.0
- # keystone endpoint-create --region RegionOne --service_id=8eea761652dc4db68e70d30eccd161e9 --publicurl='http://10.160.0.184:8774/v2/%(tenant_id)s' --internalurl='http://10.160.0.184:8774/v2/%(tenant_id)s' --adminurl='http://10.160.0.184:8774/v2/%(tenant_id)s'
- #keystone endpoint-create --region RegionOne --service_id=f0e09b1b72f145218733dcb0a3574ea1 --publicurl='http://10.160.0.184:8776/v1/%(tenant_id)s' --internalurl='http://10.160.0.184:8776/v1/%(tenant_id)s' --adminurl='http://10.160.0.184:8776/v1/%(tenant_id)s'
- #keystone endpoint-create --region RegionOne --service_id=0cadf5b686d44e5b91edde5f6dd5e268 --publicurl=http://10.160.0.184:9292/v1 --internalurl=http://10.160.0.184:9292/v1 --adminurl=http://10.160.0.184:9292/v1
- #keystone endpoint-create --region RegionOne --service_id=13f7ab825efe4d44b678eab0cb3af89f --publicurl=http://10.160.0.184:8773/services/Cloud --internalurl=http://10.160.0.184:8773/services/Cloud --adminurl=http://10.160.0.184:8773/services/Admin
- #keystone endpoint-create --region RegionOne --service_id=e4f509907d8f4fe5b8d94384dac780ec --publicurl 'http://127.0.0.1:8080/v1/AUTH_%(tenant_id)s' --adminurl 'http://127.0.0.1:8080/' --internalurl 'http://127.0.0.1:8080/v1/AUTH_%(tenant_id)s'
- Sau khi restart service ta có thể test login bằng keystone bằng lệnh
- curl -d '{"auth": {"tenantName": "adminTenant", "passwordCredentials":{"username": "adminUser", "password": "123456"}}}' -H "Content-type: application/json" http://10.160.0.184:35357/v2.0/tokens | python -mjson.tool
- Lệnh này sẽ trả lại token login cho user adminUser
- Cài đặt Glance
- Tương tự keystone, ta sẽ sửa dụng sourcecode từ bản stable/essex
- #mkdir glance
- #cd glance
- #git init
- #git remote add origin https://github.com/openstack/glance.git
- #git fetch origin stable/essex:refs/remotes/origin/stable/essex
- #git checkout stable/essex
- #pip install -r tools/pip-requires
- #python setup.py install
- #mysql –p
- mysql>CREATE DATABASE glance;
- mysql>GRANT ALL ON glance.* TO 'glance'@'%' IDENTIFIED BY '123456';
- Copy nội dung trong etc/* vào /etc/glance, sửa file /etc/glance/glance-api-paste.ini
- [filter:authtoken]
- admin_tenant_name = service
- admin_user = glance
- admin_password = glance
- thêm authtoken vào [pipeline:glance-api] pipeline =
- Thêm vào cuối file /etc/glance/glance-api.conf và /etc/glance/glance-registry.conf
- [paste_deploy]
- flavor = keystone
- Sửa file /etc/glance/glance-registry.conf phần sql_connection và khởi động service glance
- sql_connection = mysql://glance:123456@10.160.0.184/glance
- #glance-manage db_sync
- #glance-registry &
- #glance-api &
- Setup các biến môi trường để login vào glance.
- export OS_USERNAME=adminUser
- export OS_TENANT_NAME=openstackDemo
- export OS_PASSWORD=123456
- export OS_AUTH_URL=http://192.168.206.130:5000/v2.0/
- export OS_REGION_NAME=RegionOne
- Ta sẽ dùng 1 image mẫu để kiểm tra cấu hình glance
- mkdir /tmp/images
- cd /tmp/images/
- wget http://smoser.brickies.net/ubuntu/ttylinux-uec/ttylinux-uec-amd64-12.1_2.6.35-22_1.tar.gz
- tar -zxvf ttylinux-uec-amd64-12.1_2.6.35-22_1.tar.gz
- Add kernel, ramdisk và disk
- #glance add name="tty-linux-kernel" disk_format=aki container_format=aki < ttylinux-uec-amd64-12.1_2.6.35-22_1-vmlinuz
- (id: ace5e032-0526-4738-94b0-2308d060e9d8)
- #glance add name="tty-linux-ramdisk" disk_format=ari container_format=ari < ttylinux-uec-amd64-12.1_2.6.35-22_1-loader
- (id: ea47f147-a788-44fb-b260-eb6b792eb1ae)
- #glance add name="tty-linux" disk_format=ami container_format=ami kernel_id=ace5e032-0526-4738-94b0-2308d060e9d8 ramdisk_id=ea47f147-a788-44fb-b260-eb6b792eb1ae < ttylinux-uec-amd64-12.1_2.6.35-22_1.img
- Kiểm tra các image đã được upload bằng lệnh
- #glance index
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement