732512bb24ba34b6b6dd907a16f4ded9b93f1674
[osm/openvim.git] / osm_openvim / openvimd.cfg
1 ##
2 # Copyright 2015 Telefónica Investigación y Desarrollo, S.A.U.
3 # This file is part of openvim
4 # All Rights Reserved.
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License"); you may
7 # not use this file except in compliance with the License. You may obtain
8 # a copy of the License at
9 #
10 #         http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15 # License for the specific language governing permissions and limitations
16 # under the License.
17 #
18 # For those usages not covered by the Apache License, Version 2.0 please
19 # contact with: nfvlabs@tid.es
20 ##
21
22
23
24 #Miscellaneous
25 #Option to test openvim without the needed infrastructure, possible values are
26 #    "normal"      by default, Openflow controller (OFC), switch and real host are needed
27 #    "test"        Used for testing http API and database without connecting to host or to OFC
28 #    "host only"   Used when neither OFC nor OF switch are provided. 
29 #                  Dataplane network connection must be done manually.
30 #    "OF only"     Used for testing of new openflow controllers support. No real VM deployments will be done but
31 #                  OFC will be used as in real mode
32 #    "development" Forced a cloud-type deployment, nomal memory instead of hugepages is used, 
33 #                  without cpu pinning, and using a bridge network instead of a real OFC dataplane networks.
34 #                  The same 'development_bridge' (see below) is used for all dataplane networks
35 mode: test
36
37 #Openflow controller information
38 of_controller:      floodlight                   # Type of controller to be used.
39                                                  # Valid controllers are 'opendaylight', 'floodlight' or <custom>
40 #of_controller_module: module                    # Only needed for <custom>.  Python module that implement
41                                                  # this controller. By default a file with the name  <custom>.py is used 
42 #of_<other>:           value                     # Other parameters required by <custom> controller. Consumed by __init__
43 of_user:            user credentials             # User credentials for the controller if needed
44 of_password:        passwd credentials           # Password credentials for the controller if needed
45 of_controller_ip:   127.0.0.1                    # IP address where the Openflow controller is listening
46 of_controller_port: 7070                         # TCP port where the Openflow controller is listening (REST API server)
47 of_controller_dpid: '00:01:02:03:04:05:06:07'    # Openflow Switch identifier (put here the right number)
48
49 #This option is used for those openflow switch that cannot deliver one packet to several output with different vlan tags
50 #When set to true, it fails when trying to attach different vlan tagged ports to the same net
51 of_controller_nets_with_same_vlan: false         # (by default, true)
52
53 #Server parameters
54 http_host:       0.0.0.0             # IP address where openvim is listening (by default, localhost)
55 http_port:       9080                # General port where openvim is listening (by default, 9080)
56 http_admin_port: 9085                # Admin port where openvim is listening (when missing, no administration server is launched)
57
58 #database parameters
59 db_host:   localhost                   # by default localhost
60 db_user:   vim                       # DB user
61 db_passwd: vimpw                     # DB password
62 db_name:   vim_db                    # Name of the VIM DB
63
64 #host paremeters
65 image_path: "/opt/VNF/images"        # Folder, same for every host, where the VNF images will be copied
66
67 #testing parameters (used by ./test/test_openvim.py)
68 tenant_id: fc7b43b6-6bfa-11e4-84d2-5254006d6777   # Default tenant identifier for testing
69
70 #VLAN ranges used for the dataplane networks (ptp, data)
71 #When a network is created an unused value in this range is used
72 network_vlan_range_start: 3000
73 network_vlan_range_end:   4000
74
75 # Overlay network implementation. Options are:
76 # - ovs :   (by default) Use a vlxan mesh between computes to handle the network overlay.
77 # - bridge: Use pre-populated linux bridges with L2 conectivity at compte nodes.
78 network_type : ovs
79 ovs_controller_ip   :   localhost                   # dhcp controller IP address, must be change in order to
80 ovs_controller_user :   "osm_dhcp"                  # User for the dchp controller for OVS networks
81 ovs_controller_file_path  :   "/var/lib/openvim"    # Path for dhcp daemon configuration, by default '/var/lib/openvim'
82
83
84 #host bridge interfaces for networks
85 # Apply only for 'network_type: bridge'
86 # Indicates the bridges at compute nodes to be used for the overlay networks
87 # Bridge networks need to be pre-provisioned on each host and Openvim uses those pre-provisioned bridge networks.
88 # Openvim assumes that the following bridge interfaces have been created on each host, appropriately associated to a physical port.
89 # The following information needs to be provided:
90 #    - Name of the bridge (identical in all hosts)
91 #    - VLAN tag associated to each bridge interface
92 #    - The speed of the physical port in Gbps, where that bridge interface was created
93 # For instance, next example assumes that 10 bridges have been created on each host
94 # using vlans 2001 to 2010, associated to a 1Gbps physical port 
95 #bridge_ifaces:
96 #   #name:      [vlan, speed in Gbps]
97 #   virbrMan1:  [2001, 1]
98 #   virbrMan2:  [2002, 1]
99 #   virbrMan3:  [2003, 1]
100 #   virbrMan4:  [2004, 1]
101 #   virbrMan5:  [2005, 1]
102 #   virbrMan6:  [2006, 1]
103 #   virbrMan7:  [2007, 1]
104 #   virbrMan8:  [2008, 1]
105 #   virbrMan9:  [2009, 1]
106 #   virbrMan10: [2010, 1]
107
108 #Used only when 'mode' is at development'. Indicates which 'bridge_ifaces' is used for dataplane networks
109 #development_bridge: virbrMan10
110
111 #DHCP SERVER PARAMETERS. 
112 #In case some of the previous 'bridge_ifaces' are connected to an EXTERNAL dhcp server, provide 
113 #   the server parameters to allow openvim getting the allocated IP addresses of virtual machines
114 #   connected to the indicated 'bridge_ifaces' and or 'nets'. Openvim will connect to the dhcp server by ssh.
115 #DHCP server must contain a shell script "get_dhcp_lease.sh" included in the path, that accepts a mac address as 
116 #   parameter and return empty or the allocated IP address. See an example at the end of the file 
117 #   ./openvim/dhcp_thread.py 
118 #COMMENT all lines in case you do not have a DHCP server in 'normal', 'development'  or 'host only' modes.
119 #   For 'test' or 'OF only' modes you can leave then uncommented, because in these modes fake IP 
120 #   address are generated instead of connecting with a real DHCP server.
121 dhcp_server:
122    host:     host-ip-or-name  
123    #port:     22               #ssh port, by default 22
124    provider: isc-dhcp-server  #dhcp-server type
125    user:     user
126    #provide password, or key if needed
127    password: passwd           
128    #key:     ssh-access-key
129    #list of the previous bridge interfaces attached to this dhcp server
130    bridge_ifaces:   [ virbrMan1, virbrMan2 ] 
131    #list of the networks attached to this dhcp server
132    nets: [default]
133
134
135 #logging parameters       # DEBUG, INFO, WARNING, ERROR, CRITICAL
136 log_level:       DEBUG
137 log_level_db:    DEBUG
138 log_level_of:    DEBUG
139
140