Wenn Sie einen Bare-Metal-Kubernetes-Cluster oder einen Cloud-Anbieter verwenden,
der LoadBalancer-Dienste nicht unterstützt, können Sie MetalLB verwenden, um Ihren
ICAP-Dienst bereitzustellen.
Prozedur
- Installieren Sie MetalLB in MicroK8s
# Enable MetalLB with an appropriate IP range for your network # Replace the IP range with one suitable for your network microk8s enable metallb:192.168.1.200-192.168.1.220
Hinweis
Beim Auswählen des IP-Bereichs:- Stellen Sie sicher, dass es sich innerhalb Ihres lokalen Subnetzes befindet
- Vermeiden Sie Konflikte mit dem Bereich Ihres DHCP-Servers
- Wählen Sie IPs, die nicht bereits anderen Geräten zugewiesen sind
- Aktualisieren Sie my-values.yaml mit folgendem Inhalt:
scanner: # Other scanner settings remain unchanged externalService: enabled: true type: LoadBalancer # This creates an NLB annotations: {} icapPort: 1344
- Aktualisieren Sie die Bereitstellung mit der MetalLB-Konfiguration:
Run the following: helm upgrade my-release visionone-filesecurity/visionone-filesecurity \ -n visionone-filesecurity \ -f my-values.yaml
- Überprüfen Sie die MetalLB-Verteilung:
# Check the service status kubectl get service -n visionone-filesecurity | grep scanner-lb # Get the external IP assigned by MetalLB EXTERNAL_IP=$(kubectl get service -n visionone-filesecurity my-release-visionone-filesecurity-scanner-lb -o jsonpath='{.status.loadBalancer.ingress[0].ip}') echo "Your MetalLB external IP is: $EXTERNAL_IP"
- Installieren und verwenden Sie den c-icap-client, um Ihre Verbindung zu testen:
# Install c-icap-client sudo apt-get install c-icap # Test with file scanning c-icap-client -i $EXTERNAL_IP -s scan -p 1344 -f sample.txt -x "X-scan-file-name: sample.txt"