Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.


Członek DUG



Witam,
Obecnie mam tak, że wszystkie subdomeny są kierowane na ip 178.10.X.X serwer nginx, który rozdziela to między kolejne 2 serwery (10.0.1.2 i 10.0.1.3).
Wszystko pięknie działa. Pod warunkiem, że kieruję subdomeny na ten IP publiczny głównego nginx, przykład rp.domena.pl -> 178.10.X.X pb.domena.pl -> 178.10.X.X (DNS jest w home.pl).
Jeśli przekierowuję www.domena.pl też ładuje mi na serwery 1.2 lub 1.3 a chciałbym by kierował je na 10.0.1.4. Schematycznie wygląda to tak
|----serwer 10.0.1.2 ( obsługa subdomen rp.domena.pl, pd.domena.pl - bez www, i tu będą różne )
SERWER 178.10.X.X ---
| |
| |---- serwer 10.0.1.3 ( obsługa subdomen rp.domena.pl, pd.domena.pl - bez www, i tu będą różne )
|
|-----serwer 10.0.1.4 ( ma obsługiwać zapytania www.domena.pl, domena.pl, www.panel.domena.pl(tu myk jedna subdomena!) )
Pytanie, czy za pomocą jednego serwera jestem w stanie to tak pokierować. ?
Dzięki
Offline




złodziej wirków ]:->
przekieruj całą domenę na swoje główne IP a potem w nginxie ustaw przekierowanie odpowiednich vhostów na odpowiednia domenę/subdomene
Offline







Podobno człowiek...;)








Strasznie trudna sprawa z tym LB na Nginxie... :)
Tu masz obrazki:
http://www.geektantra.com/2011/06/using-nginx-as-a-load-balancer/
Pozdro
;-)
Offline


Członek DUG



eee a po co mi obrazki. Mi chodzi o to jak skierować zapytanie www.domena.pl oraz www.panel.domena.pl na 1.4 , reszta mi działa. Niestety nie mogę całej domeny przekierować :(
Offline




złodziej wirków ]:->
jak masz tą domenę w home.pl przekierowaną i jakie masz możliwości przekierowania?
Offline


Członek DUG



nie mam żadnych wspieram firmę która coś tam ma na Linux i rozwija swoje pomysły. Muszę prosić ich informatyka i TO DUŻYMI LITERAMI co ma mi ustawić i jak.
Offline




złodziej wirków ]:->
Najprościej zrobić coś takiego. Ustawić rekord A dla domeny na IP serwera
domena.pl. A 178.10.X.X
www.domena.pl. A 178.10.X.X
Wtedy wszystkie jest kierowane na "SERWER 178.10.X.X" na którym stoi sobie nginx. W nginxie robisz X konfigów dla vhostów i tylko odpowiednio ustawiasz
proxy_pass http://10.0.1.X:8080;
oczywiście na serwerach 10.0.1.X konfigurujesz osobnego nginxa/apacza/co tam wygodniej dla wybranych domen/subdomen.
Offline


Członek DUG



hmmm, jest tak
w home.pl rekord DNS jest ustawiony
rp.domena.pl A 178.10.X.143
pb.domena.pl A 178.10.X.143
or.domena.pl A 178.10.X.143
To działa super jest przyjmowane przez nginx słuchający na IP 178.10.X.X który to rozrzuca między serwery 1.2 i 1.3.
Problem jest w tym że chcą ustawić tak DNS
panel.domena.pl A 178.10.X.143 ten sam adres co wyżej
www A 178.10.X.143
Teraz wchodząc na stronę www.domena.pl, panel.domena.pl lub www.panel.domena.pl dostaję dane z serwerów 1.2 lub 1.3, a potrzebuję dane i strony otrzymać z 1.4.
Wydaje mi się, że nie ogarnę tego za pomocą jednego nginx, ale chciałem się was podpytać. Może jakiegoś if-a zrobić z redirect ?
Offline




złodziej wirków ]:->
jak masz tego nginxa skonfigurowanego na maszynie 178.10.x.x i jak masz skonfigurowanie nginxy/apacze na tych lokalnych maszynach (10.0.x.x)?
Offline


Członek DUG



konfiguracja nginx głównego wygląda tak 178.10.X.X
user www-data;
worker_processes 3;
pid /var/run/nginx.pid;
events {
worker_connections 1048;
}
http {
##
# Basic Settings
##
server_tokens off;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 2;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# LOAD BALANCING
##
upstream appmaster {
server 10.0.1.3 max_fails=2 fail_timeout=2s; #LUNA # TO NGINX
server 10.0.1.2 max_fails=2 fail_timeout=2s; #DIANA # TO NGINX
}
upstream appupload {
server 10.0.1.4:80; # TO APACHE2
}
##
# Logging Settings
##
log_format main '$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent '
'"$http_referer" "$http_user_agent" "$gzip_ratio"';
access_log /var/log/nginx/pax_access.log main buffer=256k;
error_log /var/log/nginx/pax_error.log;
##
# Gzip Settings
##
gzip on;
gzip_disable "msie6";
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
proxy_next_upstream error;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
server {
listen 80;
server_name pax;
client_max_body_size 5M;
access_log /data/log/nginx/pax_access.log;
error_log /data/log/nginx/pax_error.log;
location / {
proxy_pass_header $server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_set_header X-Scheme $scheme;
proxy_pass http://appmaster;
}
}
#server {
# listen 80;
# server_name panel.domena.pl;
# client_max_body_size 5M;
#location / {
# proxy_pass_header $server;
# proxy_set_header Host $http_host;
# proxy_redirect off;
# proxy_set_header X-Real-IP $remote_addr;
# proxy_set_header X-Scheme $scheme;
# proxy_pass http://appupload;
# }
#}
server {
listen 443;
server_name adprize.pl;
client_max_body_size 5M;
ssl on;
ssl_certificate /etc/ssl/domena.pl.pem;
ssl_certificate_key /etc/ssl/private/domena.pl.key;
location / {
proxy_pass_header $server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://appmaster;
}
}
}Serwery 1.2 i 1.3 to nginx, serwer 1.4 to apache2
Offline




złodziej wirków ]:->
No i w czym problem? Dalej nie ustawiłeś proxypassa tak jak mówiłem ;) Pisałem przekieruj po konkretnych nazwach/vhostach na konkretne serwery lokalne
|----serwer 10.0.1.2 ( obsługa subdomen rp.domena.pl, pd.domena.pl - bez www, i tu będą różne )
SERWER 178.10.X.X ---
| |
| |---- serwer 10.0.1.3 ( obsługa subdomen rp.domena.pl, pd.domena.pl - bez www, i tu będą różne )
|
|-----serwer 10.0.1.4 ( ma obsługiwać zapytania www.domena.pl, domena.pl, www.panel.domena.pl(tu myk jedna subdomenawięc odpalasz konfiga nginxa na 178.10.X.X i robisz:
user www-data;
worker_processes 3;
pid /var/run/nginx.pid;
events {
worker_connections 1048;
}
http {
##
# Basic Settings
##
server_tokens off;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 2;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# LOAD BALANCING
##
upstream appmaster {
server 10.0.1.3 max_fails=2 fail_timeout=2s; #LUNA # TO NGINX
server 10.0.1.2 max_fails=2 fail_timeout=2s; #DIANA # TO NGINX
}
upstream appupload {
server 10.0.1.4:80; # TO APACHE2
}
##
# Logging Settings
##
log_format main '$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent '
'"$http_referer" "$http_user_agent" "$gzip_ratio"';
access_log /var/log/nginx/pax_access.log main buffer=256k;
error_log /var/log/nginx/pax_error.log;
##
# Gzip Settings
##
gzip on;
gzip_disable "msie6";
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
proxy_next_upstream error;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
server {
listen 80;
server_name rp.domena.pl pb.domena.pl; #podajesz jakie domeny/subdomeny mają być obsługiwane przez dane proxypass
client_max_body_size 5M;
access_log /data/log/nginx/pb-rb_access.log;
error_log /data/log/nginx/pb-rb_error.log;
location / {
proxy_pass_header $server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_set_header X-Scheme $scheme;
proxy_pass http://appmaster;
} # location
} #server
server {
listen 80;
server_name panel.domena.pl www.panel.domena.pl www.domena.pl;
client_max_body_size 5M;
access_log /data/log/nginx/pb-rb_access.log;
error_log /data/log/nginx/pb-rb_error.log;
location / {
proxy_pass_header $server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_set_header X-Scheme $scheme;
proxy_pass http://appupload;
} # location
} #server
server {
listen 443;
server_name adprize.pl;
client_max_body_size 5M;
ssl on;
ssl_certificate /etc/ssl/domena.pl.pem;
ssl_certificate_key /etc/ssl/private/domena.pl.key;
location / {
proxy_pass_header $server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://appmaster;
}
}
}Offline


Członek DUG



o matko czyli dodać kolejną sekcję i wpisać w server_name odpowiednie wpisy. Super zaraz sprawdzę. Gdzie wysłać piwko ?
Jak dla mnie najlepsze forum na świecie :)))
Ostatnio edytowany przez redelek (2013-12-06 09:18:30)
Offline




złodziej wirków ]:->
Sprawdź czy działa, na 99.8% powinno ale nie chciało mi się stawiać kilku maszyn żeby przetestować ;p
Offline