В общедоступном облачном решении OVH появилась новая функция в составе сетевых инструментов: виртуальные маршрутизаторы и плавающие IP-адреса, которые обеспечивают большую гибкость в управлении сетями и возможностями третьего уровня.
Виртуальные роутеры
- В дополнение к классическим инструментам управления частной сетью у вас теперь есть возможность создавать виртуальные маршрутизаторы, а также управлять маршрутами и правилами NAT для ваших частных сетей. Вот некоторые из потенциальных преимуществ, которые это предлагает:
- Вы можете создавать экземпляры, которые используют только частные порты, а не публичные, сохраняя при этом доступ к Интернету через виртуальный маршрутизатор. Это может помочь поддерживать высокий уровень безопасности (так как входящий интернет-трафик невозможен), сохраняя при этом возможность связаться с хранилищем или что-либо еще в Интернете.
- Вы можете разделить свою архитектуру на несколько сетей и настроить маршруты по требованию, в зависимости от вашей бизнес-логики. Таким образом, у вас будет сильная изоляция L2 для отдельных частей вашего приложения и маршрутизация L3, когда это потребуется.
Плавающие IP-адреса
- Плавающие IP-адреса — это публичные IP-адреса, которые вы можете использовать, которые будут обрабатываться виртуальным маршрутизатором для адресации экземпляров. Есть несколько ситуаций, когда плавающие IP полезны:
- Вы можете заранее определить плавающий IP для своего приложения, не создавая экземпляр для получения публичного IP. Это может помочь вам управлять записями DNS.
- Вы можете связать свой плавающий IP-адрес с экземплярами, доступными через ваш виртуальный маршрутизатор, что позволяет вам включать входящий интернет-трафик по требованию.
- Вы можете в любое время переключать связь с одного экземпляра на другой, что может помочь вам управлять ситуациями простоя или просто планировать действия по обслуживанию (например, запуск непрерывных обновлений на нескольких узлах).
How to use it with CLI?
Create a router
openstack router create myrouter
Create a private network
openstack network create private
openstack subnet create --dhcp --gateway 192.168.1.1 --dns-nameserver 213.186.33.99 --subnet-range 192.168.1.0/24 --network private 192.168.1.0/24
Add attachments
Attach this router to both Ext-Net and your private network
openstack router set --external-gateway Ext-Net myrouter
openstack router add subnet myrouter 192.168.1.0/24
Create servers
Create its with private network connection only.
openstack server create --image 'Debian 9' --net private --key-name fake --flavor c2-7 srv01
openstack server create --image 'Debian 9' --net private --key-name fake --flavor c2-7 srv02
Your server should now be able to ping internet from its private IP via routing (the router gateway in my example is 192.168.1.1)
Create a floating IP
openstack floating ip create Ext-Net
Attach this floating IP to your server
openstack server add floating ip srv01 213.251.131.42
Your can now ping your server using this public IP.
Switch this floating IP to another server
openstack server delete floating ip srv01 213.251.131.42
openstack server add floating ip srv02 213.251.131.42