mirror of
https://github.com/Dannecron/netology-devops.git
synced 2025-12-25 15:22:37 +03:00
homework 3.8: add incomplete question 6
This commit is contained in:
@@ -121,3 +121,68 @@ UNCONN 0 0
|
||||
Файл [network.xml](./network.xml) для открытия в [diagrams.net](https://diagrams.net).
|
||||
|
||||

|
||||
|
||||
6. Установите Nginx, настройте в режиме балансировщика TCP или UDP.
|
||||
|
||||
Установка nginx:
|
||||
|
||||
```shell
|
||||
sudo apt install nginx
|
||||
|
||||
sudo service nginx status
|
||||
● nginx.service - A high performance web server and a reverse proxy server
|
||||
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
|
||||
Active: active (running) since Thu 2022-03-17 03:14:31 UTC; 24s ago
|
||||
Docs: man:nginx(8)
|
||||
Main PID: 1830 (nginx)
|
||||
Tasks: 3 (limit: 1107)
|
||||
Memory: 5.0M
|
||||
CGroup: /system.slice/nginx.service
|
||||
├─1830 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
|
||||
├─1831 nginx: worker process
|
||||
└─1832 nginx: worker process
|
||||
```
|
||||
|
||||
Далее, определим, что есть два ip-адреса, на которые необходимо сделать проксирование и балансировку трафика:
|
||||
* `10.2.2.2`
|
||||
* `10.2.2.3`
|
||||
|
||||
Оба ip-адреса слушают следующие порты: `:25` - upd-трафик, `:80` - tcp-трафик.
|
||||
|
||||
Настроим nginx на прослушивание порта `:80` для обоих типов трафика с дальнейшей балансировкой и проксированием.
|
||||
|
||||
Добавим новый блок конфигурации в файл `/etc/nginx/nginx.conf`:
|
||||
|
||||
```
|
||||
stream {
|
||||
upstream tcp_backend {
|
||||
server 10.2.2.2:80;
|
||||
server 10.2.2.3:80;
|
||||
}
|
||||
|
||||
upstream upd_backend {
|
||||
server 10.2.2.2:25;
|
||||
server 10.2.2.3:25;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
proxy_pass tcp_backend;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80 udp;
|
||||
proxy_pass upd_backend;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Проверим, что конфигурация в порядке:
|
||||
|
||||
```shell
|
||||
sudo nginx -t
|
||||
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
|
||||
nginx: configuration file /etc/nginx/nginx.conf test is successful
|
||||
```
|
||||
|
||||
// todo reload nginx settings, test out request
|
||||
|
||||
Reference in New Issue
Block a user