Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add hhfab vlab setup-vpcs helper #38

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions docs/vlab/demo.md
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,50 @@ core@server-02 ~ $ ip a
valid_lft forever preferred_lft forever
```

> **_NOTE_** Make sure that route table on servers don't have stale or incorrect routes if you setting up interfaces manually.

## Using `hhfab vlab` tool to configure VPCs

VLAB may also set up VPCs and VPCAttachments. For each server in the VLAB deployment it will create separate VPC and VPCAttachment. Also, it will run `hhnet` utility inside each server to make sure that all servers have their networking interfaces configured correctly. VPCAttachments will be created in respect of configured Connections. Use `hhfab vlab setup-vpcs` to configure VPCs and servers.

```console
ubuntu@docs:~$ hhfab vlab setup-vpcs
11:48:53 INF Setting up VPCs and VPCAttachments for servers
11:48:53 INF Enforcing VPC + Attachment for server... vpc=vpc-01 server=server-01 conn=server-01--mclag--leaf-01--leaf-02
11:48:53 INF Enforcing VPC + Attachment for server... vpc=vpc-02 server=server-02 conn=server-02--mclag--leaf-01--leaf-02
11:48:53 INF Enforcing VPC + Attachment for server... vpc=vpc-03 server=server-03 conn=server-03--unbundled--leaf-01
11:48:53 INF Enforcing VPC + Attachment for server... vpc=vpc-04 server=server-04 conn=server-04--bundled--leaf-02
11:48:53 INF Enforcing VPC + Attachment for server... vpc=vpc-05 server=server-05 conn=server-05--eslag--leaf-03--leaf-04
11:48:53 INF Enforcing VPC + Attachment for server... vpc=vpc-06 server=server-06 conn=server-06--eslag--leaf-03--leaf-04
11:48:53 INF Enforcing VPC + Attachment for server... vpc=vpc-07 server=server-07 conn=server-07--unbundled--leaf-03
11:48:54 INF Enforcing VPC + Attachment for server... vpc=vpc-08 server=server-08 conn=server-08--bundled--leaf-04
11:48:54 INF Enforcing VPC + Attachment for server... vpc=vpc-09 server=server-09 conn=server-09--unbundled--leaf-05
11:48:54 INF Enforcing VPC + Attachment for server... vpc=vpc-10 server=server-10 conn=server-10--bundled--leaf-05
11:48:55 INF Configuring networking for server... server=server-01 netconf="bond 1001 enp2s1 enp2s2" conn=server-01--mclag--leaf-01--leaf-02
11:49:13 INF Server network configured server=server-01 output=10.0.1.10/24 took=18.134191567s
11:49:13 INF Configuring networking for server... server=server-02 netconf="bond 1002 enp2s1 enp2s2" conn=server-02--mclag--leaf-01--leaf-02
11:49:31 INF Server network configured server=server-02 output=10.0.2.10/24 took=18.40745755s
11:49:31 INF Configuring networking for server... server=server-03 netconf="vlan 1003 enp2s1" conn=server-03--unbundled--leaf-01
11:49:43 INF Server network configured server=server-03 output=10.0.3.10/24 took=11.456327475s
11:49:43 INF Configuring networking for server... server=server-04 netconf="bond 1004 enp2s1 enp2s2" conn=server-04--bundled--leaf-02
11:50:01 INF Server network configured server=server-04 output=10.0.4.10/24 took=18.474456396s
11:50:01 INF Configuring networking for server... server=server-05 netconf="bond 1005 enp2s1 enp2s2" conn=server-05--eslag--leaf-03--leaf-04
11:50:16 INF Server network configured server=server-05 output=10.0.5.10/24 took=14.956638672s
11:50:16 INF Configuring networking for server... server=server-06 netconf="bond 1006 enp2s1 enp2s2" conn=server-06--eslag--leaf-03--leaf-04
11:50:30 INF Server network configured server=server-06 output=10.0.6.10/24 took=14.087875149s
11:50:30 INF Configuring networking for server... server=server-07 netconf="vlan 1007 enp2s1" conn=server-07--unbundled--leaf-03
11:50:40 INF Server network configured server=server-07 output=10.0.7.10/24 took=9.830936317s
11:50:40 INF Configuring networking for server... server=server-08 netconf="bond 1008 enp2s1 enp2s2" conn=server-08--bundled--leaf-04
11:51:06 INF Server network configured server=server-08 output=10.0.8.10/24 took=25.765623783s
11:51:06 INF Configuring networking for server... server=server-09 netconf="vlan 1009 enp2s1" conn=server-09--unbundled--leaf-05
11:51:16 INF Server network configured server=server-09 output=10.0.9.10/24 took=10.444237021s
11:51:16 INF Configuring networking for server... server=server-10 netconf="bond 1010 enp2s1 enp2s2" conn=server-10--bundled--leaf-05
11:51:31 INF Server network configured server=server-10 output=10.0.10.10/24 took=14.407390535s
11:51:31 INF VPCs and VPCAttachments created, IP addresses discovered took=2m38.021452553s

```
In this example 10 VPC have been created for 10 servers. Subnets have been autogenerated based on Ipv4namespace base CIDR. All servers are assigned attachments based on Connections (mc-lag, es-lag, unbundled, etc).

## Testing connectivity before peering

You can test connectivity between the servers before peering the switches using the `ping` command:
Expand Down
3 changes: 3 additions & 0 deletions docs/vlab/running.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,9 @@ Line `VM installed name=control-1` from the installer's output means that the in
has been displayed, you can get into the control node and other VMs to watch the Fabric coming up and switches getting
provisioned.

> **_NOTE:_** SONiC system bootstrap may take reasonable time. It's heavily relies on the host disk and CPU performance, and parallel VM setup
may lead to performance degradation.

## Configuring VLAB VMs

By default, all test server VMs are isolated and have no connectivity to the host or the Internet. You can configure
Expand Down
Loading