日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

Ubuntu 12.04 Server OpenStack Havana多节点(OVS+GRE)安装

發布時間:2025/3/15 Ubuntu 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu 12.04 Server OpenStack Havana多节点(OVS+GRE)安装 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.需求

節點角色  NICs
控制節點  eth0(10.10.10.51)eth1(192.168.100.51)
網絡節點      eth0(10.10.10.52)eth1(10.20.20.52)eth2(192.168.100.52)
計算結點eth0(10.10.10.53)eth1(10.20.20.53)

?

?

?

?

注意1:你總是可以使用dpkg -s <packagename>確認你是用的是Havana版本

注意2:這個是當前網絡架構

2.控制節點

2.1.準備Ubuntu
  • 安裝好Ubuntu12.04 server 64bits后,進入root模式進行安裝。

sudo su -
  • 添加Havana倉庫:
#apt-get install python-software-properties #add-apt-repository cloud-archive:havana
  • 升級系統:
#apt-get update #apt-get upgrade #apt-get dist-upgrade ?2.2設置網絡
  • 配置網卡編輯/etc/network/interfaces:

#For Exposing OpenStack API over the internet auto eth1 iface eth1 inet static address 192.168.100.51 netmask 255.255.255.0 gateway 192.168.100.1 dns-nameservers 8.8.8.8#Not internet connected(used for OpenStack management) auto eth0 iface eth0 inet static address 10.10.10.52 netmask 255.255.255.0
  • 重啟網絡服務
#/etc/init.d/networking restart
  • 開啟路由轉發:

? sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/' /etc/sysctl.conf sysctl -p ?2.3安裝MySQL
  • 安裝MySQL并為root用戶設置密碼:
#apt-get install mysql-server python-mysqldb
  • 配置mysql監聽所有網絡請求
#sed -i 's/127.0.0.1/0.0.0.0/g' /etc/mysql/my.cnf #service mysql restart

2.4安裝RabbitMQ和NTP

  • 安裝RabbitMQ:
#apt-get install rabbitmq-server
  • 安裝NTP服務
#apt-get install ntp 2.5創建數據庫
  • ?創建數據庫
#mysql -u root -p#Keystone CREATE DATABASE keystone; GRANT ALL ON keystone.* TO 'keystoneUser'@'%' IDENTIFIED BY 'keystonePass'; #Glance CREATE DATABASE glance; GRANT ALL ON glance.* TO 'glanceUser'@'%' IDENTIFIED BY 'glancePass'; #Neutron CREATE DATABASE neutron; GRANT ALL ON neutron.* TO 'neutronUser'@'%' IDENTIFIED BY 'neutronPass'; #Nova CREATE DATABASE nova; GRANT ALL ON nova.* TO 'novaUser'@'%' IDENTIFIED BY 'novaPass'; #Cinder CREATE DATABASE cinder; GRANT ALL ON cinder.* TO 'cinderUser'@'%' IDENTIFIED BY 'cinderPass'; #Swift CREATE DATABASE swift; GRANT ALL ON swift.* TO 'swiftUser'@'%' IDENTIFIED BY 'swiftPass'; quit;

2.6.配置Keystone

  • 安裝keystone軟件包:

apt-get install keystone
  • 在/etc/keystone/keystone.conf中設置連接到新創建的數據庫:

connection=mysql://keystone:keystonePass@10.10.10.51/keystone
  • 重啟身份認證服務并同步數據庫:

service keystone restart keystone-manage db_dync

?

#!/bin/sh # # Keystone Datas # # Description: Fill Keystone with datas. ## Please set 13, 30 lines of variables ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin_pass} SERVICE_PASSWORD=${SERVICE_PASSWORD:-service_pass} export SERVICE_TOKEN="ADMIN" export SERVICE_ENDPOINT="http://10.10.10.51:35357/v2.0" SERVICE_TENANT_NAME=${SERVICE_TENANT_NAME:-service} KEYSTONE_REGION=RegionOne # If you need to provide the service, please to open keystone_wlan_ip and swift_wlan_ip # of course you are a multi-node architecture, and swift service # corresponding ip address set the following variables KEYSTONE_IP="10.10.10.51" EXT_HOST_IP="192.168.100.51" SWIFT_IP="10.10.10.51" COMPUTE_IP=$KEYSTONE_IP EC2_IP=$KEYSTONE_IP GLANCE_IP=$KEYSTONE_IP VOLUME_IP=$KEYSTONE_IP NEUTRON_IP=$KEYSTONE_IP CEILOMETER=$KEYSTONE_IPget_id () {echo `$@ | awk '/ id / { print $4 }'` }# Create Tenants ADMIN_TENANT=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT tenant-create --name=admin) SERVICE_TENANT=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT tenant-create --name=$SERVICE_TENANT_NAME) DEMO_TENANT=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT tenant-create --name=demo) INVIS_TENANT=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT tenant-create --name=invisible_to_admin)# Create Users ADMIN_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=admin --pass="$ADMIN_PASSWORD" --email=admin@domain.com) DEMO_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=demo --pass="$ADMIN_PASSWORD" --email=demo@domain.com)# Create Roles ADMIN_ROLE=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT role-create --name=admin) KEYSTONEADMIN_ROLE=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT role-create --name=KeystoneAdmin) KEYSTONESERVICE_ROLE=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT role-create --name=KeystoneServiceAdmin)# Add Roles to Users in Tenants keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --user-id $ADMIN_USER --role-id $ADMIN_ROLE --tenant-id $ADMIN_TENANT keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --user-id $ADMIN_USER --role-id $ADMIN_ROLE --tenant-id $DEMO_TENANT keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --user-id $ADMIN_USER --role-id $KEYSTONEADMIN_ROLE --tenant-id $ADMIN_TENANT keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --user-id $ADMIN_USER --role-id $KEYSTONESERVICE_ROLE --tenant-id $ADMIN_TENANT# The Member role is used by Horizon and Swift MEMBER_ROLE=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT role-create --name=Member) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --user-id $DEMO_USER --role-id $MEMBER_ROLE --tenant-id $DEMO_TENANT keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --user-id $DEMO_USER --role-id $MEMBER_ROLE --tenant-id $INVIS_TENANT# Configure service users/roles NOVA_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=nova --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT --email=nova@domain.com) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --tenant-id $SERVICE_TENANT --user-id $NOVA_USER --role-id $ADMIN_ROLEGLANCE_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=glance --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT --email=glance@domain.com) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --tenant-id $SERVICE_TENANT --user-id $GLANCE_USER --role-id $ADMIN_ROLESWIFT_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=swift --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT --email=swift@domain.com) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --tenant-id $SERVICE_TENANT --user-id $SWIFT_USER --role-id $ADMIN_ROLERESELLER_ROLE=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT role-create --name=ResellerAdmin) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --tenant-id $SERVICE_TENANT --user-id $NOVA_USER --role-id $RESELLER_ROLENEUTRON_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=neutron --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT --email=neutron@domain.com) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --tenant-id $SERVICE_TENANT --user-id $NEUTRON_USER --role-id $ADMIN_ROLECINDER_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=cinder --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT --email=cinder@domain.com) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --tenant-id $SERVICE_TENANT --user-id $CINDER_USER --role-id $ADMIN_ROLECEILOMETER_USER=$(get_id keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-create --name=ceilometer --pass="$SERVICE_PASSWORD" --tenant-id $SERVICE_TENANT --email=ceilometer@domain.com) keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT user-role-add --tenant-id $SERVICE_TENANT --user-id $CEILOMETER_USER --role-id $ADMIN_ROLE## Create Service KEYSTONE_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name keystone --type identity --description 'OpenStack Identity'| awk '/ id / { print $4 }' ) COMPUTE_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name=nova --type=compute --description='OpenStack Compute Service'| awk '/ id / { print $4 }' ) CINDER_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name=cinder --type=volume --description='OpenStack Volume Service'| awk '/ id / { print $4 }' ) GLANCE_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name=glance --type=image --description='OpenStack Image Service'| awk '/ id / { print $4 }' ) SWIFT_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name=swift --type=object-store --description='OpenStack Storage Service' | awk '/ id / { print $4 }' ) EC2_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name=ec2 --type=ec2 --description='OpenStack EC2 service'| awk '/ id / { print $4 }' ) NEUTRON_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name=neutron --type=network --description='OpenStack Networking service'| awk '/ id / { print $4 }' ) CEILOMETER_ID=$(keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT service-create --name=ceilometer --type=metering --description='Ceilometer Metering Service'| awk '/ id / { print $4 }' )## Create Endpoint #identity if [ "$KEYSTONE_WLAN_IP" != '' ];thenkeystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$KEYSTONE_ID --publicurl http://"$EXT_HOST_IP":5000/v2.0 --adminurl http://"$KEYSTONE_WLAN_IP":35357/v2.0 --internalurl http://"$KEYSTONE_WLAN_IP":5000/v2.0 fi keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$KEYSTONE_ID --publicurl http://"$EXT_HOST_IP":5000/v2.0 --adminurl http://"$KEYSTONE_IP":35357/v2.0 --internalurl http://"$KEYSTONE_IP":5000/v2.0#compute keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$COMPUTE_ID --publicurl http://"$EXT_HOST_IP":8774/v2/\$\(tenant_id\)s --adminurl http://"$COMPUTE_IP":8774/v2/\$\(tenant_id\)s --internalurl http://"$COMPUTE_IP":8774/v2/\$\(tenant_id\)s#volume keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$CINDER_ID --publicurl http://"$EXT_HOST_IP":8776/v1/\$\(tenant_id\)s --adminurl http://"$VOLUME_IP":8776/v1/\$\(tenant_id\)s --internalurl http://"$VOLUME_IP":8776/v1/\$\(tenant_id\)s#image keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$GLANCE_ID --publicurl http://"$EXT_HOST_IP":9292/v2 --adminurl http://"$GLANCE_IP":9292/v2 --internalurl http://"$GLANCE_IP":9292/v2#object-store if [ "$SWIFT_WLAN_IP" != '' ];thenkeystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$SWIFT_ID --publicurl http://"$EXT_HOST_IP":8080/v1/AUTH_\$\(tenant_id\)s --adminurl http://"$SWIFT_WLAN_IP":8080/v1 --internalurl http://"$SWIFT_WLAN_IP":8080/v1/AUTH_\$\(tenant_id\)s fi keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$SWIFT_ID --publicurl http://"$EXT_HOST_IP":8080/v1/AUTH_\$\(tenant_id\)s --adminurl http://"$SWIFT_IP":8080/v1 --internalurl http://"$SWIFT_IP":8080/v1/AUTH_\$\(tenant_id\)s#ec2 keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$EC2_ID --publicurl http://"$EXT_HOST_IP":8773/services/Cloud --adminurl http://"$EC2_IP":8773/services/Admin --internalurl http://"$EC2_IP":8773/services/Cloud#network keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$NEUTRON_ID --publicurl http://"$EXT_HOST_IP":9696/ --adminurl http://"$NUETRON_IP":9696/ --internalurl http://"$NEUTRON_IP":9696/#ceilometer keystone --token $SERVICE_TOKEN --endpoint $SERVICE_ENDPOINT endpoint-create --region $KEYSTONE_REGION --service-id=$CEILOMETER_ID --publicurl http://"$EXT_HOST_IP":8777/ --adminurl http://"$CEILOMETER_IP":8777/ --internalurl http://"$CEILOMETER_IP":8777/

?

  • ?上述腳本文件為了填充keystone數據庫,其中還有些內容根據自身情況修改。

  • ?創建一個簡單的憑據文件,這樣稍后不會因為輸入過多的環境變量而感到厭煩。

?

vi creds-adminexport OS_TENANT_NAME=admin export OS_USERNAME=admin export OS_PASSWORD=admin_pass export OS_AUTH_URL="http://192.168.100.51:5000/v2.0/"source creds-admin

?

  • 通過命令列出keystone中添加的用戶以及得到token:

? keystone user-list keystone token-get

?

2.7.設置Glance

  • 安裝Glance

apt-get install glance
  • 更新/etc/glance/glance-api-paste.ini
[filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory delay_auth_decision = true auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = glance admin_password = service_pass
  • 更新/etc/glance/glance-registry-paste.ini
[filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = glance admin_password = service_pass
  • 更新/etc/glance/glance-api.conf
sql_connection = mysql://glanceUser:glancePass@10.10.10.51/glance 和 [paste_deploy] flavor = keystone
  • 更新/etc/glance/glance-registry.conf
sql_connection = mysql://glanceUser:glancePass@10.10.10.51/glance 和 [paste_deploy] flavor = keystone
  • 重新啟動glance服務:
cd /etc/init.d/;for i in $( ls glance-* );do service $i restart;done
  • 同步glance數據庫
glance-manage db_sync
  • 測試Glance
mkdir images cd images wget http://cdn.download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-disk.img glance image-create --name="Cirros 0.3.1" --disk-format=qcow2 --container-format=bare --is-public=true <cirros-0.3.1-x86_64-disk.img
  • 列出鏡像檢查是否上傳成功:
glance image-list 2.8.設置Neutron
  • 安裝Neutron組件:

apt-get install neutron-server
  • 編輯/etc/neutron/api-paste.ini

[filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = neutron admin_password = service_pass
  • 編輯OVS配置文件/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini:

[OVS] tenant_network_type = gre tunnel_id_ranges = 1:1000 enable_tunneling = True#Firewall driver for realizing neutron security group function [SECURITYGROUP] firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
  • 編輯/etc/neutron/neutron.conf

? [database] connection = mysql://neutronUser:NEUTRON_DAPASS@10.10.10.51/neutron[keystone_authtoken] auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = neutron admin_password = service_pass signing_dir = /var/lib/neutron/keystone-signing
  • 重啟Neutron所有服務:
cd /etc/init.d/; for i in $( ls neutron-* ); do sudo service $i restart; done 2.9.設置Nova
  • 安裝nova組件:
apt-get install nova-api nova-cert novnc nova-consoleauth nova-scheduler nova-novncproxy nova-doc nova-conductor nova-ajax-console-proxy
  • 編輯/etc/nova/api-paste.ini修改認證信息:
[filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = nova admin_password = service_pass signing_dir = /var/lib/nova/keystone-signing # Workaround for https://bugs.launchpad.net/nova/+bug/1154809 auth_version = v2.0
  • 編輯修改/etc/nova/nova.conf
[DEFAULT] logdir=/var/log/nova state_path=/var/lib/nova lock_path=/run/lock/nova verbose=True api_paste_config=/etc/nova/api-paste.ini compute_scheduler_driver=nova.scheduler.simple.SimpleScheduler rabbit_host=10.10.10.51 nova_url=http://10.10.10.51:8774/v1.1/ sql_connection=mysql://novaUser:novaPass@10.10.10.51/nova root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf# Auth use_deprecated_auth=false auth_strategy=keystone# Imaging service glance_api_servers=10.10.10.51:9292 image_service=nova.image.glance.GlanceImageService# Vnc configuration novnc_enabled=true novncproxy_base_url=http://192.168.100.51:6080/vnc_auto.html novncproxy_port=6080 vncserver_proxyclient_address=10.10.10.51 vncserver_listen=0.0.0.0# Network settings network_api_class=nova.network.neutronv2.api.API neutron_url=http://10.10.10.51:9696 neutron_auth_strategy=keystone neutron_admin_tenant_name=service neutron_admin_username=neutron neutron_admin_password=service_pass neutron_admin_auth_url=http://10.10.10.51:35357/v2.0 libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver #If you want Neutron + Nova Security groups firewall_driver=nova.virt.firewall.NoopFirewallDriver security_group_api=neutron #If you want Nova Security groups only, comment the two lines above and uncomment line -1-. #-1-firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver#Metadata service_neutron_metadata_proxy = True neutron_metadata_proxy_shared_secret = helloOpenStack# Compute # compute_driver=libvirt.LibvirtDriver# Cinder # volume_api_class=nova.volume.cinder.API osapi_volume_listen_port=5900
  • 同步數據庫:
nova-manage db sync
  • 重啟Nova所有服務:
cd /etc/init.d/; for i in $( ls nova-* ); do service $i restart; done
  • 檢查所有nova服務是否啟動正常:
nova-manage service list 2.10.設置Cinder
  • 安裝Cinder軟件包
apt-get install cinder-api cinder-scheduler cinder-volume iscsitarget open-iscsi iscsitarget-dkms
  • 配置iscsi服務:
sed -i 's/false/true/g' /etc/default/iscsitarget
  • 重啟服務:
service iscsitarget start service open-iscsi start
  • 配置/etc/cinder/api-paste.ini
filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory service_protocol = http service_host = 192.168.100.51 service_port = 5000 auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = cinder admin_password = service_pass
  • 編輯/etc/cinder/cinder.conf
[DEFAULT] rootwrap_config=/etc/cinder/rootwrap.conf sql_connection = mysql://cinderUser:cinderPass@10.10.10.51/cinder api_paste_config = /etc/cinder/api-paste.ini iscsi_helper=ietadm volume_name_template = volume-%s volume_group = cinder-volumes verbose = True auth_strategy = keystone #osapi_volume_listen_port=5900
  • 接下來同步數據庫:
cinder-manage db sync
  • 最后別忘記創建一個卷組命名為cinder-volumes:
dd if=/dev/zero of=cinder-volumes bs=1 count=0 seek=2G losetup /dev/loop2 cinder-volumes fdisk /dev/loop2 #Type in the followings: n p 1 ENTER ENTER t 8e w
  • 創建物理卷和卷組:
pvcreate /dev/loop2 vgcreate cinder-volumes /dev/loop2
  • 注意:重啟后卷組不會自動掛載,如下進行設置:
vim /etc/init/losetup.confdescription "set up loop devices" start on mounted MOUNTPOINT=/ task exec /sbin/losetup /dev/loop2 /home/cloud/cinder-volumes
  • 重啟cinder服務:
cd /etc/init.d/; for i in $( ls cinder-* ); do service $i restart; done
  • 確認Cinder服務在運行:
cd /etc/init.d/; for i in $( ls cinder-* ); do service $i status; done 2.11.設置Horizon
  • 安裝horizon:
apt-get install openstack-dashboard memcached
  • 如果你不喜歡OpenStack ubuntu主題,你可以停用它:
dpkg --purge openstack-dashboard-ubuntu-theme
  • 重啟Apache和memcached服務:
service apache2 restart; service memcached restart

注意:重啟apache2,出現could not reliably determine the server's fully domain name,using 127.0.0.1 for ServerName.這是由于沒有解析出域名導致的。解決方法如下:編輯/etc/apache2/apache2.conf,添加如下操作即可。

ServerName localhost

2.12.設置Ceilometer

  • 安裝Metering服務
apt-get install ceilometer-api ceilometer-collector ceilometer-agent-central python-ceilometerclient
  • 安裝MongoDB數據庫
apt-get install mongodb
  • 配置mongodb監聽所有網絡接口請求:
sed -i 's/127.0.0.1/0.0.0.0/g' /etc/mongodb.confservice mongodb restart
  • 創建ceilometer數據庫用戶:
#mongo >use ceilometer >db.addUser({ user:"ceilometer",pwd:"CEILOMETER_DBPASS",roles:["readWrite","dbAdmin"]})
  • 配置Metering服務使用數據庫
... [database] ... # The SQLAlchemy connection string used to connect to the # database (string value) connection = mongodb://ceilometer:CEILOMETER_DBPASS@10.10.10.51:27017/ceilometer ...
  • 配置RabbitMQ訪問,編輯/etc/ceilometer/ceilometer.conf
... [DEFAULT] rabbit_host = 10.10.10.51
  • 編輯/etc/ceilometer/ceilometer.conf使認證信息生效
[keystone_authtoken] auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = ceilometer admin_password = CEILOMETER_PASS
  • 簡單獲取鏡像,你必須配置鏡像服務以發送通知給總線,編輯/etc/glance/glance-api.conf修改[DEFAULT]部分
notifier_strategy=rabbit rabbit_host=10.10.10.51
  • 重啟鏡像服務
cd /etc/init.d/;for i in $(ls glance-* );do service $i restart;done
  • 重啟服務,使配置信息生效
cd /etc/init.d;for i in $( ls ceilometer-* );do service $i restart;done
  • 編輯/etc/cinder/cinder.conf,獲取volume。
control_exchange=cinder notification_driver=cinder.openstack.common.notifier.rpc_notifier
  • 重啟Cinder服務
cd /etc/init.d/;for i in $( ls cinder-* );do service $i restart;done

3.網絡結點

  • 安裝好ubuntu 12.04 Server 64bits后,進入root模式下完成配置:

sudo su -
  • 添加Havana源:
#apt-get install python-software-properties #add-apt-repository cloud-archive:havana
  • 升級系統:

  • apt-get update apt-get upgrade apt-get dist-upgrade
  • 安裝ntp服務:
apt-get install ntp
  • 配置ntp服務從控制節點上同步時間:
sed -i 's/server 0.ubuntu.pool.ntp.org/#server 0.ubuntu.pool.ntp.org/g' /etc/ntp.conf sed -i 's/server 1.ubuntu.pool.ntp.org/#server 1.ubuntu.pool.ntp.org/g' /etc/ntp.conf sed -i 's/server 2.ubuntu.pool.ntp.org/#server 2.ubuntu.pool.ntp.org/g' /etc/ntp.conf sed -i 's/server 3.ubuntu.pool.ntp.org/#server 3.ubuntu.pool.ntp.org/g' /etc/ntp.conf#Set the network node to follow up your conroller node sed -i 's/server ntp.ubuntu.com/server 10.10.10.51/g' /etc/ntp.confservice ntp restart
  • 配置網絡:
# OpenStack management auto eth0 iface eth0 inet static address 10.10.10.52 netmask 255.255.255.0# VM Configuration auto eth1 iface eth1 inet static address 10.20.20.52 netmask 255.255.255.0# VM internet Access auto eth2 iface eth2 inet static address 192.168.100.52 netmask 255.255.255.0 gateway 192.168.100.1 dns-servers 8.8.8.8
  • 編輯/etc/sysctl.conf,開啟路由轉發和關閉包目的過濾,這樣網絡節點能協作VMs的traffic。
net.ipv4.ip_forward=1 net.ipv4.conf.all.rp_filter=0 net.ipv4.conf.default.rp_filter=0

#運行下面命令,使生效
sysctl -p

3.3.安裝OpenVSwitch

  • 安裝OpenVSwitch軟件包:
apt-get install openvswitch-controller openvswitch-switch openvswitch-datapath-dkms openvswitch-datapath-source module-assistant auto-install openvswitch-datapath /etc/init.d/openvswitch-switch restart
  • 創建網橋
#br-int will be used for VM integration ovs-vsctl add-br br-int#br-ex is used to make to VM accessable from the internet ovs-vsctl add-br br-ex
  • 把網卡eth2加入br-ex:
ovs-vsctl add-port br-ex eth2
  • 重新修改網卡配置/etc/network/interfaces:
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5).# The loopback network interface auto lo iface lo inet loopback# Not internet connected(used for OpenStack management) # The primary network interface auto eth0 iface eth0 inet static # This is an autoconfigured IPv6 interface # iface eth0 inet6 auto address 10.10.10.52 netmask 255.255.255.0auto eth1 iface eth1 inet static address 10.20.20.52 netmask 255.255.255.0#For Exposing OpenStack API over the internet auto eth2 iface eth2 inet manual up ifconfig $IFACE 0.0.0.0 up up ip link set $IFACE promisc on down ip link set $IFACE promisc off down ifconfig $IFACE downauto br-ex iface br-ex inet static address 192.168.0.52 netmask 255.255.255.0 gateway 192.168.100.1 dns-nameservers 8.8.8.8
  • 重啟網絡服務:
/etc/init.d/networking restart
  • 查看網橋配置:
root@network:~# ovs-vsctl list-br br-ex br-introot@network:~# ovs-vsctl showBridge br-intPort br-intInterface br-inttype: internalBridge br-exPort "eth2"Interface "eth2"Port br-exInterface br-extype: internalovs_version: "1.4.0+build0"

3.4.Neutron-*

  • 安裝Neutron組件:
apt-get install neutron-plugin-openvswitch-agent neutron-dhcp-agent neutron-l3-agent neutron-metadata-agent
  • 編輯/etc/neutron/api-paste.ini
[filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = neutron admin_password = service_pass
  • 編輯OVS配置文件:/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini
[OVS] tenant_network_type = gre enable_tunneling = True tunnel_id_ranges = 1:1000 integration_bridge = br-int tunnel_bridge = br-tun local_ip = 10.20.20.52#Firewall driver for realizing neutron security group function [SECURITYGROUP] firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
  • 更新/etc/neutron/metadata_agent.ini:
auth_url = http://10.10.10.51:35357/v2.0 auth_region = RegionOne admin_tenant_name = service admin_user = neutron admin_password = service_pass# IP address used by Nova metadata server nova_metadata_ip = 10.10.10.51# TCP Port used by Nova metadata server nova_metadata_port = 8775metadata_proxy_shared_secret = helloOpenStack
  • 編輯/etc/neutron/neutron.conf
rabbit_host = 10.10.10.51[keystone_authtoken] auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = neutron admin_password = service_pass signing_dir = /var/lib/quantum/keystone-signing[database] connection = mysql://neutronUser:neutronPass@10.10.10.51/neutron
  • 編輯/etc/neutron/l3_agent.ini:
[DEFAULT] interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver use_namespaces = True external_network_bridge = br-ex signing_dir = /var/cache/neutron admin_tenant_name = service admin_user = neutron admin_password = service_pass auth_url = http://10.10.10.51:35357/v2.0 l3_agent_manager = neutron.agent.l3_agent.L3NATAgentWithStateReport root_helper = sudo neutron-rootwrap /etc/neutron/rootwrap.conf
  • 編輯/etc/neutron/dhcp_agent.ini:
[DEFAULT] interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq use_namespaces = True signing_dir = /var/cache/neutron admin_tenant_name = service admin_user = neutron admin_password = service_pass auth_url = http://10.10.10.51:35357/v2.0 dhcp_agent_manager = neutron.agent.dhcp_agent.DhcpAgentWithStateReport root_helper = sudo neutron-rootwrap /etc/neutron/rootwrap.conf state_path = /var/lib/neutron
  • 重啟服務:
cd /etc/init.d/; for i in $( ls neutron-* ); do service $i restart; done

?

4.計算結點

4.1.準備結點

  • 安裝好ubuntu 12.04 Server 64bits后,進入root模式進行安裝:
sudo su -
  • 添加Havana源:
#apt-get install python-software-properties #add-apt-repository cloud-archive:havana
  • 升級系統:
apt-get update apt-get upgrade apt-get dist-upgrade
  • 安裝ntp服務:
apt-get install ntp
  • 配置ntp服務從控制節點同步時間:
sed -i 's/server 0.ubuntu.pool.ntp.org/#server 0.ubuntu.pool.ntp.org/g' /etc/ntp.conf sed -i 's/server 1.ubuntu.pool.ntp.org/#server 1.ubuntu.pool.ntp.org/g' /etc/ntp.conf sed -i 's/server 2.ubuntu.pool.ntp.org/#server 2.ubuntu.pool.ntp.org/g' /etc/ntp.conf sed -i 's/server 3.ubuntu.pool.ntp.org/#server 3.ubuntu.pool.ntp.org/g' /etc/ntp.conf#Set the network node to follow up your conroller node sed -i 's/server ntp.ubuntu.com/server 10.10.10.51/g' /etc/ntp.conf

service ntp restart

4.2.配置網絡

  • 如下配置網絡/etc/network/interfaces:
# The loopback network interface auto lo iface lo inet loopback# Not internet connected(used for OpenStack management) # The primary network interface auto eth0 iface eth0 inet static # This is an autoconfigured IPv6 interface # iface eth0 inet6 auto address 10.10.10.53 netmask 255.255.255.0# VM Configuration auto eth1 iface eth1 inet static address 10.20.20.53 netmask 255.255.255.0
  • 開啟路由轉發:
sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/' /etc/sysctl.conf sysctl -p

4.3.KVM

  • 確保你的硬件啟動virtualization:
apt-get install cpu-checker kvm-ok
  • 安裝kvm并配置它:
apt-get install -y kvm libvirt-bin pm-utils
  • 在/etc/libvirt/qemu.conf配置文件中啟用cgroup_device_aci數組:
cgroup_device_acl = [ "/dev/null", "/dev/full", "/dev/zero", "/dev/random", "/dev/urandom", "/dev/ptmx", "/dev/kvm", "/dev/kqemu", "/dev/rtc", "/dev/hpet","/dev/net/tun" ]
  • 刪除默認的虛擬網橋:
virsh net-destroy default virsh net-undefine default
  • 更新/etc/libvirt/libvirtd.conf配置文件:
listen_tls = 0 listen_tcp = 1 auth_tcp = "none"
  • 編輯libvirtd_opts變量在/etc/init/libvirt-bin.conf配置文件中:
env libvirtd_opts="-d -l"
  • 編輯/etc/default/libvirt-bin文件:
libvirtd_opts="-d -l"
  • 重啟libvirt服務使配置生效:
service libvirt-bin restart

4.4.OpenVSwitch

  • 安裝OpenVSwitch軟件包:
apt-get install openvswitch-switch openvswitch-datapath-dkms openvswitch-datapath-source module-assistant auto-install openvswitch-datapath service openvswitch-switch restart
  • 創建網橋:
ovs-vsctl add-br br-int

4.5.Neutron

  • 安裝Neutron OpenVSwitch代理:
apt-get install neutron-plugin-openvswitch-agent
  • 編輯OVS配置文件/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini:
[OVS] tenant_network_type = gre tunnel_id_ranges = 1:1000 integration_bridge = br-int tunnel_bridge = br-tun local_ip = 10.20.20.53 enable_tunneling = True#Firewall driver for realizing quantum security group function [SECURITYGROUP] firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
  • 編輯/etc/neutron/neutron.conf
rabbit_host = 10.10.10.51[keystone_authtoken] auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = neutron admin_password = service_pass signing_dir = /var/lib/neutron/keystone-signing[database] connection = mysql://neutronUser:neutronPass@10.10.10.51/neutron
  • 重啟服務:
service neutron-plugin-openvswitch-agent restart

4.6.Nova

  • 安裝nova組件:
apt-get install nova-compute-kvm python-guestfs
  • 注意:如果你的宿主機不支持kvm虛擬化,可把nova-compute-kvm換成nova-compute-qemu
  • 同時/etc/nova/nova-compute.conf配置文件中的libvirt_type=qemu
  • 在/etc/nova/api-paste.ini配置文件中修改認證信息:
[filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory auth_host = 10.10.10.51 auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = nova admin_password = service_pass signing_dirname = /tmp/keystone-signing-nova # Workaround for https://bugs.launchpad.net/nova/+bug/1154809 auth_version = v2.0
  • 編輯修改/etc/nova/nova.conf
[DEFAULT] logdir=/var/log/nova state_path=/var/lib/nova lock_path=/run/lock/nova verbose=True api_paste_config=/etc/nova/api-paste.ini compute_scheduler_driver=nova.scheduler.simple.SimpleScheduler rabbit_host=10.10.10.51 nova_url=http://10.10.10.51:8774/v1.1/ sql_connection=mysql://novaUser:novaPass@10.10.10.51/nova root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf my_ip = 10.10.10.53 # Auth use_deprecated_auth=false auth_strategy=keystone# Imaging service glance_api_servers=10.10.10.51:9292 image_service=nova.image.glance.GlanceImageService# Vnc configuration novnc_enabled=true novncproxy_base_url=http://192.168.100.51:6080/vnc_auto.html novncproxy_port=6080 vncserver_proxyclient_address=10.10.10.53 #這是與控制節點不同的地方。 vncserver_listen=0.0.0.0# Network settings network_api_class=nova.network.neutronv2.api.API neutron_url=http://10.10.10.51:9696 neutron_auth_strategy=keystone neutron_admin_tenant_name=service neutron_admin_username=neutron neutron_admin_password=service_pass neutron_admin_auth_url=http://10.10.10.51:35357/v2.0 libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver #If you want Neutron + Nova Security groups firewall_driver=nova.virt.firewall.NoopFirewallDriver security_group_api=neutron #If you want Nova Security groups only, comment the two lines above and uncomment line -1-. #-1-firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver#Metadata service_neutron_metadata_proxy = True neutron_metadata_proxy_shared_secret = helloOpenStack# Compute # compute_driver=libvirt.LibvirtDriver# Cinder # volume_api_class=nova.volume.cinder.API osapi_volume_listen_port=5900
  • 重啟nova-*服務:
cd /etc/init.d/; for i in $( ls nova-* ); do service $i restart; done
  • 檢查所有nova服務是否正常啟動:
nova-manage service list

4.7. 為監控服務安裝計算代理

  • 安裝監控服務:
ap-get install ceilometer-agent-compute
  • 配置修改/etc/nova/nova.conf:
... [DEFAULT] ... instance_usage_audit=True instance_usage_audit_period=hour notify_on_state_change=vm_and_task_state notification_driver=nova.openstack.common.notifier.rpc_notifier notification_driver=ceilometer.compute.nova_notifier
  • 重啟服務:
service ceilometer-agent-compute restart

?

5.創建第一VM

5.1.為admin租戶創建內網、外網、路由器和虛擬機

  • 設置環境變量:
vim creds-admin#Paste the following: export OS_TENANT_NAME=admin export OS_USERNAME=admin export OS_PASSWORD=admin_pass export OS_AUTH_URL="http://192.168.100.51:5000/v2.0/"source creds-admin
  • 列出已創建的用戶和租戶:
keystone user-list

# keystone tenant-list
+----------------------------------+--------------------+---------+
| id | name | enabled |
+----------------------------------+--------------------+---------+
| 4cb714b719204285acc7ecea40c33ca8 | admin | True |
| eb8c703bee4549feb2c9c551013296d5 | demo | True |
| 1e78ea73b9d741a7bcde1eaf6a6b5555 | invisible_to_admin | True |
| 16542d36818f480d94554438c1fc0761 | service | True |
+----------------------------------+--------------------+---------+

  • 為admin租戶創建網絡:
neutron net-create --tenant-id $id_of_tenant --router:external=True net_admin

Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| id | 04d2e397-ceae-43df-b4e9-63e8ea12ddfa |
| name | net_admin |
| provider:network_type | gre |
| provider:physical_network | |
| provider:segmentation_id | 1 |
| shared | False |
| status | ACTIVE |
| subnets | |
| tenant_id | 4cb714b719204285acc7ecea40c33ca8 |
+---------------------------+--------------------------------------+

  • 為admin租戶創建子網:

# neutron subnet-create --tenant-id 4cb714b719204285acc7ecea40c33ca8 net_admin 50.50.1.0/24
Created a new subnet:
+------------------+----------------------------------------------+
| Field | Value |
+------------------+----------------------------------------------+
| allocation_pools | {"start": "50.50.1.2", "end": "50.50.1.254"} |
| cidr | 50.50.1.0/24 |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 50.50.1.1 |
| host_routes | |
| id | 13be7adc-5837-4462-8887-d20548f6283f |
| ip_version | 4 |
| name | |
| network_id | 04d2e397-ceae-43df-b4e9-63e8ea12ddfa |
| tenant_id | 4cb714b719204285acc7ecea40c33ca8 |
+------------------+----------------------------------------------+

  • 為admin租戶創建路由器:

# neutron router-create --tenant-id 4cb714b719204285acc7ecea40c33ca8 router_admin
Created a new router:
+-----------------------+--------------------------------------+
| Field | Value |
+-----------------------+--------------------------------------+
| admin_state_up | True |
| external_gateway_info | |
| id | 04f207ec-6d4b-49e7-8614-b69eee12feb8 |
| name | router_admin |
| status | ACTIVE |
| tenant_id | 4cb714b719204285acc7ecea40c33ca8 |
+-----------------------+--------------------------------------+

  • 列出路由代理類型:

# neutron agent-list
+--------------------------------------+--------------------+---------+-------+----------------+
| id | agent_type | host | alive | admin_state_up |
+--------------------------------------+--------------------+---------+-------+----------------+
| 18c4a977-f9b3-4a36-bcb5-a7d92346522c | DHCP agent | network | :-) | True |
| 70e2b440-49d2-4860-9888-401dd7f6102b | Open vSwitch agent | network | :-) | True |
| b4b9781d-de82-476f-97f6-560914210f0a | L3 agent | network | :-) | True |
| d1a3c1cb-9383-410d-b84b-a9574ad328ec | Open vSwitch agent | compute | :-) | True |
+--------------------------------------+--------------------+---------+-------+----------------+

  • 將router_admin設置為L3代理類型:
neutron l3-agent-router-add $id_of_l3_agent router_adminAdded router router_admin to L3 agent
  • 將net_admin子網與router_admin路由關聯:

# neutron router-interface-add 1568ec23-0c79-43d0-8b83-52b0a63cf1df c5ac3b09-829c-48d4-8ac7-f07619479a66
Added interface 6e2533c9-f6a0-4e40-a05c-074b62164995 to router 1568ec23-0c79-43d0-8b83-52b0a63cf1df.

  • 創建外網net_external,注意設置--router:external=True:

# neutron net-create net_external --router:external=True --shared
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| id | bcf6e1cb-dd57-40a8-9b61-a6bc6d0a6696 |
| name | net_external |
| provider:network_type | gre |
| provider:physical_network | |
| provider:segmentation_id | 2 |
| router:external | True |
| shared | True |
| status | ACTIVE |
| subnets | |
| tenant_id | 4cb714b719204285acc7ecea40c33ca8 |
+---------------------------+--------------------------------------+

  • 為net_admin創建子網,注意設置的gateway必須在給到的網段內:

neutron subnet-create --tenant-id 4cb714b719204285acc7ecea40c33ca8 --allocation-pool start=192.168.100.110,end=192.168.100.130 --gateway=192.168.100.1 net_external 192.168.100.0/24 --enable_dhcp=False
Created a new subnet:
+------------------+----------------------------------------------------+
| Field | Value |
+------------------+----------------------------------------------------+
| allocation_pools | {"start": "192.168.100.110", "end": "192.168.100.130"} |
| cidr | 192.168.100.0/24 |
| dns_nameservers | |
| enable_dhcp | False |
| gateway_ip | 192.168.100.1 |
| host_routes | |
| id | d8461e75-e259-43c5-9bdc-68221a6cf111 |
| ip_version | 4 |
| name | |
| network_id | bcf6e1cb-dd57-40a8-9b61-a6bc6d0a6696 |
| tenant_id | 4cb714b719204285acc7ecea40c33ca8 |
+------------------+----------------------------------------------------+

  • 將net_external與router_admin路由器關聯:
neutron router-gateway-set router_admin net_externalSet gateway for router router_admin
  • 創建floating ip:

neutron floatingip-create net_external
Created a new floatingip:
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| fixed_ip_address | |
| floating_ip_address | 192.168.100.111 |
| floating_network_id | bcf6e1cb-dd57-40a8-9b61-a6bc6d0a6696 |
| id | 942b66e7-d4a5-4136-8be0-3bf00688a56d |
| port_id | |
| router_id | |
| tenant_id | 4cb714b719204285acc7ecea40c33ca8 |
+---------------------+--------------------------------------+

# neutron floatingip-create net_external
Created a new floatingip:
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| fixed_ip_address | |
| floating_ip_address | 192.168.100.112 |
| floating_network_id | bcf6e1cb-dd57-40a8-9b61-a6bc6d0a6696 |
| id | e46c9811-59f2-4a0f-a7b0-3c93185dde58 |
| port_id | |
| router_id | |
| tenant_id | 4cb714b719204285acc7ecea40c33ca8 |
+---------------------+--------------------------------------+

?

6.參考文檔:

1.openstack官方文檔:http://docs.openstack.org/havana/install-guide/install/apt/openstack-install-guide-apt-havana.pdf? 目前openstack官方文檔已經做的很好了,如何安裝,配置,寫的都挺不錯的,還有neutron那一節對各種情況的網絡結構列出的很詳細。

2.感謝Bilel Msekni做出的貢獻,https://github.com/mseknibilel/OpenStack-Grizzly-Install-Guide/blob/OVS_MultiNode/OpenStack_Grizzly_Install_Guide.rst

?

原文請參照:http://www.cnblogs.com/awy-blog/p/3447176.html

轉載于:https://www.cnblogs.com/awy-blog/p/3447176.html

總結

以上是生活随笔為你收集整理的Ubuntu 12.04 Server OpenStack Havana多节点(OVS+GRE)安装的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

国产69精品久久久久9999apgf | 久久爱资源网 | 一区 在线观看 | 中文字幕在线观看完整 | 91丨九色丨国产丨porny精品 | 在线看片91 | 亚洲天堂视频在线 | 在线观看91av | 色播五月婷婷 | 日韩专区在线观看 | 96精品高清视频在线观看软件特色 | 国产拍在线 | 日韩午夜在线观看 | 中文字幕中文 | 五月天综合在线 | 手机成人在线 | 日韩在线视频不卡 | 国产日韩在线一区 | 一区二区中文字幕在线 | 日韩欧美视频一区 | 久久精品国产久精国产 | 91视频下载| 97福利视频| 成人天堂网 | 免费黄色看片 | 人人插人人 | 亚洲a在线观看 | 亚洲黄色免费在线 | 99久久精品久久久久久动态片 | 友田真希av| 狠狠网站 | 在线观看视频97 | 成人一区二区三区中文字幕 | 成人久久电影 | 99视频在线精品免费观看2 | 一区二区三区韩国免费中文网站 | 91av在线不卡 | 人人爽人人爽av | 免费久久99精品国产婷婷六月 | 欧美精品亚州精品 | 中文字幕在线观看网址 | 欧美黑人性猛交 | 国产精品国产三级在线专区 | 99自拍视频在线观看 | 国产精品99久久久久 | 成年人网站免费观看 | 五月婷婷色丁香 | 蜜桃视频色 | 成人免费视频a | av电影在线观看 | 天天操天天干天天操天天干 | 最近免费观看的电影完整版 | 激情丁香久久 | 国产成人在线播放 | 色香com. | 亚洲国产一区二区精品专区 | 91丨九色丨国产在线 | 成人a级大片 | 亚洲天堂网在线播放 | 果冻av在线 | 美女在线国产 | 中文字幕av免费在线观看 | 国产中出在线观看 | 国产九色91 | 99久久精品无免国产免费 | 在线91播放 | 国产女教师精品久久av | 久久精品永久免费 | 国产99久久99热这里精品5 | 中文字幕一区二区三区在线视频 | av一级一片 | 国产精品久久久一区二区三区网站 | 国产经典av | 国产精选视频 | 精品视频97| 亚洲丁香久久久 | 国产无限资源在线观看 | 天天射天天射天天 | 伊人va| 亚洲精品白浆高清久久久久久 | 国产亚洲精品久久久久久 | 亚洲色影爱久久精品 | a视频免费在线观看 | www.伊人网.com| 亚洲午夜精品福利 | 久草在线中文视频 | av电影中文字幕在线观看 | 久久tv视频 | 六月激情 | 精品视频久久久 | 国产精品成人久久久 | 成人一级在线观看 | 免费日韩av片 | 婷婷丁香六月 | 狠狠的操你 | 久久久影片 | 在线99热 | 国产精品久久久久久一区二区三区 | 中文字幕在线免费播放 | 在线观看国产成人av片 | 国产精品视频免费看 | 国产黄色片久久久 | 欧美大码xxxx | 欧美人zozo| 亚洲欧美成人综合 | 亚洲黄网站 | 中文字幕av播放 | 日韩在线观看网址 | 三三级黄色片之日韩 | 黄色软件在线观看 | 91精品一区二区三区蜜桃 | 欧美人体xx | 久久久久免费精品国产 | 久久综合久久鬼 | 在线观看视频中文字幕 | 国产精品视频免费在线观看 | 国产99在线 | 在线免费精品视频 | 天堂成人在线 | 九色精品 | 久99久中文字幕在线 | 久久久久www | 亚洲va韩国va欧美va精四季 | 亚州天堂 | 日本一区二区三区免费看 | 六月丁香激情综合色啪小说 | 中文字幕在线观看一区 | 蜜桃传媒一区二区 | 中文字幕在线播放第一页 | 夜夜躁日日躁狠狠久久88av | 国产精品自产拍在线观看中文 | 国产精品99久久久久久久久久久久 | 久热国产视频 | 91九色国产 | 久热色超碰| 欧美一级日韩免费不卡 | 在线中文字幕播放 | 99色婷婷 | 美女网站一区 | 国产女人18毛片水真多18精品 | 99久久99久久免费精品蜜臀 | 婷婷激情综合网 | 三级毛片视频 | 91最新在线 | 国产成人精品日本亚洲999 | 91人人爱 | 在线观看一区 | 中文字幕一区2区3区 | 中文一二区 | 久久精品麻豆 | 夜夜操网站| 中文字幕4 | 亚洲天天摸日日摸天天欢 | 激情久久久久久久久久久久久久久久 | 午夜黄色一级片 | 99精品免费久久久久久久久日本 | 天天色天天操天天爽 | 三级黄色a | 免费看污在线观看 | 天天干天天做天天爱 | 国产精品一区二区白浆 | 成年人在线观看网站 | 99久久久久久久久 | 亚洲九九 | 久久在线视频在线 | 在线看中文字幕 | 国产精品18毛片一区二区 | 久久久久国产视频 | 欧美在线91 | 天天综合日日夜夜 | av不卡中文| 免费三级大片 | 日韩视频免费在线观看 | 国产精品久久久久久一区二区 | 91在线免费公开视频 | 精品久久久久_ | 在线网址你懂得 | 国产一区欧美二区 | 日韩精品久久一区二区 | 国产成人精品亚洲日本在线观看 | 欧美激情视频在线免费观看 | 久久免费视频这里只有精品 | 久久无码精品一区二区三区 | 免费欧美| 亚洲欧美成人在线 | 国产色在线,com | 国产一区二区精 | 亚洲 综合 国产 精品 | 一区二区三区精品在线视频 | 久久99视频免费 | 亚洲精品动漫在线 | 成人在线视频免费 | 日韩精品一区二区三区第95 | 久久不射网站 | 久久视频 | 久久五月网 | 五月色丁香 | 中文字幕一区二区三 | 一级片视频免费观看 | japanese黑人亚洲人4k | 日韩在线资源 | 在线观看视频黄色 | 91资源在线视频 | 激情欧美一区二区三区免费看 | 欧美黑吊大战白妞欧美 | 日韩一区在线播放 | 99热这里只有精品久久 | 黄色亚洲 | 狠狠操天天射 | 久久久久久国产精品美女 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 久久精品久久99 | 免费高清男女打扑克视频 | 久久中文精品视频 | 在线观看 国产 | 天天综合久久 | 日本黄区免费视频观看 | 国产免费一区二区三区网站免费 | 黄色av一区 | 在线看一区| 伊人开心激情 | 91精品久久久久久久久久久久久 | 在线观看免费 | 五月香视频在线观看 | av大片网址| 国产尤物在线视频 | 久久精品欧美一 | 美女av免费看 | 久热只有精品 | 懂色av一区二区三区蜜臀 | 中文字幕亚洲精品日韩 | 97高清免费视频 | 99视频在线精品免费观看2 | 久久艹影院 | 日本午夜免费福利视频 | 成人黄色在线观看视频 | 国产一区二区三区四区在线 | 日韩精品一区二区三区中文字幕 | 国产视频导航 | 美女很黄免费网站 | 日日干av | 精品嫩模福利一区二区蜜臀 | 丁香视频免费观看 | 黄色小说网站在线 | 色综合久久88色综合天天 | 精品国产乱码一区二 | 69热国产视频 | 日韩av在线资源 | 2019中文最近的2019中文在线 | 久久精品国产亚洲精品 | 99久久99久久精品国产片 | 99热这里有精品 | 男女视频91 | 国产免费一区二区三区最新6 | 综合色在线观看 | 91自拍成人| 最近中文字幕高清字幕在线视频 | 精品一区二区免费在线观看 | 国产一区二区在线影院 | 国产成人精品福利 | aaawww| av在线中文 | 人人要人人澡人人爽人人dvd | 福利一区视频 | 日韩精品一区二区三区中文字幕 | 成人丝袜 | 婷婷色av| 免费观看完整版无人区 | 四虎成人精品 | 国产v欧美 | 丝袜足交在线 | 97超碰资源总站 | 国产99视频在线观看 | 中文字幕123区 | 99色在线观看视频 | 午夜影院在线观看18 | 欧美精品一区二区三区一线天视频 | 中文字幕日本在线 | 亚洲精品乱码久久久久久按摩 | 97视频一区 | 夜夜骑日日| 超碰97公开 | 久久久久黄 | 久久久精品国产一区二区 | 黄色小说在线免费观看 | 美女在线观看网站 | 五月婷婷婷婷婷 | 久久久高清一区二区三区 | 一区二区三区高清在线 | 色吊丝av中文字幕 | 亚洲精品乱码久久久久久久久久 | 在线观看免费av网站 | 在线视频 精品 | 伊人色综合网 | 国产成人高清av | 中文字幕在线播放一区二区 | 黄色一级大片在线免费看产 | 69av视频在线观看 | 亚洲精品88欧美一区二区 | 999ZYZ玖玖资源站永久 | 国产精品久久久久久久久久三级 | 国产日韩在线一区 | 国产99精品在线观看 | 精品在线观看国产 | 亚洲最大免费成人网 | 97在线观看免费观看 | 综合婷婷丁香 | 天天色天天搞 | 免费人成在线观看网站 | 亚洲精品高清视频在线观看 | 亚洲五月综合 | 国产精品久久久久久超碰 | 日韩极品在线 | 国产精品一区二区在线播放 | 欧美亚洲另类在线视频 | 天天激情天天干 | 国产日韩欧美中文 | 免费高清在线观看电视网站 | 日韩国产欧美在线播放 | 久草在线视频在线 | 日韩av电影网站在线观看 | 日本三级久久久 | 亚洲涩综合 | 国产精品99久久久久久久久久久久 | 亚洲年轻女教师毛茸茸 | 十八岁以下禁止观看的1000个网站 | 免费的黄色的网站 | 人人爽人人澡 | 亚一亚二国产专区 | 日韩1级片| 日本久久不卡视频 | 国产视频精品久久 | 色网站在线免费 | 国产精品自在线拍国产 | 麻豆影视在线免费观看 | 97精品国产97久久久久久免费 | 日韩视频a| 91av电影在线| 精品国产亚洲一区二区麻豆 | 一级黄色视屏 | 免费日韩 精品中文字幕视频在线 | 久久精品免视看 | 成人午夜性影院 | 日本护士撒尿xxxx18 | 天天干天天插 | www.玖玖玖| 亚州精品在线视频 | 久久免费看视频 | 国产看片网站 | 国产高清视频免费观看 | 好看av在线| 亚洲欧洲在线视频 | 久久久性 | 91高清在线看 | 国产自在线 | 成人国产精品久久久久久亚洲 | 人人澡人人添人人爽一区二区 | 日韩欧美综合精品 | 2024国产在线 | 少妇bbb好爽 | 成人午夜性影院 | 高清日韩一区二区 | 中文字幕 婷婷 | 在线观看久久久久久 | 国产精品视频 | 色吊丝在线永久观看最新版本 | 日韩视频一区二区在线观看 | 天天干天天干 | 亚洲影院一区 | 亚洲国产电影在线观看 | 亚洲理论在线观看电影 | 黄色av一区二区 | 久久 一区 | 久久综合色天天久久综合图片 | av女优中文字幕在线观看 | 亚洲精品97| 狠狠狠色丁香综合久久天下网 | av久久在线 | 色综合久久网 | 亚洲欧美怡红院 | 狠狠躁夜夜a产精品视频 | 国产美腿白丝袜足在线av | 久久久久久久久久久久久影院 | 亚洲精品视频在线播放 | 天天干,天天射,天天操,天天摸 | 日本精品免费看 | 日韩av片无码一区二区不卡电影 | 亚洲在线成人精品 | 国产精品18久久久久久久久久久久 | 亚洲综合色激情五月 | 欧美日韩xxxxx | 精品国产一区二区三区四 | 久久电影网站中文字幕 | 亚洲国产片色 | 天天做天天射 | 欧美一级淫片videoshd | 三级黄色在线 | 亚洲精品乱码久久久久久 | 日韩专区中文字幕 | 亚洲精品97 | 色婷婷国产 | 九七视频在线 | 91 在线视频| 丝袜护士aⅴ在线白丝护士 天天综合精品 | 免费成人在线电影 | 久久亚洲福利 | 日韩免费一级a毛片在线播放一级 | 成人动漫精品一区二区 | 久久综合精品国产一区二区三区 | 国产免费成人 | 久久久国产99久久国产一 | 免费看av在线 | 国产成人精品综合久久久久99 | 黄色tv视频| 亚洲日本韩国一区二区 | av在线中文 | 色射爱| 99精品免费久久久久久久久日本 | 狠狠综合久久 | 91色吧| 欧美天堂久久 | 99久久久久久国产精品 | 999男人的天堂 | 亚洲精品videossex少妇 | 国产日本三级 | 国产在线欧美 | 亚洲三级在线播放 | 亚洲成人一二三 | 久草在线免费看视频 | 天堂av在线免费 | 国产成人专区 | 日韩免费观看一区二区 | 又黄又爽的视频在线观看网站 | 一二区电影 | 国产欧美三级 | 国产一区二区在线免费观看 | 欧美一级特黄aaaaaa大片在线观看 | 中文字幕在线一区二区三区 | 91av在线免费观看 | 久久观看 | 日韩在线观看视频网站 | www.人人干| 中文字幕在线视频免费播放 | 精品福利视频在线观看 | 香蕉视频国产在线 | 国产精品高清在线观看 | 九9热这里真品2 | 亚洲在线黄色 | 国产在线超碰 | 麻豆91视频 | 精品久久久久久久久亚洲 | 免费福利视频网站 | 亚洲综合精品视频 | 国产一区免费视频 | 99精品免费久久久久久久久 | 日本一区二区三区视频在线播放 | 日韩欧美电影在线 | 亚洲一区免费在线 | av在线a | 久久久五月天 | 欧美精品少妇xxxxx喷水 | 五月婷婷在线观看 | 久草视频观看 | 国产明星视频三级a三级点| 欧美精品生活片 | 色综合天天狠天天透天天伊人 | 在线观看国产高清视频 | www.夜夜爱 | 在线观看国产中文字幕 | 成人影音在线 | 99热这里只有精品国产首页 | 亚洲国产色一区 | 人人干在线观看 | 97超碰在 | 黄色av电影一级片 | 精品视频在线播放 | 久久免费看毛片 | 九九九国产 | 国产精品成人免费精品自在线观看 | 日韩三级一区 | 久久精品美女视频 | 色婷婷国产 | 久av在线| 狠狠色狠狠色综合系列 | 国产xxxx做受性欧美88 | 日本精品一二区 | 国产成人福利在线观看 | 国产精品久久一区二区无卡 | 国产精品乱码高清在线看 | 麻豆视频在线看 | 中文字幕亚洲在线观看 | 91精品免费 | 国产91精品一区二区 | 五月天激情综合网 | 亚洲精品动漫在线 | 456免费视频 | 在线亚洲激情 | 久久激情视频网 | 久久精品伊人 | 精品亚洲免费 | 在线视频1卡二卡三卡 | 日韩精品欧美视频 | 久久久久久久免费观看 | 欧美性极品xxxx做受 | 91手机电视 | 欧美日韩后 | 狠狠五月天| 国产精品久久久久久超碰 | 美女免费黄网站 | 日韩在线高清 | 天天干,狠狠干 | 成 人 黄 色视频免费播放 | 在线观看日韩精品视频 | 免费黄a大片 | 日韩高清在线一区 | 亚洲精品66 | 亚洲在线视频免费 | 一二区精品 | 成人久久免费视频 | 中文字幕二区在线观看 | 免费在线观看不卡av | 麻豆高清免费国产一区 | 成人一级电影在线观看 | 久久精品婷婷 | 国产高清无线码2021 | 国产精品毛片完整版 | 97久久精品午夜一区二区 | 国产亚洲一区 | 综合激情伊人 | 国产精品爽爽久久久久久蜜臀 | 激情偷乱人伦小说视频在线观看 | 国产精品国产三级国产不产一地 | 免费看色网站 | 成人国产精品免费观看 | 91精品国产自产老师啪 | 99在线热播 | 91网免费看| 中文字幕在线视频网站 | 欧美夫妻性生活电影 | 国产美女被啪进深处喷白浆视频 | 国产精品尤物视频 | 亚洲精品久久久久久久蜜桃 | 国产精品av免费 | 亚洲一区二区观看 | 精品一区二区三区在线播放 | 日韩视频1区 | av中文在线影视 | 久久精品亚洲国产 | 黄色影院在线观看 | 91大片网站 | 日本性高潮视频 | 亚洲二区精品 | 精品国产一区二区在线 | 人人超碰在线 | 亚洲无在线| 欧美三人交 | 日本三级人妇 | 午夜av免费 | 色资源在线观看 | 成人网页在线免费观看 | 97夜夜澡人人双人人人喊 | 97成人在线观看视频 | 欧美日韩高清不卡 | 狠狠干干| 男女精品久久 | 又黄又爽又无遮挡免费的网站 | 最近中文字幕视频完整版 | 最近日本字幕mv免费观看在线 | 日韩h在线观看 | 久久色在线观看 | 国产三级精品在线 | 午夜精品电影 | 国产精品少妇 | 久久99精品久久久久久清纯直播 | 日韩综合视频在线观看 | 精品视频国产一区 | 国产综合在线视频 | 欧美视频99 | 国产精品免费一区二区三区 | 国产高清免费av | 国产精品一区二区在线 | 国产精品原创视频 | 成人午夜精品福利免费 | 亚洲激情六月 | 天天干天天操天天入 | 久久影院精品 | 97超在线视频 | 天天做日日做天天爽视频免费 | 四虎影视欧美 | 人成午夜视频 | 一级黄色片网站 | 国产一区二区在线视频观看 | 成人在线播放网站 | 免费在线观看国产黄 | 午夜12点 | 国产一区私人高清影院 | 国产精品电影一区 | 日韩剧 | 亚洲男男gaygayxxxgv | 国产成人精品综合久久久久99 | 国产精品免费久久久久影院仙踪林 | 国产视频在线一区二区 | 91在线中文字幕 | 超碰在线cao | 中文字幕观看在线 | 最近中文字幕免费av | 最近中文字幕视频完整版 | av大全免费在线观看 | 欧美国产日韩一区二区三区 | 欧美激情在线网站 | 日本中出在线观看 | 国产不卡在线观看 | 日韩一区二区三区高清免费看看 | 精品久久亚洲 | 国产不卡在线播放 | 一区二区三区在线视频111 | 亚洲国产精品成人精品 | 狠狠狠色丁香综合久久天下网 | 国产精品尤物视频 | 天天色天天上天天操 | 久久国产乱 | 日本精品久久久久中文字幕5 | 国产成人精品一区二区三区福利 | 日韩中文字幕网站 | 亚洲精品国产精品乱码在线观看 | 日本成址在线观看 | 国产亚洲精品久久网站 | 操操日| 久久视频在线看 | 另类五月激情 | 四虎海外影库www4hu | 五月天丁香综合 | 色婷婷国产 | 99麻豆久久久国产精品免费 | 奇米影音四色 | 91完整版在线观看 | 丁香在线观看完整电影视频 | 日本在线观看一区二区三区 | 色网站中文字幕 | 日韩大片在线 | 久久久国产一区二区 | 国产亚洲精品电影 | 国产精品99久久久久久人免费 | 精品一二三区视频 | 91看片在线观看 | 91久久人澡人人添人人爽欧美 | 国产福利91精品 | 在线影视 一区 二区 三区 | 91久久精品一区二区三区 | 在线观看视频国产 | 一级免费黄视频 | 高潮久久久久久 | 国产成人精品亚洲精品 | 久久久久久毛片精品免费不卡 | 欧美国产日韩一区 | 精品国产乱码久久久久久久 | 五月婷婷色播 | 欧美久久久久久 | 综合av在线| 国产精品免费在线播放 | 九九热精品视频在线播放 | 国产色a在线观看 | 国产精品 中文在线 | 日韩高清av在线 | 日韩在线不卡av | 午夜免费电影院 | 国产精品不卡在线 | 久久国产乱 | 国产精品九九九九九九 | 精品人人人 | 久久国产精品免费 | 日韩中文字幕免费电影 | 色中色亚洲 | 免费视频黄 | 人人添人人澡 | 91精品蜜桃 | 亚洲视频久久久久 | 亚洲美女在线国产 | 成人免费视频在线观看 | 麻豆视频免费看 | 久久久久久久看片 | 亚洲精品国产自产拍在线观看 | 国产精品自产拍在线观看桃花 | 午夜私人影院久久久久 | 久久免费精品 | 免费在线黄色av | 97国产超碰| 国产91影院 | 91爱看片 | 婷婷久久五月天 | 亚洲国产日韩欧美 | 日韩欧美精品一区 | 欧美伦理电影一区二区 | 日韩欧美一区二区三区视频 | 18网站在线观看 | 久久免费激情视频 | 免费看日韩 | 人人躁 | 特黄色大片 | 亚洲91中文字幕无线码三区 | 99视频+国产日韩欧美 | 香蕉国产91 | 91亚洲综合 | 国产精品99久久久久久人免费 | 中文字幕在线视频免费播放 | 国产少妇在线观看 | 美女一区网站 | 日韩精品免费在线 | 国产精品久久久久av福利动漫 | 精品夜夜嗨av一区二区三区 | 久草在线视频看看 | 视频在线日韩 | 国产美女无遮挡永久免费 | 日韩视频在线观看免费 | 国内精品久久久久久久久久久久 | 久久久久久久久艹 | 国产精品久久久久久久毛片 | 久久久www | 精品视频免费久久久看 | 17videosex性欧美 | 操操日日 | 国产福利专区 | 欧美国产日韩一区 | 亚洲2019精品 | 精品国产一区二区三区免费 | 国内精品久久久久影院日本资源 | 一区二区三区免费在线观看 | 成年人在线电影 | 中文字幕人成乱码在线观看 | 成人免费观看视频大全 | 久草在线最新免费 | 最近中文字幕完整视频高清1 | www.天天综合 | 操操操人人 | 国产aaa大片 | 欧美日韩在线第一页 | 日本女人逼 | 久久免费视频国产 | 国产色综合天天综合网 | 欧美日韩一区二区三区视频 | 一级黄色片在线播放 | 九九九热精品免费视频观看网站 | 国内精品久久久久影院男同志 | 国产成人333kkk | 爱爱av在线| 成人在线观看资源 | 婷婷丁香色 | 国产高清在线免费视频 | 五月婷婷六月丁香 | 激情五月播播久久久精品 | 黄www在线观看 | 精品视频在线视频 | 亚洲精品乱码久久久久久写真 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 狠狠色丁香久久婷婷综合丁香 | 69中文字幕| 91麻豆产精品久久久久久 | 岛国av在线不卡 | 欧美日韩不卡一区二区 | 国产中文字幕视频在线观看 | 成人资源站 | 免费h漫在线观看 | 午夜10000 | 日本黄色免费在线 | 这里只有精品视频在线 | 国产人在线成免费视频 | www五月天com | 夜色成人网 | 久草视频免费观 | 一区二区视频欧美 | 欧美成人性网 | 日韩精品免费一线在线观看 | 久久久久亚洲精品国产 | 久久人人爽爽人人爽人人片av | 国产品久精国精产拍 | 亚洲理论在线 | 96av视频| 一区二区三区在线观看中文字幕 | 在线小视频国产 | 精品在线小视频 | aⅴ精品av导航 | 狠狠色丁香久久婷婷综合_中 | 天天爽天天做 | 在线免费观看视频你懂的 | 99国内精品| 国产九色在线播放九色 | 麻豆一区在线观看 | 欧美日韩在线网站 | 天堂中文在线视频 | 日本三级国产 | 久久综合久久综合久久综合 | 亚洲一级免费电影 | 婷婷国产在线观看 | 亚洲精品在线免费观看视频 | 久久精品网站视频 | 97国产大学生情侣酒店的特点 | 日韩精品一区二区免费 | 在线观看电影av | 狠狠色丁香婷综合久久 | 这里只有精品视频在线观看 | 色吧久久| 久久久精品网站 | 国产精品久久久久久欧美 | 日韩黄色一级电影 | 手机在线看a | 欧美日韩二区三区 | 日本一区二区免费在线观看 | 美女视频网 | 国产成人一区二区三区在线观看 | 爱情影院aqdy鲁丝片二区 | 玖玖爱国产在线 | 91刺激视频 | 久久国产精品99国产 | 成人性生爱a∨ | 欧美在线观看视频一区二区 | 精品视频在线免费 | 亚洲精品三级 | 天天天干| 久久精品视频日本 | 亚洲国产中文字幕 | 久久玖| 国产在线超碰 | 久久精品爱爱视频 | 久久精品—区二区三区 | 精品一区二区6 | 中文字幕在 | 日韩中文字幕视频在线观看 | 国产午夜三级一区二区三 | www.五月婷 | 婷婷精品国产欧美精品亚洲人人爽 | 激情电影影院 | 亚洲精品国产精品国自产在线 | 欧美性爽爽 | 国产精品免费久久久久久 | 免费在线成人av | 波多野结衣电影一区二区三区 | 国产精品成人免费一区久久羞羞 | 久久久久亚洲精品中文字幕 | 久久久久久久久久久久久久电影 | 伊人天堂久久 | 91视频首页 | 日本精品一 | 一区二区三区四区影院 | 片黄色毛片黄色毛片 | 在线a亚洲视频播放在线观看 | 国产精品一区免费看8c0m | 久久久久久视频 | 91成人在线视频 | 欧美午夜性生活 | 日韩久久久久久久久久 | 黄色网免费 | 日韩欧美亚洲 | 久久精品视频免费播放 | 深爱激情亚洲 | 国产69精品久久久久久久久久 | av久久久| 国产精品免费视频观看 | 黄污在线看 | 成人小视频在线观看免费 | 91最新视频在线观看 | 国产精品福利av | 在线av资源 | 久久久久久伊人 | 探花视频在线观看+在线播放 | 国产97免费 | 97网站| 91视频高清 | 一区二区三高清 | 日韩色爱| 9999在线视频 | 草久久影院 | 日韩av成人免费看 | 天天天天射 | 国产123区在线观看 国产精品麻豆91 | 日韩三级视频在线观看 | 免费人成在线观看 | 91精品老司机久久一区啪 | 99热精品国产一区二区在线观看 | 国产第一页在线播放 | 一区二区三区免费 | 国产精品久久久久久妇 | 一区二区三区久久 | 91精品国自产拍天天拍 | 国产精品大全 | 2019中文在线观看 | 91精品视频网站 | 亚洲欧美综合 | 五月婷婷导航 | 亚洲艳情 | 蜜桃av人人夜夜澡人人爽 | 四虎影视4hu4虎成人 | 国产精品免费久久久久久久久久中文 | 免费观看一级特黄欧美大片 | 国产日韩欧美在线 | 国产麻豆精品一区二区 | 婷婷夜夜| 999视频网| 久久免视频 | a色视频| 麻豆一区二区 | 成人免费观看电影 | 色欧美88888久久久久久影院 | 日本中文字幕在线观看 | 精品国产视频在线观看 | 色婷婷骚婷婷 | 中文字幕丝袜一区二区 | 欧美日韩综合在线观看 | 日日操日日插 | 激情丁香久久 | 国产 视频 高清 免费 | 在线观看中文字幕网站 | 亚洲激情综合 | 97色婷婷成人综合在线观看 | 国产91在线播放 | 成人av片在线观看 | 中文字幕免费高清在线观看 | 成人99免费视频 | 五月天网页 | 国产精品第一视频 | 欧美日韩不卡在线 | 四虎国产精品免费 | 91香蕉视频在线下载 | 国产在线精品二区 | 成人三级网址 | 日本久草电影 | 日本视频久久久 | 国产美女免费看 | 狠狠色狠狠综合久久 | 午夜视频在线网站 | 日韩成人免费在线 | 天天操狠狠干 | 国内精品久久天天躁人人爽 | 国内精品久久久久久久 | 成人9ⅰ免费影视网站 | 久久视频在线免费观看 | 亚洲精品国产自产拍在线观看 | 中文日韩在线 | 成人在线免费小视频 | 亚洲免费一级电影 | 日韩有码专区 | 高清av网站 | 99视频在线精品 | 久久成人精品电影 | 久久久久久久看片 | 国产中文字幕在线视频 | 国产精品短视频 | 日日麻批40分钟视频免费观看 | 天天草天天干 | 亚洲激情在线观看 | 国产亚洲精品女人久久久久久 | 深爱激情站 | 一区二区三区在线观看免费视频 | av怡红院 | 深爱激情婷婷网 | 精品美女视频 | 日日碰狠狠躁久久躁综合网 | 成人av在线亚洲 | 成人一级黄色片 | 在线观看视频一区二区三区 | 精品日韩中文字幕 | 欧美在线a视频 | av在线播放观看 | 特级西西人体444是什么意思 | 国产91大片| 精品国产色 | 中文字幕国产一区二区 | 国产精品v欧美精品v日韩 | 国产午夜一区二区 | 久久久精品 一区二区三区 国产99视频在线观看 | 亚洲国产视频在线 | 最近中文字幕mv | 成人免费xxxxxx视频 | 久久国产精品一国产精品 | 深爱激情五月综合 | av大片网址 | 伊人成人久久 | av官网| 亚洲精品乱码久久 | 天天操夜夜操夜夜操 | 久久免费国产精品1 | 久久视频这里有精品 | 99久久精品免费看 | 日韩精品短视频 | 黄色一区三区 | 91精品国产欧美一区二区 | 午夜影院先 | 亚洲另类视频在线 | 久久一区二区三区国产精品 | 久艹在线观看视频 | 久久午夜视频 | 国产高清视频在线观看 | 亚洲精品国产精品乱码不99热 | 国产精品免费在线播放 | 天天艹天天爽 | 国产精品久久一区二区无卡 | 国产日韩欧美中文 | 天天爱天天色 | 日韩,中文字幕 |