2020-09-22 (6)

Запустите собственный сервер в Oracle Cloud Infrastructure

Вначале выберем язык на котором понятней и удобней и открываем стартовую страницу: https://www.oracle.com/ru/index.html

идём в -> “Oracle Cloud Infrastructure” -> “Опробовать бесплатный уровень”

2020-09-23 (1)

далее ознакомимся с условиями и с перечнем бесплатного пакета “Always Free”

2020-09-23 (2)

2020-09-23 (3)

жмём на “начните с бесплатной версии” и поехали…

2020-09-23 (5) 2020-09-23 (6)

дальше нужно пройти 2 верификации, по смс и по кредитке (кнопка “start my free..” уже видна и держим на неё курс)

2020-09-23 (7) 2020-09-23 (8) 2020-09-23 (9) 2020-09-23 (10)

если всё в порядке то получаем “зелёный свет”

2020-09-23 (11)

и теперь кнопка “start my free..” наконец то доступна

2020-09-23 (13)

жмакаем и мы на месте

2020-09-23 (14)

обзываем свой будущий сервер

2020-09-23 (15)

выбираем ОСь

2020-09-23 (16)

бесплатные машины доступны только на AD3!

2020-09-23 (17)

теперь выбираем саму машину и главное не промахнутся

2020-09-23 (18) 2020-09-23 (19) 2020-09-23 (20)

генерируем с puttygen.exe пару ключей и копируем паблик на сервер а приватный сохраняем на компе, потом понадобится…

2020-09-23 (22) 2020-09-23 (23)

в дополнительных настройках выключаем мониторинг, остальное по умолчанию, и жмём “создать”

2020-09-23 (24)

настроим putty и попробуем зайти на сервер через ssh

2020-09-23 (26) 2020-09-23 (27) 2020-09-23 (28)

здесь соглашаемся

2020-09-23 (29)

всё мы вошли

2020-09-23 (30)

получаем рут и работаем

2020-09-23 (31) 2020-09-23 (32) 2020-09-23 (33)

на мыло придёт два письма с краткими даными учётки с “кнопками” по которым и можно заходить на свою учётку

2020-09-23 (34) 2020-09-23 (35)

enjoy

Дополнительно(Бонус)

Использование сети маршрутизации в режиме кластера

ingress-routing-mesh

Открыть протоколы и порты между хостами

Следующие порты должны быть доступны:

  • TCP port 2377 для управления кластером
  • TCP and UDP port 7946 для связи между узлами
  • UDP port 4789 для оверлейного сетевого трафика

### Создание кластера #### Откройте терминал и подключитесь по ssh к машине, на которой вы хотите запустить свой управляющий узел и выполните следующюю команду:

 $ docker swarm init --advertise-addr 192.168.99.100
Swarm initialized: current node (dxn1zf6l61qsb1josjja83ngz) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join \
    --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \
    192.168.99.100:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

Откройте терминал и подключитесь по ssh к машине, на которой вы хотите запустить второй рабочий узел.

Запустите команду, созданную выходными данными docker swarm init из первого шага, чтобы создать второй рабочий узел, присоединенный к существующему swarm:

$ docker swarm join \
  --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \
  192.168.99.100:2377

This node joined a swarm as a worker.

Разверните сервис в кластере

Откройте терминал и подключитесь по ssh к машине, на которой вы запустили управляющий узел и выполните следующую команду:

docker service create --replicas 4 --name zmp_cluster --publish published=1010,target=1010 sybdata/ace86a37:zproxy

2020-10-04 (1)

2020-10-04 (2)

Run your own ZMP Server on Oracle Cloud Infrastructure

If you choose to, register on Oracle Cloud (requires credit card for verification) and create a free VM:

  • Create a VM instance
  • Give it a name
  • OS/image: Ubuntu 16.04 Minimal or Ubuntu 18.04 Minimal or Ubuntu 20.04 Minimal or CentOS 7
  • Show Shape, Network and Storage Options -> Assign a public IP address
  • Add SSH key (generate one using ssh-keygen if you don’t have one)
  • Show advanced options. I removed monitoring, since I’ll remove the monitoring agent later.

View resources and make sure the instance and boot volume are “Always Free” if you don’t intent to pay for them.

Make sure you can ssh to the server (using the ssh key you generated/picked) using the user ‘ubuntu’ and can use sudo.

Open firewall

Oracle Cloud Security lists

View resources -> Instances -> Select instance -> Virtual Cloud Network -> Public Subnet -> Security Lists -> Default -> Ingress

Open incoming for CIDR 0.0.0.0/0:

  • 22/tcp for SSH (should be open already)
  • xxxx/tcp for ZMP
  • xxxx/tcp for HLS-proxy or Xteve

Ubuntu iptables

The Oracle Cloud Ubuntu images come with somewhat restrictive iptables rules by default. Docker manages the instance firewall and we have the Oracle Cloud firewall in front, so let’s remove the current firewall to avoid trouble:

apt purge netfilter-persistent iptables-persistent

Remove useless stuff (optional)

Oracle cloud includes a somewhat heavy monitoring daemon. We have better use for that memory since current versions of Synapse, the Matrix homeserver, can be memory hungry.

snap remove oracle-cloud-agent
apt purge snapd open-iscsi lxd lxcfs

Tune server (optional)

I suggest enabling swap, since there’s only 1 GB of RAM.

dd if=/dev/zero of=/swap bs=1M count=1k
chmod 0600 /swap
mkswap /swap
swapon /swap
echo '/swap none swap sw 0 0' >> /etc/fstab