# yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python python-virtinst libvirt-client bridge-utils # yum groupinstall Virtualization "Virtualization Client" "Virtualization Platform" "Virtualization Tools" # yum install openstack-utils memcached qpid-cpp-server openstack-nova dnsmasq-utils python-keystone-auth-token
virbr0
. Il comando ifconfig
dovrebbe mostrarla nel suo output: virbr0 Link encap:Ethernet HWaddr 52:54:00:54:65:A1 inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:45 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:7585 (7.4 KiB)
/etc/qpidd.conf
sia settato auth=no
.
force_dhcp_release
: # openstack-config --set /etc/nova/nova.conf DEFAULT force_dhcp_release FalseNota bene: non viene mostrato nessun output ma modificato il file di configurazione.
# openstack-config --set /etc/nova/nova.conf DEFAULT libvirt_inject_partition -1Nota bene: non viene mostrato nessun output ma modificato il file di configurazione.
/etc/nova
nel seguente modo. nova.conf
: [DEFAULT] # LOG/STATE logdir = /var/log/nova verbose = True state_path = /var/lib/nova lock_path = /var/lib/nova/tmp # AUTHENTICATION auth_strategy = keystone # SCHEDULER #compute_scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler # VOLUMES volume_group = <VOLUME_NAME> #volume_name_template = volume-%08x iscsi_helper = tgtadm # DATABASE del Cloud Controller sql_connection = mysql://nova:<YOUR_NOVADB_PASSWORD>@openstack-01.cnaf.infn.it/nova # COMPUTE libvirt_type = kvm connection_type = libvirt #instance_name_template = instance-%08x #api_paste_config=/etc/nova/api-paste.ini #allow_resize_to_same_host=True # APIS #osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions #ec2_dmz_host=192.168.206.130 #s3_host=192.168.206.130 # GLANCE #image_service=nova.image.glance.GlanceImageService #glance_api_servers=192.168.206.130:9292 # NETWORK network_manager = nova.network.manager.FlatDHCPManager force_dhcp_release = True dhcpbridge_flagfile = /etc/nova/nova.conf firewall_driver = nova.virt.libvirt.firewall.IptablesFirewallDriver # Change my_ip to match each host my_ip = <THIS_SERVER_IP> public_interface = eth0 #vlan_interface = eth0 flat_network_bridge = virbr0 flat_interface = eth0 fixed_range = 192.168.122.0/24 # NOVNC CONSOLE #novncproxy_base_url=http://192.168.206.130:6080/vnc_auto.html # Change vncserver_proxyclient_address and vncserver_listen to match each compute host vncserver_listen = <THIS_SERVER_IP> vncserver_proxyclient_address = <THIS_SERVER_IP> # Qpid qpid_hostname = openstack-01.cnaf.infn.it rpc_backend = nova.rpc.impl_qpid # OTHER dhcpbridge = /usr/bin/nova-dhcpbridge injected_network_template = /usr/share/nova/interfaces.template libvirt_xml_template = /usr/share/nova/libvirt.xml.template libvirt_nonblocking = True libvirt_inject_partition = -1 vpn_client_template = /usr/share/nova/client.ovpn.template credentials_template = /usr/share/nova/novarc.template root_helper = sudo nova-rootwrap remove_unused_base_images = TrueDove:
sql_connection
e qpid_hostname
"openstack-01.cnaf.infn.it" è il server che ospita il Cloud Controller
flat_network_bridge
"virbr0" è l'interfaccia di rete virtuale del server che si sta configurando
/etc/nova/api-paste.ini
(la parte precedente rimane invariata): [...] [filter:authtoken] paste.filter_factory = keystone.middleware.auth_token:filter_factory service_protocol = http service_host = <KEYSTONE_SERVICE_IP> service_port = 5000 auth_host = <KEYSTONE_SERVICE_IP> auth_port = 35357 auth_protocol = http auth_uri = http://<KEYSTONE_SERVICE_IP>:5000/ admin_tenant_name = service admin_user = nova admin_password = <NOVA_PASSWORD>Dove:
nova-manage
potrebbe dare in output alcuni messaggi di Warning su metodi deprecati.
# for svc in api objectstore compute network volume scheduler cert; do echo openstack-nova-$svc; service openstack-nova-$svc stop ; chkconfig openstack-nova-$svc on; done # nova-manage db sync # for svc in api objectstore compute network volume scheduler cert; do echo openstack-nova-$svc; /etc/init.d/openstack-nova-$svc start ; done
# nova-manage service list Binary Host Zone Status State Updated_At nova-scheduler stack-03.cnaf.infn.it nova enabled :-) 2012-08-31 09:46:24 nova-compute stack-03.cnaf.infn.it nova enabled :-) 2012-08-31 09:46:26 nova-network stack-03.cnaf.infn.it nova enabled :-) 2012-08-31 09:46:25 nova-cert stack-03.cnaf.infn.it nova enabled :-) 2012-08-31 09:46:24 nova-volume stack-03.cnaf.infn.it nova enabled :-) 2012-08-31 09:46:24
virbr0
). Il seguente comando, ad esempio, crea una sottorete con range 192.168.122.0/24. # nova-manage network create private --multi_host=T --fixed_range_v4=192.168.122.0/24 --bridge_interface=virbr0 --num_networks=1 --network_size=256 # nova-manage network list id IPv4 IPv6 start address DNS1 DNS2 VlanID project uuid 1 192.168.122.0/24 None 192.168.122.2 8.8.4.4 None None None 052f9b4b-e6d7-4ad9-a3f1-929e80008372
nova.conf
If you plan to use this feature, you must add the following to your nova.conf
file to specify which interface the nova-network
service will bind public IP addresses to:
public_interface = eth0Restart the
nova-network
service if you change nova.conf
while the service is running.
# sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 0In this example, the IP forwarding is disabled. You can enable it on the fly by running the following command:
$ sysctl -w net.ipv4.ip_forward=1In order to make the changes permanent, edit the
/etc/sysctl.conf
and update the IP forwarding setting :
/verbatim>
net.ipv4.ip_forward = 1
nova-manage floating create
command to add entries to this list, as root. For example:
nova-manage floating create 131.154.101.220
The following nova-manage
commands apply to floating IPs. nova floating-ip-create
: Allocate a floating IP address from the list of available addresses.
nova add-floating-ip
: Add an allocated floating IP address to a running instance.
# nova floating-ip-create +-----------------+-------------+----------+------+ | Ip | Instance Id | Fixed Ip | Pool | +-----------------+-------------+----------+------+ | 131.154.101.220 | None | None | nova | +-----------------+-------------+----------+------+ # nova add-floating-ip 63c5b9ba-3308-43ce-af61-d7b5dbc08c15 131.154.101.220 # nova-manage floating list c10d9c9f296b47f8a1212dd7a98357e0 131.154.101.220 63c5b9ba-3308-43ce-af61-d7b5dbc08c15 nova eth0If the instance no longer needs a public address, remove the floating IP address from the instance and de-allocate the address:
# nova remove-floating-ip 63c5b9ba-3308-43ce-af61-d7b5dbc08c15 131.154.101.220 # nova floating-ip-delete 131.154.101.220
nova-network
service can be configured to automatically allocate and assign a floating IP address to virtual instances when they are launched. Add the following line to nova.conf
and restart the nova-network
service
auto_assign_floating_ip=TrueNote that if this option is enabled and all of the floating IP addresses have already been allocated, the nova boot command will fail with an error. -- PaoloVeronesi - 2012-08-30
![]() |
![]() |
|
![]() |
|
![]() |