F5: Difference between revisions

2,611 bytes added ,  22 days ago
 
(25 intermediate revisions by the same user not shown)
Line 115:
* Topology
 
[client]--------------------[-----[ F5 ]]------------------------[server]
192.168.45.121 192.168.45.21 | 192.168.68.3 192.168.68.108
|
192.168.30.217
|
 
|
{10.157.146.116}
Host
 
* Install [https://aman.awiki.org/wiki/Virtualization#KVM_Installation KVM]
Line 128 ⟶ 131:
* Create 3 virtual bridge interfaces:
 
;virbr0 (Ignore if already existing)
;virbr0
 
vim virbr0.xml
Line 134 ⟶ 137:
Add bridge details to the file:
<syntaxhighlight lang=ini><network>
<name>virbr0br0</name>
<forward mode='nat'>
<nat>
Line 150 ⟶ 153:
 
sudo virsh net-define virbr0.xml
sudo virsh net-start virbr0br0
sudo virsh net-autostart virbr0br0
sudo virsh net-list --all
ip addr show dev virbr0
Line 161 ⟶ 164:
Add bridge details to the file:
<syntaxhighlight lang=ini><network>
<name>virbr1br1</name>
<forward mode='nat'>
<nat>
Line 177 ⟶ 180:
 
sudo virsh net-define virbr1.xml
sudo virsh net-start virbr1br1
sudo virsh net-autostart virbr1br1
sudo virsh net-list --all
ip addr show dev virbr1
Line 188 ⟶ 191:
Add bridge details to the file:
<syntaxhighlight lang=ini><network>
<name>virbr2br2</name>
<forward mode='nat'>
<nat>
Line 204 ⟶ 207:
 
sudo virsh net-define virbr2.xml
sudo virsh net-start virbr2br2
sudo virsh net-autostart virbr2br2
sudo virsh net-list --all
ip addr show dev virbr2
Line 244 ⟶ 247:
 
* Iptables enable Web UI access using NAT from Host VM:
sudo iptables -t nat -I PREROUTING -p tcp -d 10.170157.131146.132116 --dport 8443 -j DNAT --to-destination 192.168.12230.109217:443
sudo iptables -I FORWARD -m state -d 192.168.12230.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT
 
* The above rules might not survive reboot of host, hardcoding them:
sudo yum install iptables-services
{{UC}}
sudo systemctl start iptables
sudo systemctl enable iptables
sudo service iptables save
 
* Apply License
Line 326 ⟶ 332:
* Basic config:
sudo vi /etc/hostname # change hostname
 
sudo yum install httpd
sudo systemctl enable httpd
sudo systemctl start httpd
sudo systemctl status httpd
 
sudo iptables -F
 
=== Install WebServer ===
Line 347 ⟶ 359:
* Obtaining Console access:
sudo virsh console server
sudo iptables -F
 
== F5 Configuration ==
{{UC}}
 
=== Manually assign Management IP address ===
 
tmsh modify sys global-settings mgmt-dhcp disabled
=== Create SelfIP ===
tmsh create sys management-ip 192.168.30.217/24
{{UC}}
tmsh create sys management-route default { gateway 192.168.30.1 network default }
 
=== Create VLAN ===
 
<pre>
=== Create Pool ===
net vlan myVlan {
{{UC}}
fwd-mode l3
if-index 128
interfaces {
1.2 { }
}
sflow {
poll-interval-global no
sampling-rate-global no
}
tag 4094
}
</pre>
 
=== Create SelfIP ===
<pre>
net self SelfIpforPool {
address 192.168.68.3/24
traffic-group traffic-group-local-only
vlan myVlan
}
</pre>
 
=== Create Pool ===
<pre>
ltm pool myPool {
members {
server1:http {
address 192.168.68.108
logging enabled
session monitor-enabled
state up
}
}
monitor http
}
 
</pre>
=== Create VS ===
<pre>
{{UC}}
ltm snat-translation 192.168.68.7 {
address 192.168.68.7
inherited-traffic-group true
traffic-group traffic-group-1
}
ltm snatpool mySNatIP {
members {
192.168.68.7
}
}
</pre>
 
<pre>
ltm virtual myVS {
creation-time 2024-04-30:09:50:10
destination 192.168.45.21:http
ip-protocol tcp
last-modified-time 2024-05-01:02:29:35
mask 255.255.255.255
pool myPool
profiles {
tcp { }
}
serverssl-use-sni disabled
source 0.0.0.0/0
source-address-translation {
pool mySNatIP
type snat
}
translate-address enabled
translate-port enabled
vlans {
ExternalVlan
}
vlans-enabled
vs-index 2
}
</pre>
 
=== Enable Internet Access on VMs ===
 
; On VMs:
 
* Add Interface for the common network on host to the VMs:
sudo virsh attach-interface --type bridge --source virbr0 --model virtio client
 
; On Host:
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables --table nat --append POSTROUTING --out-interface ens192 -j MASQUERADE # ens192 is default exit interface in Host
sudo iptables --insert FORWARD --in-interface virbr0 -j ACCEPT # virbr0 is newly added interface in VM
 
== UCS Backup ==
tmsh save sys ucs $(echo $HOSTNAME | cut -d'.' -f1)-$(date +%H%M-%m%d%y)
scp root@192.168.30.217:/var/local/ucs/labdevice-0305-061324.ucs .