Connect file storage to a dedicated server
The file storage and the dedicated server are always in different poolahs Therefore, to connect file storage to a dedicated server, you must configure private network connectivity at the L3 level through the global router.
Some dedicated server configurations Chipcore Line cannot be added to the global router's network because they do not have a port to connect to the private network. You can check the availability of a port for the private network in the control panel under Servers and hardware → Servers → server page → tab Ports.
- Create a global router.
- Connect the network and subnet to the global router up to the VLAN of the dedicated server.
- Connect the network and subnet for the file storage to the global router.
- Assign an IP address to the dedicated server.
- Write routes on a dedicated server.
- Create file storage.
- Mount the file storage to a dedicated server.
Check it out example of connecting file storage to a dedicated server.
The instructions describe connection examples for dedicated servers with Ubuntu, Debian, CentOS and Windows operating systems. Instructions for servers with VMware ESXi, Proxmox and FreeNAS operating systems — in Selectel blog article Selectel File Storage.
Example of connecting file storage to a dedicated server
For example, you want to connect file storage in the ru-2 pool to a dedicated server in the SPB-2 pool.
- Create a global router.
- Connect two private subnets to the global router —
192.168.0.0/29
gateway192.168.0.1
for the SPB-2 pool and172.16.0.0/29
gateway172.16.0.1
for pool ru-2. - Assign an address from a subnet
192.168.0.0/29
on a dedicated server, such as192.168.0.2
. - Write a route on a dedicated server in the SPB-2 pool — to a subnet
172.16.0.0/29
through the gateway192.168.0.1
. - Create file storage on a subnetwork
172.16.0.0/29
. - Mount the file storage to a dedicated server.
Create a global router
- In control panel go to Network services → Selectel Global Router.
- Click Create a router. Each account is set limit to five global routers.
- Enter the name of the router.
- Click Create.
Connect the network and subnet to the router to the VLAN of the dedicated server
You can connect a new network to the router or an existing network if it is not already connected to any of the account's global routers.
-
In control panels go to Network services → Selectel Global Router.
-
Open the router page → tab Networks.
-
Click Create a network.
-
Enter a network name, this will only be used in the control panel.
-
Select a service Dedicated servers.
-
Select pool.
-
Select VLAN. If you want to create a network up to the internal segment (Q-in-Q), specify its tag, a number from 2 to 4094. If there is already a network up to the VLAN, be sure to specify the Q-in-Q segment of this VLAN.
-
Enter the subnet name — this will only be used in the control panel.
-
Enter the CIDR — IP address and private subnet mask. You can enter a new subnet or an existing private subnet of the server if it is not already added to any of the global routers in the account. The subnet must meet the conditions:
- belong to the RFC 1918 private address range:
10.0.0.0/8
,172.16.0.0/12
or192.168.0.0/16
; - have a size of at least /29, as three addresses will be occupied by Selectel network equipment;
- Do not overlap with other subnets added to this router: The IP addresses of each subnet on the router must not overlap with the IP addresses of other subnets on the router;
- If Managed Kubernetes nodes will be included in the global router network, the subnet must not overlap with the ranges
10.250.0.0/16
,10.10.0.0/16
and10.96.0.0/12
. These subnets participate in the internal addressing of Managed Kubernetes, their use may cause conflicts in the global router network.
- belong to the RFC 1918 private address range:
-
If you have specified a Q-in-Q tag, make sure to set up a Q-in-Q. When configuring, use the subnet you specified in step 9.
-
Enter the gateway IP or leave the first address from the subnet assigned by default. Do not assign this address to your devices to avoid disrupting the network.
-
Enter service IPs or leave the last addresses from the subnet assigned by default. Do not assign these addresses to your devices to avoid disrupting the network.
-
Click Create a network.
-
Optional: check the network topology on the global router. In control panels go to Network services → Selectel Global Router. Open the page of the desired router and click Network map.
Connect a network and subnet to the router for file storage
If the cloud platform network is connected to a global router, you can only manage it on the global router page.
You need to connect the network and subnet to the global router up to the project and cloud platform pool where the file storage will be created in the future.
You can connect a new network to the router or an existing network if it is not already connected to any of the account's global routers.
Connect a new network
Connect existing network
-
In control panels go to Network services → Selectel Global Router.
-
Open the router page → tab Networks.
-
Click Create a network.
-
Enter a network name, this will only be used in the control panel.
-
Select a service Cloud platform.
-
Select pool This is where the file storage will be created.
-
Select project This is where the file storage will be created.
-
Enter the subnet name — this will only be used in the control panel.
-
Enter the CIDR — IP address and subnet mask. The subnet must meet the conditions:
- belong to the RFC 1918 private address range:
10.0.0.0/8
,172.16.0.0/12
or192.168.0.0/16
; - have a size of at least /29, as three addresses will be occupied by Selectel network equipment;
- Do not overlap with other subnets added to this router: The IP addresses of each subnet on the router must not overlap with the IP addresses of other subnets on the router;
- If Managed Kubernetes nodes will be included in the global router network, the subnet must not overlap with the ranges
10.250.0.0/16
,10.10.0.0/16
and10.96.0.0/12
. These subnets participate in the internal addressing of Managed Kubernetes, their use may cause conflicts in the global router network.
- belong to the RFC 1918 private address range:
-
Enter the gateway IP or leave the first address from the subnet assigned by default. Do not assign this address to your devices to avoid disrupting the network.
-
Enter service IPs or leave the last addresses from the subnet assigned by default. Do not assign these addresses to your devices to avoid disrupting the network.
-
Click Create a network.
-
Optional: check the network topology on the global router. In control panels go to Network services → Selectel Global Router. Open the page of the desired router and click Network map.
-
Check that the network has not yet been added to any of the account's global routers — in the control panels under Cloud platform → Network → tab Private networks it doesn't have a tag. Global router.
-
Verify that the subnet meets the conditions:
- belongs to the private address range according to RFC 1918:
10.0.0.0/8
,172.16.0.0/12
or192.168.0.0/16
; - is at least /29, as three addresses will be occupied by Selectel network equipment;
- does not overlap with other subnets added to this router: the IP addresses of each subnet on the router must not overlap with the IP addresses of other subnets on the router;
- If Managed Kubernetes nodes will be included in the global router network, the subnet must not overlap with the ranges
10.250.0.0/16
,10.10.0.0/16
and10.96.0.0/12
. These subnets participate in the internal addressing of Managed Kubernetes, their use may cause conflicts in the global router network.
- belongs to the private address range according to RFC 1918:
-
In control panels go to Cloud platform →Network.
-
Open the tab Private networks.
-
On the menu. networks select Connect to a global router.
-
Select the global router.
-
For each of the network subnets, enter the IP address that will be assigned to the router, or leave the first available address from the subnet assigned by default. Do not assign this address to your devices to avoid disrupting the network. The last two free subnet addresses will be reserved as service addresses.
-
Click Connect. Do not close the window until you see the message that the network is connected. After that, in the control panel:
Assign an IP address to the dedicated server
Configure a local port on a dedicated server that is included in the global router network. On the port, assign an IP address from the private subnet you created on the global router for the corresponding pool.
Ubuntu
Debian
CentOS
Windows
-
Connect to the server via SSH or through KVM console.
-
Open the utility configuration file
netplan
with the vi text editor:vi /etc/netplan/01-netcfg.yaml
-
Add or change values for the network interface settings of the private network:
<eth_name>:
addresses: [<ip_address>/<mask>]Specify:
<eth_name>
— name of the network interface of the private network;<ip_address>/<mask>
— private IP address of the server with a subnet mask, e.g.192.168.0.2/29
.
-
Press the key
ESC
. -
Exit the vi text editor with your changes saved:
:wq
-
Apply the configuration:
netplan apply
-
Optional: reboot the server.
-
Connect to the server via SSH or through KVM console.
-
Open the network interfaces configuration file with the vi text editor:
vi /etc/network/interfaces
-
Add or change values for the network interface settings of the private network:
auto <eth_name>
iface <eth_name> inet static
address <ip_address>/<mask>Specify:
<eth_name>
— name of the network interface of the private network;<ip_address>/<mask>
— private IP address of the server with a subnet mask, e.g.192.168.0.2/29
;
-
Press the key
ESC
. -
Exit the vi text editor with your changes saved:
:wq
-
Restart the network:
service networking restart
-
Optional: reboot the server.
-
Connect to the server via SSH or through KVM console.
-
Output information about the network interfaces:
ip address
-
Create or open the private network interface configuration file with the vi text editor:
vi /etc/sysconfig/network-scripts/ifcfg-<eth_name>
Specify
<eth_name>
— name of the network interface of the private network. -
Add or change the values of the network interface settings:
NAME="<eth_name>"
ONBOOT=yes
BOOTPROTO=none
IPADDR="<ip_address>"Specify:
<eth_name>
— name of the network interface of the private network;<ip_address>
— the private IP address of the server, e.g.192.168.0.2/29
;
-
Press the key
ESC
. -
Exit the vi text editor with your changes saved:
:wq
-
Restart the network:
systemctl restart network
-
Optional: reboot the server.
Example of changing network settings in CentOS in the blog article Network configuration in CentOS 7.
-
Connect to the server via RDP or through KVM console.
-
Open it up Network and Sharing Center.
-
Open the network interface of the private network.
-
Click Properties.
-
From the list, select IPv4.
-
Click Properties.
-
Specify the network interface parameters:
- IP-address — the private IP address of the server, e.g.
192.168.0.2
; - Subnet mask — subnet mask.
- IP-address — the private IP address of the server, e.g.
-
Click OK.
Write routes on the dedicated server
If you create a new server and add it to an existing global router network, you do not need to specify routes. In this case, the server will be immediately available to other devices on the network.
If you are adding an existing server to a global router network, it must have static routes to all subnets with which you want connectivity.
Ubuntu
Debian
CentOS
Windows
-
Connect to the server via SSH or through KVM console.
-
Open the network configuration file:
vi /etc/netplan/01-netcfg.yaml
-
Locate the data block for the desired network interface.
-
At the end of this block, add a route:
routes:
- to: <ip_address>/<mask>
via: <gateway>Specify:
<ip_address>/<mask>
— the subnet to which you want to route, specifying the mask, e.g.192.168.0.0/29
;<gateway>
— gateway for the current server subnet, which is specified on the global router.
-
If you need to prescribe multiple routes, add them sequentially in the same block, e.g.
routes:
- to: 192.168.0.0/29
via: 172.16.0.1
- to: 192.168.1.0/29
via: 172.16.0.1 -
Save the file.
-
Check the settings:
sudo netplan try
-
Apply the changes:
netplan apply
-
Connect to the server via SSH or through KVM console.
-
Open the network configuration file:
vi /etc/network/interfaces
-
Locate the data block of the corresponding network interface.
-
At the end of the block, add the desired route:
up route add -net <ip_address> netmask <mask> gw <gateway>
down route del -net <ip_address> netmask <mask> gw <gateway>Specify:
<ip_address>
— the subnet you want to route to, e.g.192.168.0.0
;<mask>
— the subnet mask to which you want to route, e.g.255.255.255.0
;<gateway>
— gateway for the current server subnet, which is specified on the global router.
-
If you need to prescribe multiple routes, add them sequentially in the same block.
-
Save the file.
-
Restart the network:
sudo /etc/init.d/networking restart
-
Connect to the server via SSH or through KVM console.
-
Create and complete a file to configure static routes:
echo "<ip_address>/<mask> via <gateway>" >> /etc/sysconfig/network-scripts/route-<eth_name>
Specify:
<ip_address>/<mask>
— the subnet to which you want to route, specifying the mask, e.g.192.168.0.0/29
;<gateway>
— gateway for the current server subnet, which is specified on the global router;<eth_name>
— the name of the corresponding LAN interface.
If you need to add multiple routes, specify them in one command. Specify each route on a new line, e.g.
echo "192.168.0.0/29 via 172.16.0.1
192.168.1.0/29 via 172.16.0.1" >> /etc/sysconfig/network-scripts/route-eno2 -
Restart the network:
systemctl restart network
-
Connect to the server via RDP or through KVM console.
-
Add the required routes one at a time:
route -p ADD <ip_address> MASK <mask> <gateway> METRIC <x>
Specify:
<ip_address>
— the subnet you want to route to, e.g.192.168.0.0
;<mask>
— the subnet mask to which you want to route, e.g.255.255.255.0
;<gateway>
— gateway for the current server subnet, which is specified on the global router;<x>
— parameter defining the priority of the specified gateway, 1 is the highest priority.
Create file storage
-
In control panels go to Cloud platform → File storage.
-
Click Create storage.
-
Enter a new storage name or leave the name that is automatically created.
-
Select region and pool segment where the storage will be created.
If you plan to use storage to store backups, we recommend creating the storage and dedicated server in pool segments from different availability zones or regions for fault tolerance.
-
Select the subnet of the global router that you are connected to a router for file storage.. Once the repository is created, the subnet cannot be changed.
-
Enter a private IP address for the vault or leave the first available address from the subnet assigned by default. Once the storage is created, the IP address cannot be changed.
-
Select file storage type:
- HDD Basic;
- SSD Universal;
- SSD Fast.
File storage types differ in bandwidth values and number of read and write operations, see the table for details File storage limits.
Once created, the storage type cannot be changed.
-
Specify the storage size: from 50 GB to 50 TB. Once created, you can expand file storage but you can't reduce it.
-
Select a protocol:
- NFSv4 — for connecting storage to servers running Linux and other Unix systems;
- CIFS SMBv3 — for connecting the storage to Windows servers.
Once the repository is created, the protocol cannot be changed.
-
Configure the file storage access rules:
- available to all — the storage will be available to any IP address of the private subnet in which it is created;
- access restricted — the storage will be available only to specific IP addresses or private subnets. If you create a file storage without rules, access will be restricted to all IP addresses. To open access, click Add rule, enter the IP address or CIDR of the private subnet, select access level (NFSv4 protocol only) and enter a comment. To add additional rules, click Add rule.
After creating the storage you can change the access rules, for this purpose you can configure new access rules.
-
Check out the price of file storage.
-
Click Create.
Mount the file storage to a dedicated server
The mount process depends on the operating system on the server and the file storage protocol: NFSv4 or CIFS SMBv3.
NFSv4
CIFS SMBv3
Linux
Windows
-
Open the CLI.
-
Install the NFS protocol package:
sudo apt install nfs-common
-
Create a folder to mount the repository:
sudo mkdir -p /mnt/nfs
-
Mount the file storage:
sudo mount -vt nfs "<filestorage_ip_address>:/shares/share-<mountpoint_uuid>" /mnt/nfs
Specify:
<filestorage_ip_address>
— The IP address of the file storage. You can look in control panels under Cloud platform → File storage → storage page → tab Settings → field IP;<mountpoint_uuid>
— The ID of the mount point. You can look in control panels under Cloud platform → File storage → storage page → block Connection → tab GNU/Linux.
The file storage works only with an NFS client of NFSv4 version. By default, Windows supports NFSv2 and NFSv3 NFS clients. Read more about NFS versions in the article NFS Review Microsoft documentation.
To work with file storage from Windows, we recommend using file storage with CIFS protocol. If you need to connect storage with NFS protocol, install and use a client that supports NFSv4 protocol.
Linux
Windows
-
Open the CLI.
-
Install the CIFS protocol package:
sudo apt install cifs-utils
-
Create a folder to mount the repository:
sudo mkdir -p /mnt/cifs
-
Mount the file storage:
sudo mount.cifs -o guest //<filestorage_ip_address>/share-<mountpoint_uuid> /mnt/cifs
Specify:
<filestorage_ip_address>
— The IP address of the file storage. You can look in control panels under Cloud platform → File storage → storage page → tab Settings → field IP;<mountpoint_uuid>
— The ID of the mount point. You can look in control panels under Cloud platform → File storage → storage page → block Connection → tab GNU/Linux.
-
Open the CLI.
-
Mount the file storage:
net use X: \\\\<filestorage_ip_address>\share-<mountpoint_uuid>
Specify:
<filestorage_ip_address>
— The IP address of the file storage. You can look in control panels under Cloud platform → File storage → storage page → tab Settings → field IP;<mountpoint_uuid>
— The ID of the mount point. You can look in control panels under Cloud platform → File storage → storage page → block Connection → tab Windows.