blob: dac41c725c7c4ed1abe2bcdcaff3708621fe8995 [file] [log] [blame]
Aleš Komáreka3314b22017-04-11 13:46:06 +02001====================
2OpenContrail Formula
3====================
Filip Pytloun27930402015-10-06 16:28:32 +02004
Jakub Pavlik01fe5372016-05-20 11:23:28 +02005Contrail Controller is an open, standards-based software solution that
6delivers network virtualization and service automation for federated cloud
7networks. It provides self-service provisioning, improves network
8troubleshooting and diagnostics, and enables service chaining for dynamic
9application environments across enterprise virtual private cloud (VPC),
10managed Infrastructure as a Service (IaaS), and Networks Functions
11Virtualization (NFV) use cases.
Filip Pytloun27930402015-10-06 16:28:32 +020012
Jiri Konecny463dee52016-03-03 11:08:46 +010013
Petr Michalec579e64d2017-03-24 12:54:29 +010014Package source
15==============
Aleš Komáreka3314b22017-04-11 13:46:06 +020016
Petr Michalec579e64d2017-03-24 12:54:29 +010017Formula support OpenContrail as well as Juniper Contrail package repository in the backend.
18
19Differences withing the configuration and state run are controlled by
20``opencontrail.common.vendor: [opencontrail|juniper]`` pillar attribute.
21
22Default value is set to ``opencontrail``.
23
24Juniper releases tested with this formula:
25 - 3.0.2.x
26
27To use Juniper Contrail repository as a source of packages override pillar as in this example:
28
29.. code-block:: yaml
30
31 opencontrail:
32 common:
33 vendor: juniper
34
35
Aleš Komáreka3314b22017-04-11 13:46:06 +020036Sample Pillars
Filip Pytloun27930402015-10-06 16:28:32 +020037==============
38
Jiri Konecny463dee52016-03-03 11:08:46 +010039Controller nodes
40----------------
41
42There are several scenarios for OpenContrail control plane.
43
44All-in-one single
45~~~~~~~~~~~~~~~~~
46
47Config, control, analytics, database, web -- altogether on one node.
48
49.. code-block:: yaml
50
51 opencontrail:
52 common:
53 version: 2.2
54 source:
55 engine: pkg
56 address: http://mirror.robotice.cz/contrail-havana/
57 identity:
58 engine: keystone
59 host: 127.0.0.1
60 port: 35357
61 token: token
62 password: password
63 network:
64 engine: neutron
65 host: 127.0.0.1
66 port: 9696
67 config:
68 version: 2.2
69 enabled: true
70 network:
71 engine: neutron
72 host: 127.0.0.1
73 port: 9696
74 discovery:
75 host: 127.0.0.1
76 analytics:
77 host: 127.0.0.1
78 bind:
79 address: 127.0.0.1
80 message_queue:
81 engine: rabbitmq
82 host: 127.0.0.1
83 port: 5672
84 database:
85 members:
86 - host: 127.0.0.1
87 port: 9160
88 cache:
Jakub Pavlikd1a059e2016-07-13 23:08:33 +020089 members:
90 - host: 127.0.0.1
91 port: 11211
Jiri Konecny463dee52016-03-03 11:08:46 +010092 identity:
93 engine: keystone
94 version: '2.0'
95 region: RegionOne
96 host: 127.0.0.1
97 port: 35357
98 user: admin
99 password: password
100 token: token
101 tenant: admin
102 members:
103 - host: 127.0.0.1
104 id: 1
105 control:
106 version: 2.2
107 enabled: true
108 bind:
109 address: 127.0.0.1
110 discovery:
111 host: 127.0.0.1
112 master:
113 host: 127.0.0.1
114 members:
115 - host: 127.0.0.1
116 id: 1
117 collector:
118 version: 2.2
119 enabled: true
120 bind:
121 address: 127.0.0.1
122 master:
123 host: 127.0.0.1
124 discovery:
125 host: 127.0.0.1
126 data_ttl: 2
127 database:
128 members:
129 - host: 127.0.0.1
130 port: 9160
131 database:
132 version: 2.2
133 cassandra:
134 version: 2
135 enabled: true
136 minimum_disk: 10
137 name: 'Contrail'
138 original_token: 0
Dmitry Stremkovskiy2a079c72017-07-12 23:11:18 +0300139 compaction_throughput_mb_per_sec: 16
Jiri Konecny463dee52016-03-03 11:08:46 +0100140 data_dirs:
141 - /var/lib/cassandra
142 id: 1
143 discovery:
144 host: 127.0.0.1
145 bind:
146 host: 127.0.0.1
147 port: 9042
148 rpc_port: 9160
149 members:
150 - host: 127.0.0.1
151 id: 1
152 web:
153 version: 2.2
154 enabled: True
155 bind:
156 address: 127.0.0.1
157 analytics:
158 host: 127.0.0.1
159 master:
160 host: 127.0.0.1
161 cache:
162 engine: redis
163 host: 127.0.0.1
164 port: 6379
165 members:
166 - host: 127.0.0.1
167 id: 1
168 identity:
169 engine: keystone
170 version: '2.0'
171 host: 127.0.0.1
172 port: 35357
173 user: admin
174 password: password
175 token: token
176 tenant: admin
177
178
179All-in-one cluster
180~~~~~~~~~~~~~~~~~~
181
Jakub Pavlik01fe5372016-05-20 11:23:28 +0200182Config, control, analytics, database, web -- altogether, clustered on multiple
183nodes.
Jiri Konecny463dee52016-03-03 11:08:46 +0100184
185.. code-block:: yaml
186
187 opencontrail:
188 common:
189 version: 2.2
190 source:
191 engine: pkg
192 address: http://mirror.robotice.cz/contrail-havana/
193 identity:
194 engine: keystone
195 host: 127.0.0.1
196 port: 35357
197 token: token
198 password: password
199 network:
200 engine: neutron
201 host: 127.0.0.1
202 port: 9696
203 config:
204 version: 2.2
205 enabled: true
206 network:
207 engine: neutron
208 host: 127.0.0.1
209 port: 9696
210 discovery:
211 host: 127.0.0.1
212 analytics:
213 host: 127.0.0.1
214 bind:
215 address: 127.0.0.1
216 message_queue:
217 engine: rabbitmq
218 host: 127.0.0.1
219 port: 5672
220 database:
221 members:
222 - host: 127.0.0.1
223 port: 9160
224 - host: 127.0.0.1
225 port: 9160
226 - host: 127.0.0.1
227 port: 9160
228 cache:
Jakub Pavlikd1a059e2016-07-13 23:08:33 +0200229 members:
230 - host: 127.0.0.1
231 port: 11211
232 - host: 127.0.0.1
233 port: 11211
234 - host: 127.0.0.1
235 port: 11211
Jiri Konecny463dee52016-03-03 11:08:46 +0100236 identity:
237 engine: keystone
238 version: '2.0'
239 region: RegionOne
240 host: 127.0.0.1
241 port: 35357
242 user: admin
243 password: password
244 token: token
245 tenant: admin
246 members:
247 - host: 127.0.0.1
248 id: 1
249 - host: 127.0.0.1
250 id: 2
251 - host: 127.0.0.1
252 id: 3
253 control:
254 version: 2.2
255 enabled: true
256 bind:
257 address: 127.0.0.1
258 discovery:
259 host: 127.0.0.1
260 master:
261 host: 127.0.0.1
262 members:
263 - host: 127.0.0.1
264 id: 1
265 - host: 127.0.0.1
266 id: 2
267 - host: 127.0.0.1
268 id: 3
269 collector:
270 version: 2.2
271 enabled: true
272 bind:
273 address: 127.0.0.1
274 master:
275 host: 127.0.0.1
276 discovery:
277 host: 127.0.0.1
278 data_ttl: 1
279 database:
280 members:
281 - host: 127.0.0.1
282 port: 9160
283 - host: 127.0.0.1
284 port: 9160
285 - host: 127.0.0.1
286 port: 9160
287 database:
288 version: 2.2
289 cassandra:
290 version: 2
291 enabled: true
292 name: 'Contrail'
293 minimum_disk: 10
294 original_token: 0
295 data_dirs:
296 - /var/lib/cassandra
297 id: 1
298 discovery:
299 host: 127.0.0.1
300 bind:
301 host: 127.0.0.1
302 port: 9042
303 rpc_port: 9160
304 members:
305 - host: 127.0.0.1
306 id: 1
307 - host: 127.0.0.1
308 id: 2
309 - host: 127.0.0.1
310 id: 3
311 web:
312 version: 2.2
313 enabled: True
314 bind:
315 address: 127.0.0.1
316 master:
317 host: 127.0.0.1
318 analytics:
319 host: 127.0.0.1
320 cache:
321 engine: redis
322 host: 127.0.0.1
323 port: 6379
324 members:
325 - host: 127.0.0.1
326 id: 1
327 - host: 127.0.0.1
328 id: 2
329 - host: 127.0.0.1
330 id: 3
331 identity:
332 engine: keystone
333 version: '2.0'
334 host: 127.0.0.1
335 port: 35357
336 user: admin
337 password: password
338 token: token
339 tenant: admin
340
341
342Separated analytics from control and config
343~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
344
345Config, control, database, web.
346
347.. code-block:: yaml
348
349 opencontrail:
350 common:
351 version: 2.2
352 identity:
353 engine: keystone
354 host: 127.0.0.1
355 port: 35357
356 token: token
357 password: password
358 network:
359 engine: neutron
360 host: 127.0.0.1
361 port: 9696
362 config:
363 version: 2.2
364 enabled: true
365 network:
366 engine: neutron
367 host: 127.0.0.1
368 port: 9696
369 discovery:
370 host: 127.0.0.1
371 analytics:
372 host: 127.0.0.1
373 bind:
374 address: 127.0.0.1
375 message_queue:
376 engine: rabbitmq
377 host: 127.0.0.1
378 port: 5672
379 database:
380 members:
381 - host: 127.0.0.1
382 port: 9160
383 - host: 127.0.0.1
384 port: 9160
385 - host: 127.0.0.1
386 port: 9160
387 cache:
Jakub Pavlikd1a059e2016-07-13 23:08:33 +0200388 members:
389 - host: 127.0.0.1
390 port: 11211
391 - host: 127.0.0.1
392 port: 11211
393 - host: 127.0.0.1
394 port: 11211
Jiri Konecny463dee52016-03-03 11:08:46 +0100395 identity:
396 engine: keystone
397 version: '2.0'
398 region: RegionOne
399 host: 127.0.0.1
400 port: 35357
401 user: admin
402 password: password
403 token: token
404 tenant: admin
405 members:
406 - host: 127.0.0.1
407 id: 1
408 - host: 127.0.0.1
409 id: 2
410 - host: 127.0.0.1
411 id: 3
412 control:
413 version: 2.2
414 enabled: true
415 bind:
416 address: 127.0.0.1
417 discovery:
418 host: 127.0.0.1
419 master:
420 host: 127.0.0.1
421 members:
422 - host: 127.0.0.1
423 id: 1
424 - host: 127.0.0.1
425 id: 2
426 - host: 127.0.0.1
427 id: 3
428 database:
429 version: 127.0.0.1
430 cassandra:
431 version: 2
432 enabled: true
433 name: 'Contrail'
434 minimum_disk: 10
435 original_token: 0
436 data_dirs:
437 - /var/lib/cassandra
438 id: 1
439 discovery:
440 host: 127.0.0.1
441 bind:
442 host: 127.0.0.1
443 port: 9042
444 rpc_port: 9160
445 members:
446 - host: 127.0.0.1
447 id: 1
448 - host: 127.0.0.1
449 id: 2
450 - host: 127.0.0.1
451 id: 3
452 web:
453 version: 2.2
454 enabled: True
455 bind:
456 address: 127.0.0.1
457 analytics:
458 host: 127.0.0.1
459 master:
460 host: 127.0.0.1
461 cache:
462 engine: redis
463 host: 127.0.0.1
464 port: 6379
465 members:
466 - host: 127.0.0.1
467 id: 1
468 - host: 127.0.0.1
469 id: 2
470 - host: 127.0.0.1
471 id: 3
472 identity:
473 engine: keystone
474 version: '2.0'
475 host: 127.0.0.1
476 port: 35357
477 user: admin
478 password: password
479 token: token
480 tenant: admin
481
Jiri Konecny463dee52016-03-03 11:08:46 +0100482Analytic nodes
Jiri Konecny463dee52016-03-03 11:08:46 +0100483
484Analytics and database on an analytic node(s)
485
486.. code-block:: yaml
487
488 opencontrail:
489 common:
490 version: 2.2
491 identity:
492 engine: keystone
493 host: 127.0.0.1
494 port: 35357
495 token: token
496 password: password
497 network:
498 engine: neutron
499 host: 127.0.0.1
500 port: 9696
501 collector:
502 version: 2.2
503 enabled: true
504 bind:
505 address: 127.0.0.1
506 master:
507 host: 127.0.0.1
508 discovery:
509 host: 127.0.0.1
510 data_ttl: 1
511 database:
512 members:
513 - host: 127.0.0.1
514 port: 9160
515 - host: 127.0.0.1
516 port: 9160
517 - host: 127.0.0.1
518 port: 9160
519 database:
520 version: 2.2
521 cassandra:
522 version: 2
523 enabled: true
524 name: 'Contrail'
525 minimum_disk: 10
526 original_token: 0
527 data_dirs:
528 - /var/lib/cassandra
529 id: 1
530 discovery:
531 host: 127.0.0.1
532 bind:
533 host: 127.0.0.1
534 port: 9042
535 rpc_port: 9160
536 members:
537 - host: 127.0.0.1
538 id: 1
539 - host: 127.0.0.1
540 id: 2
541 - host: 127.0.0.1
542 id: 3
543
544
545Compute nodes
Aleš Komáreka3314b22017-04-11 13:46:06 +0200546-------------
Jiri Konecny463dee52016-03-03 11:08:46 +0100547
548Vrouter configuration on a compute node(s)
549
550.. code-block:: yaml
551
552 opencontrail:
553 common:
554 version: 2.2
555 identity:
556 engine: keystone
557 host: 127.0.0.1
558 port: 35357
559 token: token
560 password: password
561 network:
562 engine: neutron
563 host: 127.0.0.1
564 port: 9696
565 compute:
566 version: 2.2
567 enabled: True
568 discovery:
569 host: 127.0.0.1
570 interface:
571 address: 127.0.0.1
572 dev: eth0
573 gateway: 127.0.0.1
574 mask: /24
575 dns: 127.0.0.1
576 mtu: 9000
577
Jakub Pavlik735005f2016-02-26 15:54:53 +0100578Keystone v3
Aleš Komáreka3314b22017-04-11 13:46:06 +0200579-----------
Jakub Pavlik735005f2016-02-26 15:54:53 +0100580
Jakub Pavlik01fe5372016-05-20 11:23:28 +0200581To enable support for keystone v3 in opencontrail, there must be defined
582version for config and web role.
Jakub Pavlik735005f2016-02-26 15:54:53 +0100583
584.. code-block:: yaml
585
586 opencontrail:
587 config:
588 version: 2.2
589 enabled: true
590 ...
591 identity:
592 engine: keystone
593 version: '3'
594 ...
595
596 opencontrail:
597 web:
598 version: 2.2
599 enabled: true
600 ...
601 identity:
602 engine: keystone
603 version: '3'
604 ...
605
marco10cc2212016-04-03 14:21:54 +0200606Without Keystone
607----------------
608
609.. code-block:: yaml
610
611 opencontrail:
612 ...
613 common:
614 ...
615 identity:
616 engine: none
617 token: none
618 password: none
619 ...
620 config:
621 ...
622 identity:
623 engine: none
624 password: none
625 token: none
626 ...
627 web:
628 ...
629 identity:
630 engine: none
631 password: none
632 token: none
633 ...
marcof5461712016-04-04 20:49:36 +0200634
Aleš Komáreka3314b22017-04-11 13:46:06 +0200635Kubernetes support
636------------------
637
marcof5461712016-04-04 20:49:36 +0200638Kubernetes vrouter nodes
marcof5461712016-04-04 20:49:36 +0200639
640Vrouter configuration on a kubernetes node(s)
641
642.. code-block:: yaml
643
644 opencontrail:
645 ...
646 compute:
647 engine: kubernetes
648 ...
649
Jakub Pavlik0d1f67e2016-11-30 10:04:13 +0100650vRouter with separated control plane
Jakub Pavlik0d1f67e2016-11-30 10:04:13 +0100651
652Separate XMPP traffic from dataplane interface.
653
654.. code-block:: yaml
655
656 opencontrail:
657 compute:
658 bind:
659 address: 172.16.0.50
660 ...
661
Petr Jediný439fab32017-07-10 14:33:09 +0200662Override RPF default in Contrail API
663------------------------------------
664
665From MCP1.1 with OpenContrail >= 3.1.1 you can override RPF default for newly
666created virtual networks. This can be useful for usecases like running
667Calico and K8S in overlay. The `override_rpf_default_by` has valid values
668`disable`, `enable`. If not defined, the configuration fallbacks to Contrail
669default - currently `enable`.
670
671.. code-block:: yaml
672
673 opencontrail:
674 ...
675 config:
676 override_rpf_default_by: 'disable'
677 ...
678
679
Jakub Pavlik6d90f362016-04-19 20:34:37 +0200680Disable Contrail API authentication
681-----------------------------------
682
Petr Jediný78e6f422017-06-01 13:24:49 +0200683Contrail version must >= 3.0. It is useful especially for Keystone v3.
Jakub Pavlik6d90f362016-04-19 20:34:37 +0200684
685.. code-block:: yaml
686
687 opencontrail:
688 ...
689 config:
690 multi_tenancy: false
691 ...
692
Petr Jediný78e6f422017-06-01 13:24:49 +0200693Switch from on demand to periodic keystone sync
694-----------------------------------------------
695
696This can be useful when you want to sync projects from OpenStack to Contrail
697automatically. The period of sync is 60s.
698
699.. code-block:: yaml
700
701 opencontrail:
702 ...
703 config:
704 identity:
705 sync_on_demand: false
706 ...
707
marco2502e052016-05-31 22:53:54 +0200708Cassandra listen interface
Petr Jedinýffbe2082017-03-07 00:56:47 +0100709--------------------------
marco2502e052016-05-31 22:53:54 +0200710
711.. code-block:: yaml
712
713 database:
714 ....
715 bind:
716 interface: eth0
717 port: 9042
718 rpc_port: 9160
719 ....
Jakub Pavlik6d90f362016-04-19 20:34:37 +0200720
Petr Jedinýffbe2082017-03-07 00:56:47 +0100721OpenContrail WebUI version >= 3.1.1
722-----------------------------------
Petr Jediný78e6f422017-06-01 13:24:49 +0200723For OpenContrail version >= 3.1.1 and Cassandra >= 2.1 we should override WebUI's cassandra port from 9160 to 9042.
Petr Jedinýffbe2082017-03-07 00:56:47 +0100724
725For appropriate node at class level:
726
727.. code-block:: yaml
Aleš Komáreka3314b22017-04-11 13:46:06 +0200728
Petr Jedinýffbe2082017-03-07 00:56:47 +0100729 opencontrail:
730 ....
731 web:
732 database:
733 port: 9042
734 ....
735
736
Jakub Pavlik9a4de012016-12-14 13:23:55 +0100737RabbitMQ HA hosts
738------------------
739
740.. code-block:: yaml
741
742 opencontrail:
743 config:
744 message_queue:
745 engine: rabbitmq
746 members:
747 - host: 10.0.16.1
748 - host: 10.0.16.2
749 - host: 10.0.16.3
750 port: 5672
751
752.. code-block:: yaml
753
754 database:
755 ....
756 bind:
757 interface: eth0
758 port: 9042
759 rpc_port: 9160
760 ....
761
Jakub Pavlike3590062017-02-20 23:32:57 +0100762DPDK vRouter
763-------------
764
765.. code-block:: yaml
766
767 opencontrail:
768 compute:
769 dpdk:
770 enabled: true
Jakub Pavlik54761d82017-03-08 11:22:37 +0100771 taskset: "0x0000003C00003C"
772 socket_mem: "1024,1024"
Jakub Pavlike3590062017-02-20 23:32:57 +0100773 interface:
774 mac_address: 90:e2:ba:7c:22:e1
775 pci: 0000:81:00.1
776 ...
777
Ales Komarekad46d2e2017-03-09 17:16:38 +0100778Contrail client
779---------------
780
781Basic parameters with identity and host configs
782
Petr Jediný78e6f422017-06-01 13:24:49 +0200783.. code-block:: yaml
Ales Komarekad46d2e2017-03-09 17:16:38 +0100784
785 opencontrail:
786 client:
787 identity:
788 user: admin
789 project: admin
790 password: adminpass
791 host: keystone_host
792 config:
793 host: contrail_api_host
794 port: contrail_api_ort
795
796Enforcing virtual routers
797
Petr Jediný78e6f422017-06-01 13:24:49 +0200798.. code-block:: yaml
Ales Komarekad46d2e2017-03-09 17:16:38 +0100799
800 opencontrail:
801 client:
802 ...
803 virtual_router:
804 cmp01:
805 ip_address: 172.16.0.11
806 dpdk_enabled: True
807 cmp02:
808 ip_address: 172.16.0.12
809 dpdk_enabled: True
810
811Enforcing control nodes
812
Petr Jediný78e6f422017-06-01 13:24:49 +0200813.. code-block:: yaml
Ales Komarekad46d2e2017-03-09 17:16:38 +0100814
815 opencontrail:
816 client:
817 ...
818 bgp_router:
819 ntw01:
820 type: control-node
821 ip_address: 172.16.0.11
822 nwt02:
823 type: control-node
824 ip_address: 172.16.0.12
825 nwt03:
826 type: control-node
827 ip_address: 172.16.0.13
828
829
830Enforcing edge BGP routers
831
Petr Jediný78e6f422017-06-01 13:24:49 +0200832.. code-block:: yaml
Ales Komarekad46d2e2017-03-09 17:16:38 +0100833
834 opencontrail:
835 client:
836 ...
837 bgp_router:
838 mx01:
839 type: router
840 ip_address: 172.16.0.21
841 asn: 64512
842 mx02:
843 type: router
844 ip_address: 172.16.0.22
845 asn: 64512
846
847Enforcing config nodes
848
Petr Jediný78e6f422017-06-01 13:24:49 +0200849.. code-block:: yaml
Ales Komarekad46d2e2017-03-09 17:16:38 +0100850
851 opencontrail:
852 client:
853 ...
854 config_node:
855 ctl01:
856 ip_address: 172.16.0.21
857 ctl02:
858 ip_address: 172.16.0.22
859
860Enforcing database nodes
861
Petr Jediný78e6f422017-06-01 13:24:49 +0200862.. code-block:: yaml
Ales Komarekad46d2e2017-03-09 17:16:38 +0100863
864 opencontrail:
865 client:
866 ...
867 database_node:
868 ntw01:
869 ip_address: 172.16.0.21
870 ntw02:
871 ip_address: 172.16.0.22
872
873Enforcing analytics nodes
874
Petr Jediný78e6f422017-06-01 13:24:49 +0200875.. code-block:: yaml
Ales Komarekad46d2e2017-03-09 17:16:38 +0100876
877 opencontrail:
878 client:
879 ...
880 analytics_node:
881 nal01:
882 ip_address: 172.16.0.31
883 nal02:
884 ip_address: 172.16.0.32
885
Petr Jediný5f3efe32017-05-26 17:55:09 +0200886Enforcing Link Local Services
887
888.. code-block:: yaml
889
890 opencontrail:
891 client:
892 ...
893 linklocal_service:
894 # example with dns name address (only one permited)
895 meta1:
896 lls_ip: 10.0.0.23
897 lls_port: 80
898 ipf_addresses: "meta.example.com"
899 ipf_port: 80
900 # example with multiple ip addresses
901 meta2:
902 lls_ip: 10.0.0.23
903 lls_port: 80
904 ipf_addresses:
905 - 10.10.10.10
906 - 10.20.20.20
907 - 10.30.30.30
908 ipf_port: 80
909 # example with one ip address
910 meta3:
911 lls_ip: 10.0.0.23
912 lls_port: 80
913 ipf_addresses:
914 - 10.10.10.10
915 ipf_port: 80
916 # example with name override
917 lls_meta4:
918 name: meta4
919 lls_ip: 10.0.0.23
920 lls_port: 80
921 ipf_addresses:
922 - 10.10.10.10
923 ipf_port: 80
924
Ales Komarekad46d2e2017-03-09 17:16:38 +0100925
Filip Pytloun27930402015-10-06 16:28:32 +0200926Usage
927=====
928
929Basic installation
Ales Komarekad46d2e2017-03-09 17:16:38 +0100930------------------
Filip Pytloun27930402015-10-06 16:28:32 +0200931
932Add control BGP
Ales Komarekad46d2e2017-03-09 17:16:38 +0100933
934.. code-block:: bash
Filip Pytloun27930402015-10-06 16:28:32 +0200935
936 python /etc/contrail/provision_control.py --api_server_ip 192.168.1.11 --api_server_port 8082 --host_name network1.contrail.domain.com --host_ip 192.168.1.11 --router_asn 64512
937
Ales Komarekad46d2e2017-03-09 17:16:38 +0100938Install compute node
Filip Pytloun27930402015-10-06 16:28:32 +0200939
Ales Komarekad46d2e2017-03-09 17:16:38 +0100940.. code-block:: bash
Filip Pytloun27930402015-10-06 16:28:32 +0200941
942 yum install contrail-vrouter contrail-openstack-vrouter
943
944 salt-call state.sls nova,opencontrail
945
946Add virtual router
Filip Pytloun27930402015-10-06 16:28:32 +0200947
Ales Komarekad46d2e2017-03-09 17:16:38 +0100948.. code-block:: bash
Filip Pytloun27930402015-10-06 16:28:32 +0200949
950 python /etc/contrail/provision_vrouter.py --host_name hostnode1.intra.domain.com --host_ip 10.0.100.101 --api_server_ip 10.0.100.30 --oper add --admin_user admin --admin_password cloudlab --admin_tenant_name admin
951
952 /etc/sysconfig/network-scripts/ifcfg-bond0 -- comment GATEWAY,NETMASK,IPADDR
953
954 reboot
955
Aleš Komáreka3314b22017-04-11 13:46:06 +0200956Debugging
957---------
Filip Pytloun27930402015-10-06 16:28:32 +0200958
959Display vhost XMPP connection status
960
961You should see the correct controller_ip and state should be established.
962
963 http://<compute-node>:8085/Snh_AgentXmppConnectionStatusReq?
964
965Display vrouter interface status
966
967When vrf_name = ---ERROR--- then something goes wrong
968
969 http://<compute-node>:8085/Snh_ItfReq?name=
970
971Display IF MAP table
972
973Look for neighbours, if VM has 2, it's ok
974
975 http://<control-node>:8083/Snh_IFMapTableShowReq?table_name=
976
977Trace XMPP requests
978
979 http://<compute-node>:8085/Snh_SandeshTraceRequest?x=XmppMessageTrace
980
Filip Pytlounf6b79d42017-02-02 13:02:03 +0100981
982Documentation and Bugs
983======================
984
985To learn how to install and update salt-formulas, consult the documentation
986available online at:
987
988 http://salt-formulas.readthedocs.io/
989
990In the unfortunate event that bugs are discovered, they should be reported to
991the appropriate issue tracker. Use Github issue tracker for specific salt
992formula:
993
994 https://github.com/salt-formulas/salt-formula-opencontrail/issues
995
996For feature requests, bug reports or blueprints affecting entire ecosystem,
997use Launchpad salt-formulas project:
998
999 https://launchpad.net/salt-formulas
1000
1001You can also join salt-formulas-users team and subscribe to mailing list:
1002
1003 https://launchpad.net/~salt-formulas-users
1004
1005Developers wishing to work on the salt-formulas projects should always base
1006their work on master branch and submit pull request against specific formula.
1007
1008 https://github.com/salt-formulas/salt-formula-opencontrail
1009
1010Any questions or feedback is always welcome so feel free to join our IRC
1011channel:
1012
1013 #salt-formulas @ irc.freenode.net