1.0 Introduction
This article describes how to integrate Fortanix-Data-Security-Manager (DSM) for VMware Encryption on GCP. It also contains the information that a user needs to:
Deploy Fortanix DSM on Google Cloud Platform
Perform Virtual Private Cloud (VPC) Peering with GCVE-VPC
Configure GCVE-VPC vCenter
1.1 Before you Begin
Refer to Google documentation for the Google Cloud account creation and other steps.
2.0 Prerequisites
Ensure the following:
Fortanix DSM installation package for GCP
VM Type: "n1-standard-4" or higher
VM Count: 3 or higher
3.0 Deploying Fortanix Data Security Manager on GCP
3.1 Creating a VPC Network
For security purposes, create a new network. You can control who has access by adding firewall rules or by using another access control method.
If your project has a default VPC network, do not use it. Instead, create your own VPC network so that the only firewall rules in effect are those that you create explicitly.
Create a new VPC with a subnet IP range different from GCVE-VPC.

Figure 1: Create New VPC
3.2 Create an Instance Template
In the Create an instance page, select the option New VM instance from template in the left panel and then in the Machine type field select n1-standard-4 (4 vCPU, 15GB memory) or higher.
Figure 2: Select Machine Type
In the Boot disk field, select Ubuntu 16.04 LTS + 200GB SSD.
Click Create to create the Instance Template.
Figure 3: Add boot disc details
3.3 Create an Instance Group
Create an “Instance Group” using the “Instance Template” created in the previous step.

Figure 4: Disable auto-scaling and select no. of DSM cluster
In the Create an instance group page, select the option New managed instance group in the left panel.
Disable Auto-scaling.
In the Number of instances enter the number of Fortanix DSM cluster nodes.
Click Create. The VMs specified will be created after this step.
3.4 Create Health
In the Create a health check page, check for port 443.
Click Create to create a health check.
Figure 5: Check for Port
3.5 Create an Internal TCP Load Balancer
In the Create a load balancer page, under Internal facing or internal only field, select the option Only between my VMs.
Figure 6: Internal Load Balancer Configuration
Click Continue to create a new internal load balancer.
Select Backend configuration in the left panel,
Select the “VPC” created in Section 3.1: Creating a VPC Network.
Select the Instance group created in Section 3.3: Create an Instance Group.
Figure 7: Backend Configuration
Select Frontend configuration in the left panel,
Select the “VPC” created in Section 3.1: Creating a VPC Network.
Reserve an internal IP address in the Internal IP
Expose ports "443,4445, and 5696" on this load-balancer in the Port number
Figure 8: Frontend Configuration
3.6 Create an External Load Balancer
In the Create a load balancer page, under Internal facing or internal only field, select the option From internet to my VMs.
Click Continue.
Figure 9: External Load Balancer Configuration
Select Backend configuration in the left panel,
Select the Region.
Select the Instance group created in Section 3.3: Create an Instance Group.
Select the Health check created in Section 3.4: Create Health.
Figure 10: Backend Configuration
Select Frontend configuration in the left panel,
Select the “VPC” created in Section 3.1: Creating a VPC Network.
Reserve a public IP address in the IP
Expose ports "443,4445, and 5696" on this load-balancer.
Figure 11: Frontend Configuration
3.7 Add a Firewall Rule
By default, an implied firewall rule blocks incoming connections outside your VPC network. To allow incoming connections, set up a firewall rule for your VM. After an incoming connection is established with a VM, traffic is permitted in both directions over that connection.
You can create a firewall rule to allow external access to specified ports, or to restrict access between VMs on the same network.
In the Cloud console, go to the Firewall rules page.
Add a firewall rule to allow the ports "443,4445, and 5696".
Select the “VPC” created as part of this process.
Restrict to source IP based on the security requirements.
Figure 12: Add firewall rule
3.8 Create a DNS
Create a DNS for internal and external load balancers.
This can be either done in Google DNS or outside.
For this example, sdkms.vpc.gcloud will be your VPC reachable endpoint of Fortanix DSM.
Also, sdkms.external.gcloud will be your internet reachable endpoint.
3.9 Download and Install Fortanix Data Security Manager
The package needs to be installed on all the servers. To install the Fortanix DSM package:
The latest installation file is available at https://support.fortanix.com/hc/en-us/sections/360001900792-SDKMS-Releases. This needs a partner account, which Fortanix provides to the relevant contact person.
Download and copy the Fortanix DSM installation file
sdkms_<version>_install.sh
to each server. The latest installation files are hosted on https://support.fortanix.com.Install the package by running the following command, replacing the package name with the filename of the package in your Fortanix DSM distribution.
sudo chmod +x sdkms_2.3.688-124_install.sh sudo ./sdkms_2.3.688-124_install.sh
Reboot the system if new version of kernel was installed.
sudo reboot
NOTE
Swap must be disabled again after the node boots up.
Perform a reset on all servers by running the following command:
sudo sdkms-cluster reset --delete-data
Install the Fortanix DSM software on each VM. Refer to the Fortanix Data Security Manager Installation Guide - On-Prem for the step-by-step installation steps.
For the GCP compatible installation package, contact Fortanix Support.
3.10 UI / KMIP Access
The UI can be accessed using sdkms.external.gcloud.
The KMIP for VMware can be accessed using sdkms.vpc.gcloud.
4.0 VPC Peering with GCVE-VPC
The following are instructions to establish VPC Peering between Project ID=fortanix, VPC name = gcve-vpc and the VMWare SDDC (Software-Defined Data Center).
4.1 Enable Service Networking APIs
To enable Service Networking APIs, use the following command:
gcloud services enable servicenetworking.googleapis.com --project=fortanix
4.2 Enable Service Management APIs
To enable Service Management APIs use the command:
gcloud services enable serviceconsumermanagement.googleapis.com --project=fortanix

Figure 13: Enable Service Networking and Management APIs
4.3 Reserve an IP Block for VPN Gateway Address Space
Next, reserve an IP block used for VPN Gateway Address Space (prefix length must be 28). This range is already assigned to your environment (192.168.1.0/28).
gcloud beta compute addresses create gcvs-rsvd-vpngw --project=fortanix --addresses=192.168.1.0 --prefix-length=28 --description="IP range for VMware Private Cloud VPN gateway" --purpose=VPC_PEERING --network=gcve-vpc –global
4.4 Reserve an IP Block for Management Address Space
Next, reserve an IP block used for VPN Management Address space for your VMware Private Cloud. This range is already assigned to your environment (192.168.0.0/24).
gcloud beta compute addresses create gcvs-rsvd-mgmt --project=fortanix --addresses=192.168.0.0 --prefix-length=24 --description="IP range for VMware Private Cloud Network" --purpose=VPC_PEERING --network=gcve-vpc --global

Figure 14: Reserve IP block for networking and management address space
4.5 Create a VPC Peering
Create a VPC peering using the following command:
gcloud beta services vpc-peerings connect --project=fortanix --service=vpc-peering.gcloud.gcve-vpc.com --network=gcve-vpc --ranges=gcvs-rsvd-vpngw,gcvs-rsvd-mgmt
4.6 Accept the VPC Peering Request
After creating the VPC peering connection, wait for the GCP-GCVE-VPC to accept the VPC-peering request.
5.0 Configuring GCVE-VPC vCenter
To configure GCVE-VPC vCenter, follow the steps described below:
Configure a new account/group/app on the Fortanix DSM.
Configure internal IP sdkms.vpc.gcloud into vCenter Key-Management-Servers.
In the “Applications” page and click “VIEW CREDENTIALS” of the app you just created. Then, click the “Username/Password” tab and note the Username and Password to configure KMS in vCenter.
Establish trust with Fortanix DSM : Make vCenter trust KMS.
Figure 15: Make vCenter trust KMS
Figure 16: Trust Established
Make KMS Trust vCenter:
Figure 17: Make KMS trust vCenter
Choose a Certificate:
Figure 18: Choose a certificate
Download vCenter Certificate:
Figure 19: Download vCenter certificate
Figure 20: Certificate configured
For more information, refer to the article Using Fortanix Data Security Manager as a KMS to Secure VMware Virtual Environments.
Enable vSAN encryption.
In the VMware vSphere Client, go to Cluster → vSAN → Services.
Figure 21: Enable vSan Encryption
Enable vSAN Encryption.
Figure 22: Enable vSan Encryption
Fortanix DSM is ready for use with vSAN encryption and vCenter VM encryption. A tamper proof audit log captures all the crypto operations performed by the application.
Figure 23: Fortanix DSM successfully configured
For VSAN encryption, new security keys are created in Fortanix DSM using the KMIP protocol.Figure 24: Configuration successful