...
1. Setup VM with:
CPU - 4
Memory - 8GB
Hard disk - 100GB
Have to use DEBUG build, where we have debug macro
Setup process is described in this instruction.
Info |
---|
Note : If you already created dilos_BASE BE according the instruction, and there is no any new tested stable version, just execute the following command:
In other case if you have already the dilos_ISO_orig BE - make the command:
Then reboot and start the instruction from the section Step 6. Prepare VM for Tests Running:
If you have no one of these 2 BEs then start the instruction from the beginning. |
Info |
---|
Note : Create ztest user if you forgot to do it according the instruction:
|
2. Install packages for net tests:
Info |
---|
Note : If you already did it on the previous step when preparing VM to run, then you can skip this step and go to the next one. |
Code Block | ||
---|---|---|
| ||
sudo apt update
sudo apt install system-test-nettest testrunner python3 |
3. Login by user ztest and create zones:
Zones must be created according to the file:
/opt/net-tests/config/ip_forwarding.config
Currently accepted names: cz, sz, rz
Note |
---|
Important! Zones must be placed to the |
Configure, install and boot zones. The following is the configuration for the cz zone:
Code Block | ||
---|---|---|
| ||
ztest@dilos:~# cat > cz.cfg <<EOT
create
set zonepath=/zones/cz
set autoboot=false
set ip-type=exclusive
add net
set physical=int1
set global-nic="vsw0"
add property (name="ip",value="dhcp")
add property (name="primary",value="true")
end
commit
exit
EOT
ztest@dilos:~# sudo zonecfg -z cz -f cz.cfg
ztest@dilos:~# sudo zoneadm -z cz install && sudo zoneadm -z cz boot |
For other zones settings will be the same. For the sz zone:
Code Block | ||
---|---|---|
| ||
ztest@dilos:~# cat > sz.cfg <<EOT
create
set zonepath=/zones/sz
set autoboot=false
set ip-type=exclusive
add net
set physical=int2
set global-nic="vsw0"
add property (name="ip",value="dhcp")
add property (name="primary",value="true")
end
commit
exit
EOT
ztest@dilos:~# sudo zonecfg -z sz -f sz.cfg
ztest@dilos:~# sudo zoneadm -z sz install && sudo zoneadm -z sz boot |
and for the rz zone:
...
language | bash |
---|
...
1. Setup VM with:
CPU - 4
Memory - 8GB
Hard disk - 100GB
Have to use DEBUG build, where we have debug macro
Setup process is described in this instruction.
Info |
---|
Note : If you already created dilos_BASE BE according the instruction, and there is no any new tested stable version, just execute the following command:
In other case if you have already the dilos_ISO_orig BE - make the command:
Then reboot and start the instruction from the section Step 6. Prepare VM for Tests Running:
If you have no one of these 2 BEs then start the instruction from the beginning. |
Info |
---|
Note : Create ztest user if you forgot to do it according the instruction:
|
2. Install packages for net tests:
Info |
---|
Note : If you already did it on the previous step when preparing VM to run, then you can skip this step and go to the next one. |
Code Block | ||
---|---|---|
| ||
sudo apt update
sudo apt install system-test-nettest testrunner python3 |
3. Login by user ztest and create zones:
Zones must be created according to the file:
/opt/net-tests/config/ip_forwarding.config
Currently accepted names: cz, sz, rz
Note |
---|
Important! Zones must be placed to the |
First configure and install template zones cz-orig, sz-orig and rz-orig, from which test zones will be created later:
Code Block |
---|
ztest@dilos:~# cat > cz-orig.cfg <<EOT create set zonepath=/zones/cz-orig set autoboot=false set ip-type=exclusive add net set physical=int1 set global-nic="vsw0" add property (name="ip",value="dhcp") add property (name="primary",value="true") end commit exit EOT ztest@dilos:~# sudo zonecfg -z cz-orig -f cz-orig.cfg && sudo zoneadm -z cz-orig ztest@dilos:~# cat > sz-orig.cfg <<EOT create set zonepath=/zones/rzsz-orig set autoboot=false set ip-type=exclusive add net set physical=int3int2 set global-nic="vsw0" add property (name="ip",value="dhcp") add property (name="primary",value="true") end commit exit EOT ztest@dilos:~# sudo zonecfg -z rzsz-orig -f rzsz-orig.cfg ztest@dilos:~#&& sudo zoneadm -z rzsz-orig install && sudo zoneadm -z rz boot |
4. Install the socat package for every zone
The zones have not configured net, need to install it from the global zone.
Download it in the global zone:
Code Block | ||
---|---|---|
| ||
apt download socat |
In the current version, the name of the downloaded file is socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
Install into the zones:
Code Block | ||
---|---|---|
| ||
sudo apt -y -o Dir=/zones/cz/root update
sudo apt -y -o Dir=/zones/cz/root upgrade
sudo dpkg -i --root=/zones/cz/root socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
sudo apt -y -o Dir=/zones/sz/root update
sudo apt -y -o Dir=/zones/sz/root upgrade
sudo dpkg -i --root=/zones/sz/root socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
sudo apt -y -o Dir=/zones/rz/root update
sudo apt -y -o Dir=/zones/rz/root upgrade
sudo dpkg -i --root=/zones/rz/root socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
sudo reboot |
5. Launch tests
...
ztest@dilos:~# cat > rz-orig.cfg <<EOT
create
set zonepath=/zones/rz-orig
set autoboot=false
set ip-type=exclusive
add net
set physical=int3
set global-nic="vsw0"
add property (name="ip",value="dhcp")
add property (name="primary",value="true")
end
commit
exit
EOT
ztest@dilos:~# sudo zonecfg -z rz-orig -f rz-orig.cfg && sudo zoneadm -z rz-orig install |
Now configure test zones. The following is the configuration for the cz zone:
Code Block | ||
---|---|---|
| ||
ztest@dilos:~# cat > cz.cfg <<EOT
create
set zonepath=/zones/cz
set autoboot=false
set ip-type=exclusive
add net
set physical=int1
set global-nic="vsw0"
add property (name="ip",value="dhcp")
add property (name="primary",value="true")
end
commit
exit
EOT
ztest@dilos:~# sudo zonecfg -z cz -f cz.cfg |
For other zones settings will be the same. For the sz zone:
Code Block | ||
---|---|---|
| ||
sudoztest@dilos:~# zoneadmcat -z cz boot && sudo zoneadm -z sz boot && sudo zoneadm -z rz boot sudo /opt/net-tests/bin/nettest |
Wait for several minutes and have found full logs at:
/var/tmp/test_results/<ISO TIME>
Info |
---|
Note : You can run the test using a shell script. It can be created with any text editor or by executing the following command:
> sz.cfg <<EOT
create
set zonepath=/zones/sz
set autoboot=false
set ip-type=exclusive
add net
set physical=int2
set global-nic="vsw0"
add property (name="ip",value="dhcp")
add property (name="primary",value="true")
end
commit
exit
EOT
ztest@dilos:~# sudo zonecfg -z sz -f sz.cfg |
and for the rz zone:
Code Block | ||
---|---|---|
| ||
ztest@dilos:~# cat > rz.cfg <<EOT
create
set zonepath=/zones/rz
set autoboot=false
set ip-type=exclusive
add net
set physical=int3
set global-nic="vsw0"
add property (name="ip",value="dhcp")
add property (name="primary",value="true")
end
commit
exit
EOT
ztest@dilos:~# sudo zonecfg -z rz -f rz.cfg |
4. Install the socat package for every template zone
The zones have not configured net, need to install it from the global zone.
Download it in the global zone:
Code Block | ||
---|---|---|
| ||
apt download socat |
In the current version, the name of the downloaded file is socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
Install into the zones:
Code Block | ||
---|---|---|
| ||
sudo apt -y -o Dir=/zones/cz-orig/root update
sudo apt -y -o Dir=/zones/cz-orig/root upgrade
sudo dpkg -i --root=/zones/cz-orig/root socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
sudo apt -y -o Dir=/zones/sz-orig/root update
sudo apt -y -o Dir=/zones/sz-orig/root upgrade
sudo dpkg -i --root=/zones/sz-orig/root socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
sudo apt -y -o Dir=/zones/rz-orig/root update
sudo apt -y -o Dir=/zones/rz-orig/root upgrade
sudo dpkg -i --root=/zones/rz-orig/root socat_1.7.3.1-2+deb9u1+dilos2_solaris-i386.deb
sudo reboot |
5. Launch tests
Check that dhcp zone and server are running after reboot and run test zones and tests:
Code Block | ||
---|---|---|
| ||
sudo zoneadm -z cz halt
sudo zoneadm -z cz uninstall -F
sudo zfs destroy -fr rpool/zones/cz
sudo zoneadm -z cz clone \cz-orig && sudo zoneadm -z \cz boot
sudo zoneadm -z sz halt
sudo zoneadm -z sz uninstall -F
sudo zfs destroy -fr rpool/zones/sz
sudo zoneadm -z sz clone \sz-orig && sudo zoneadm -z \sz boot
sudo zoneadm -z rz halt
sudo zoneadm -z rz uninstall -F
sudo zfs destroy -fr rpool/zones/rz
sudo zoneadm -z rz clone \rz-orig && sudo zoneadm -z \rz boot |
Wait while dynamic addresses will be received in every test zones and run tests:
Code Block |
---|
sudo /opt/net-tests/bin/nettest |
Expand | ||||
---|---|---|---|---|
| ||||
for example, for cz zone you can with the command:
You will get an answer like this:
First it can be empty, then with inet 0.0.0.0address for int0 interface here, and then with real received address - here it is inet 192.168.0.100. The same way you can use for sz an rz zones as well. |
Wait for several minutes and have found full logs at:
/var/tmp/test_results/<ISO TIME>
Info |
---|
Note : You can run the test using a shell script. It can be created with any text editor or by executing the following command:
After running of this script you will find the log in the /var/tmp/nettest.<ISO TIME>.txt file. It will contain information in the format that is used in Test Results
You can run the test script in a single mode, i.e. all tests will be executed once ( And the second one is stability mode - for testing the net stability. In this case you should put the number of cycles (for example, to run 1000 cycles - |