เชนเซเชฒเซ, เชนเซเชฌเซเชฐ! เชนเซเช เชคเชฎเชพเชฐเชพ เชงเซเชฏเชพเชจ เชชเชฐ เชชเซเชธเซเชเชจเซ เช
เชจเซเชตเชพเชฆ เชฒเชพเชตเซเช เชเซเช:
เชเชจเซเชตเซเชฏ เช เชเช เชเชเซเช-เชชเซเชฐเชฆเชฐเซเชถเชจ เชตเชฟเชคเชฐเชฟเชค เชชเซเชฐเซเชเซเชธเซ เชธเชฐเซเชตเชฐ เชเซ (C++ เชฎเชพเช เชฒเชเชพเชฏเซเชฒ) เชตเซเชฏเชเซเชคเชฟเชเชค เชธเซเชตเชพเช เช เชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจเซ เชฎเชพเชเซ เชฐเชเชพเชฏเซเชฒ เชเซ, เชคเซ เชเช เชเซเชฎเซเชฏเซเชจเชฟเชเซเชถเชจ เชฌเชธ เช เชจเซ "เชฏเซเชจเชฟเชตเชฐเซเชธเชฒ เชกเซเชเชพ เชชเซเชฒเซเชจ" เชชเชฃ เชเซ เชเซ เชฎเซเชเชพ เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธ "เชธเชฐเซเชตเชฟเชธ เชฎเซเชถ" เชเชฐเซเชเชฟเชเซเชเซเชเชฐเซเชธ เชฎเชพเชเซ เชฐเชเชพเชฏเซเชฒ เชเซ. เชคเซเชจเซ เชฌเชจเชพเชตเชคเซ เชตเชเชคเซ, NGINX, HAProxy, เชนเชพเชฐเซเชกเชตเซเชฐ เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฐเซเชธ เช เชจเซ เชเซเชฒเชพเชเชก เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฐเซเชธ เชเซเชตเชพ เชธเชฐเซเชตเชฐเซเชธเชจเชพ เชตเชฟเชเชพเชธ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชเชญเซ เชฅเชฏเซเชฒเซ เชธเชฎเชธเซเชฏเชพเชเชจเชพ เชเชเซเชฒเซเชจเซ เชงเซเชฏเชพเชจเชฎเชพเช เชฒเซเชตเชพเชฎเชพเช เชเชตเซเชฏเชพ เชนเชคเชพ. เชฆเซเชค เชฆเชฐเซเช เชเชชเซเชฒเชฟเชเซเชถเชจ เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเซ เชเซ เช เชจเซ เชชเซเชฒเซเชเชซเซเชฐเซเชฎเชจเซ เชงเซเชฏเชพเชจเชฎเชพเช เชฒเซเชงเชพ เชตเชฟเชจเชพ เชธเชพเชฎเชพเชจเซเชฏ เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพ เชชเซเชฐเชฆเชพเชจ เชเชฐเชตเชพ เชฎเชพเชเซ เชจเซเชเชตเชฐเซเชเชจเซ เช เชฎเซเชฐเซเชค เชฌเชจเชพเชตเซ เชเซ. เชเซเชฏเชพเชฐเซ เชเชจเซเชซเซเชฐเชพเชธเซเชเซเชฐเชเซเชเชฐเชฎเชพเช เชคเชฎเชพเชฎ เชธเชฐเซเชตเชฟเชธ เชเซเชฐเชพเชซเชฟเช เชเชจเซเชตเซเชฏ เชฎเซเชถเชฎเชพเชเชฅเซ เชตเชนเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชธเชคเชค เช เชตเชฒเซเชเชจเชเซเชทเชฎเชคเชพ เชธเชพเชฅเซ เชธเชฎเชธเซเชฏเชพเชตเชพเชณเชพ เชตเชฟเชธเซเชคเชพเชฐเซเชจเซ เชเชฒเซเชชเชจเชพ เชเชฐเชตเซ, เชเชเชเชฆเชฐ เชชเซเชฐเชฆเชฐเซเชถเชจเชจเซ เชเซเชฏเซเชจ เชเชฐเชตเซเช เช เชจเซ เชเซเชเซเชเชธ เชธเซเชฅเชพเชจเชฎเชพเช เชฎเซเชเซเชฏ เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพ เชเชฎเซเชฐเชตเชพเชจเซเช เชธเชฐเชณ เชฌเชจเซ เชเซ.
เชฒเชเซเชทเชฃเซ
- เชเชเช-เชเชซ-เชชเซเชฐเซเชธเซเชธ เชเชฐเซเชเชฟเชเซเชเซเชเชฐ: เชเชจเซเชตเซเชฏ เช เชธเซเชตเชฏเช-เชธเชฎเชพเชฏเซเชฒ, เชเชเซเช-เชชเซเชฐเชฆเชฐเซเชถเชจ เชธเชฐเซเชตเชฐ เชเซ เชเซ เชฅเซเชกเซ เชฎเชพเชคเซเชฐเชพเชฎเชพเช RAM เชฒเซ เชเซ. เชคเซ เชเซเชเชชเชฃ เชเชชเซเชฒเชฟเชเซเชถเชจ เชญเชพเชทเชพ เช เชฅเชตเชพ เชซเซเชฐเซเชฎเชตเชฐเซเช เชธเชพเชฅเซ เชเซเชกเชพเชฃเชฎเชพเช เชเชพเชฐเซเชฏ เชเชฐเซ เชเซ.
- http/2 เช เชจเซ grpc เชธเชชเซเชฐเซเช: เชฆเซเชค เชชเชพเชธเซ เชซเชฐเซเชธเซเช-เชเซเชฒเชพเชธ http/2 เช เชจเซ grpc เชธเชชเซเชฐเซเช เชเชจเชเชฎเชฟเชเช เช เชจเซ เชเชเชเชเซเชเชเช เชเชจเซเชเซเชถเชจเซเชธ เชฎเชพเชเซ เชเซ. เช http/1.1 เชฅเซ http/2 เชธเซเชงเซเชจเซ เชชเชพเชฐเชฆเชฐเซเชถเช เชชเซเชฐเซเชเซเชธเซ เชเซ.
- เชเชกเชตเชพเชจเซเชธเซเชก เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเช: เชฆเซเชค เช เชฆเซเชฏเชคเชจ เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเช เชซเชฟเชเชฐเซเชธเชจเซเช เชธเชฎเชฐเซเชฅเชจ เชเชฐเซ เชเซ เชเซเชฎเชพเช เชเชเซเชฎเซเชเชฟเช เชฐเชฟเชเซเชฐเชพเชฏเซเชธ, เชเซเชเชจ เชฌเซเชฐเซเชเชฟเชเช, เชเซเชฒเซเชฌเชฒ เชฐเซเช เชฒเชฟเชฎเชฟเชเชฟเชเช, เชฐเชฟเชเซเชตเซเชธเซเช เชถเซเชกเซเชเชเช, เชฒเซเชเชฒ เชเซเชจ เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเช เชตเชเซเชฐเซเชจเซ เชธเชฎเชพเชตเซเชถ เชฅเชพเชฏ เชเซ.
- เชเชจเซเชซเชฟเชเชฐเซเชถเชจ เชฎเซเชจเซเชเชฎเซเชจเซเช API: เชฆเซเชค เชคเชฎเชพเชฐเชพ เชฐเซเชชเชฐเซเชเชพเชเชเชจเชจเซ เชเชคเชฟเชถเซเชฒ เชฐเซเชคเซ เชธเชเชเชพเชฒเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชเช เชฎเชเชฌเซเชค API เชชเซเชฐเชฆเชพเชจ เชเชฐเซ เชเซ.
- เช เชตเชฒเซเชเชจเชเซเชทเชฎเชคเชพ: L7 เชเซเชฐเชพเชซเชฟเชเชจเซ เชเชเชกเซ เช เชตเชฒเซเชเชจเชเซเชทเชฎเชคเชพ, เชตเชฟเชคเชฐเชฟเชค เชเซเชฐเซเชธเชฟเชเช เชฎเชพเชเซ เชฎเซเชณ เชเชงเชพเชฐ เช เชจเซ เชฎเซเชเชเซเชกเชฌเซ, เชกเชพเชฏเชจเชพเชฎเซเชกเชฌเซ เช เชจเซ เช เชจเซเชฏ เชเชฃเซ เชเชชเซเชฒเชฟเชเซเชถเชจเซเชจเซ เช เชตเชฒเซเชเชจเชเซเชทเชฎเชคเชพ.
เชชเชเชฒเซเช 1 - เชเชฆเชพเชนเชฐเชฃ NGINX เชฐเซเชชเชฐเซเชเชพ
เช เชธเซเชเซเชฐเชฟเชชเซเช เชเชพเชธ เชฐเชเชฟเชค เชซเชพเชเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ nginx.conf, เชจเชพ เชธเชเชชเซเชฐเซเชฃ เชเชฆเชพเชนเชฐเชฃเชจเชพ เชเชงเชพเชฐเซ
nginx เชธเซเชคเซเชฐเซเชค เชฐเซเชชเชฐเซเชเชพ
user www www;
pid /var/run/nginx.pid;
worker_processes 2;
events {
worker_connections 2000;
}
http {
gzip on;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_types text/plain;
log_format main '$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent '
'"$http_referer" "$http_user_agent" '
'"$gzip_ratio"';
log_format download '$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent '
'"$http_referer" "$http_user_agent" '
'"$http_range" "$sent_http_content_range"';
upstream targetCluster {
172.18.0.3:80;
172.18.0.4:80;
}
server {
listen 8080;
server_name one.example.com www.one.example.com;
access_log /var/log/nginx.access_log main;
error_log /var/log/nginx.error_log info;
location / {
proxy_pass http://targetCluster/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
}
NGINX เชฐเซเชชเชฐเซเชเชพเชเชเชจเซเชฎเชพเช เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชคเซเชฐเชฃ เชฎเซเชเซเชฏ เชเชเชเซ เชนเซเชฏ เชเซ:
- NGINX เชธเชฐเซเชตเชฐ, เชฒเซเช เชธเซเชเซเชฐเชเซเชเชฐ เช เชจเซ Gzip เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพเชจเซ เชเซเช เชตเซ เชฐเชนเซเชฏเซเช เชเซ. เช เชคเชฎเชพเชฎ เชเซเชธเซเชฎเชพเช เชตเซเชถเซเชตเชฟเช เชธเซเชคเชฐเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชฅเชฏเซเชฒ เชเซ.
- เชนเซเชธเซเชเชจเซ เชตเชฟเชจเชเชคเซเช เชธเซเชตเซเชเชพเชฐเชตเชพ เชฎเชพเชเซ NGINX เชจเซ เชเซเช เชตเซ เชฐเชนเซเชฏเซเช เชเซ one.example.com เชชเซเชฐเซเช 8080 เชชเชฐ.
- เชฒเชเซเชทเซเชฏ เชธเซเชฅเชพเชจ เชธเซเชฏเซเชเชฟเชค เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช, URL เชจเชพ เชตเชฟเชตเชฟเชง เชญเชพเชเซ เชฎเชพเชเซ เชเซเชฐเชพเชซเชฟเชเชจเซ เชเซเชตเซ เชฐเซเชคเซ เชนเซเชจเซเชกเชฒ เชเชฐเชตเซเช.
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชชเชฐ เชคเชฎเชพเชฎ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฒเชพเชเซ เชฅเชถเซ เชจเชนเซเช, เช เชจเซ เชคเชฎเชพเชฐเซ เชเซเชเชฒเซเช เชธเซเชเชฟเชเชเซเชธเชจเซ เชเซเช เชตเชตเชพเชจเซ เชเชฐเซเชฐ เชจเชฅเซ. เชฐเชพเชเชฆเซเชค เชชเซเชฐเซเชเซเชธเซ เชชเชพเชธเซ เชเซ เชเชพเชฐ เชฎเซเชเซเชฏ เชชเซเชฐเชเชพเชฐเซ, เชเซ เชเชจเชเซเชเชเชเชจเชเชเซเชธ เชฆเซเชตเชพเชฐเชพ เชเชซเชฐ เชเชฐเชพเชฏเซเชฒเชพ เชฎเซเชเซเชฏ เชเชจเซเชซเซเชฐเชพเชธเซเชเซเชฐเชเซเชเชฐเชจเซ เชธเชฎเชฐเซเชฅเชจ เชเชชเซ เชเซ. เชฎเซเชเซเชฏ เชเซ:
- เชถเซเชฐเซเชคเชพเช: เชคเซเช เชจเชเซเชเซ เชเชฐเซ เชเซ เชเซ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชเชจเชเชฎเชฟเชเช เชตเชฟเชจเชเชคเซเช เชเซเชตเซ เชฐเซเชคเซ เชธเซเชตเซเชเชพเชฐเซ เชเซ. เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชนเชพเชฒเชฎเชพเช เชซเชเซเชค TCP-เชเชงเชพเชฐเชฟเชค เชถเซเชฐเซเชคเชพเชเชจเซ เช เชธเชฎเชฐเซเชฅเชจ เชเชชเซ เชเซ. เชเชเชตเชพเชฐ เชเชจเซเชเซเชถเชจ เชธเซเชฅเชพเชชเชฟเชค เชฅเช เชเชพเชฏ, เชคเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชฎเชพเชเซ เชซเชฟเชฒเซเชเชฐเซเชธเชจเชพ เชธเชฎเซเชนเชฎเชพเช เชชเชธเชพเชฐ เชฅเชพเชฏ เชเซ.
- เชซเชฟเชฒเซเชเชฐเซเชธ: เชคเซเช เชชเชพเชเชชเชฒเชพเชเชจ เชเชฐเซเชเชฟเชเซเชเซเชเชฐเชจเซ เชญเชพเช เชเซ เชเซ เชเชจเชเชฎเชฟเชเช เช เชจเซ เชเชเชเชเซเชเชเช เชกเซเชเชพ เชชเชฐ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเซ เชถเชเซ เชเซ. เช เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพเชฎเชพเช Gzip เชเซเชตเชพ เชซเชฟเชฒเซเชเชฐเซเชธเชจเซ เชธเชฎเชพเชตเซเชถ เชฅเชพเชฏ เชเซ, เชเซ เชเซเชฒเชพเชฏเชเชเชจเซ เชฎเซเชเชฒเชคเชพ เชชเชนเซเชฒเชพ เชกเซเชเชพเชจเซ เชธเชเชเซเชเชฟเชค เชเชฐเซ เชเซ.
- เชฐเชพเชเชเชฐเซเชธ: เชคเซเช เชเซเชฒเชธเซเชเชฐ เชคเชฐเซเชเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค, เชเชตเชถเซเชฏเช เชเชเชคเชตเซเชฏ เชชเชฐ เชเซเชฐเชพเชซเชฟเชเชจเซ เชเชเชณ เชงเชชเชพเชตเซ เชเซ.
- เชเซเชฒเชธเซเชเชฐเซ: เชคเซเช เชเซเชฐเชพเชซเชฟเช เช เชจเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชชเชฐเชฟเชฎเชพเชฃเซ เชฎเชพเชเซ เช เชเชคเชฟเชฎ เชฌเชฟเชเชฆเซเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ.
เช เชฎเซ เช เชเชพเชฐ เชเชเชเซเชจเซ เชเชชเชฏเซเช เชเซเชเซเชเชธ NGINX เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชธเชพเชฅเซ เชฎเซเชณ เชเชฐเชตเชพ เชฎเชพเชเซ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ เชเชฐเซเชถเซเช. เชฆเซเชคเชจเซ เชงเซเชฏเซเชฏ เชเชชเซเชเช เช เชจเซ เชเชคเชฟเชถเซเชฒ เชเซเช เชตเชฃเซ เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชตเชพเชจเซ เชเซ. เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เชเชงเชพเชฐ เชฐเซเชชเชฐเซเชเชพเชเชเชจ NGINX เชฅเซ เชธเซเชฅเชฟเชฐ, เชนเชพเชฐเซเชก-เชเซเชกเซเชก เชธเซเชเชฟเชเชเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเชถเซ.
เชชเชเชฒเซเช 2 - NGINX เชฐเซเชชเชฐเซเชเชพเชเชเชจ
เชชเซเชฐเชฅเชฎ เชญเชพเช nginx.conf เชเซเชเชฒเชพเช NGINX เชเชจเซเชเชฐเชจเชฒเซเชธเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ เชเซเชจเซ เชฐเซเชชเชฐเซเชเชพเชเชเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ.
เชเชพเชฎเชฆเชพเชฐ เชเซเชกเชพเชฃเซ
เชจเซเชเซเชจเซเช เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชเชพเชฐเซเชฏเชเชฐ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเช เช เชจเซ เชเซเชกเชพเชฃเซเชจเซ เชธเชเชเซเชฏเชพ เชจเชเซเชเซ เชเชฐเซ เชเซ. เช เชธเซเชเชตเซ เชเซ เชเซ เชฎเชพเชเชเชจเซ เชชเชนเซเชเชเซ เชตเชณเชตเชพ เชฎเชพเชเซ NGINX เชเซเชตเซ เชฐเซเชคเซ เชธเซเชเซเชฒ เชเชฐเชถเซ.
worker_processes 2;
events {
worker_connections 2000;
}
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชตเชฐเซเชเชซเซเชฒเซ เช เชจเซ เชเชจเซเชเซเชถเชจเชจเซ เช เชฒเช เช เชฒเช เชฐเซเชคเซ เชฎเซเชจเซเช เชเชฐเซ เชเซ.
เชฆเซเชค เชธเชฟเชธเซเชเชฎ เชชเชฐเชจเชพ เชฆเชฐเซเช เชนเชพเชฐเซเชกเชตเซเชฐ เชฅเซเชฐเซเชก เชฎเชพเชเซ เชตเชฐเซเชเชฐ เชฅเซเชฐเซเชก เชฌเชจเชพเชตเซ เชเซ. เชฆเชฐเซเช เชตเชฐเซเชเชฐ เชฅเซเชฐเซเชก เชฌเชฟเชจ-เช เชตเชฐเซเชงเชฟเชค เชเชตเซเชจเซเช เชฒเซเชช เชเชฒเชพเชตเซ เชเซ เชเซ เชฎเชพเชเซ เชเชตเชพเชฌเชฆเชพเชฐ เชเซ
- เชฆเชฐเซเช เชถเซเชฐเซเชคเชพเชจเซ เชตเชพเชค เชธเชพเชเชญเชณเชตเซ
- เชจเชตเชพ เชเซเชกเชพเชฃเซ เชธเซเชตเซเชเชพเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช
- เชเชจเซเชเซเชถเชจ เชฎเชพเชเซ เชซเชฟเชฒเซเชเชฐเซเชธเชจเซ เชธเชฎเซเชน เชฌเชจเชพเชตเชตเซ
- เชเชจเซเชเซเชถเชจเชจเชพ เชเซเชตเชจเชเชพเชณ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชคเชฎเชพเชฎ I/O เชเชพเชฎเชเซเชฐเซเชจเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเซ.
เชเชเชณเชจเซ เชคเชฎเชพเชฎ เชเชจเซเชเซเชถเชจ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชจเซ เชตเชฐเซเชเชฐ เชฅเซเชฐเซเชกเชฎเชพเช เชธเชเชชเซเชฐเซเชฃเชชเชฃเซ เชนเซเชจเซเชกเชฒ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชเซเชฎเชพเช เชเซเชเชชเชฃ เชซเซเชฐเชตเชฐเซเชกเชฟเชเช เชตเชฐเซเชคเชจเชจเซ เชธเชฎเชพเชตเซเชถ เชฅเชพเชฏ เชเซ.
เชเชจเซเชตเซเชฏเชฎเชพเช เชฆเชฐเซเช เชตเชฐเซเชเชฐ เชฅเซเชฐเซเชก เชฎเชพเชเซ, เชเชจเซเชเซเชถเชจ เชชเซเชฒ เชเซ. เชคเซเชฅเซ HTTP/2 เชเชจเซเชเซเชถเชจ เชชเซเชฒ เชเช เชธเชฎเชฏเซ เชฌเชพเชนเซเชฏ เชนเซเชธเซเช เชฆเซเช เชฎเชพเชคเซเชฐ เชเช เชเชจเซเชเซเชถเชจ เชธเซเชฅเชพเชชเชฟเชค เชเชฐเซ เชเซ, เชเซ เชเชพเชฐ เชตเชฐเซเชเชฐ เชฅเซเชฐเซเชกเซ เชนเซเชฏ เชคเซ เชธเซเชฅเชฟเชฐ เชธเซเชฅเชฟเชคเชฟเชฎเชพเช เชฌเชพเชนเซเชฏ เชนเซเชธเซเช เชฆเซเช เชเชพเชฐ HTTP/2 เชเชจเซเชเซเชถเชจ เชนเชถเซ. เชฆเชฐเซเช เชตเชธเซเชคเซเชจเซ เชธเชฟเชเชเชฒ เชตเชฐเซเชเชฐ เชฅเซเชฐเซเชกเชฎเชพเช เชฐเชพเชเซเชจเซ, เชฒเชเชญเช เชคเชฎเชพเชฎ เชเซเชก เชฌเซเชฒเซเช เชเชฐเซเชฏเชพ เชตเชฟเชจเชพ เชฒเชเซ เชถเชเชพเชฏ เชเซ, เชเชพเชฃเซ เชเซ เชคเซ เชธเชฟเชเชเชฒ เชฅเซเชฐเซเชกเซเชก เชนเซเชฏ. เชเซ เชเชฐเซเชฐเซ เชเชฐเชคเชพเช เชตเชงเซ เชตเชฐเซเชเชฐ เชฅเซเชฐเซเชกเซเชจเซ เชซเชพเชณเชตเชฃเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ, เชคเซ เชเชจเชพเชฅเซ เชฎเซเชฎเชฐเซเชจเซ เชตเซเชฏเชฏ เชฅเช เชถเชเซ เชเซ, เชฎเซเชเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชจเชฟเชทเซเชเซเชฐเชฟเชฏ เชเชจเซเชเซเชถเชจเซเชธเชจเซเช เชจเชฟเชฐเซเชฎเชพเชฃ เชฅเช เชถเชเซ เชเซ, เช เชจเซ เชชเซเชฒเชฎเชพเช เชชเชพเชเชพ เชซเชฐเชคเชพ เชเซเชกเชพเชฃเซเชจเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชเชเชพเชกเซ เชฅเช เชถเชเซ เชเซ.
เชตเชงเซ เชฎเชพเชนเชฟเชคเซ เชฎเชพเชเซ เชฎเซเชฒเชพเชเชพเชค เชฒเซ
HTTP เชฐเซเชชเชฐเซเชเชพเชเชเชจ
เชจเซเชเซเชจเชพ NGINX เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฌเซเชฒเซเช HTTP เชธเซเชเชฟเชเชเซเชธเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ เชเซเชฎ เชเซ:
- เชเชฏเชพ เชฎเชพเชเชฎ เชชเซเชฐเชเชพเชฐเซ เชธเชชเซเชฐเซเชเซเชก เชเซ
- เชกเชฟเชซเซเชฒเซเช เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ
- Gzip เชฐเซเชชเชฐเซเชเชพเชเชเชจ
เชคเชฎเซ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซเชฎเชพเช เชซเชฟเชฒเซเชเชฐเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เช เชชเชพเชธเชพเชเชจเซ เชเชธเซเชเชฎเชพเชเช เชเชฐเซ เชถเชเซ เชเซ, เชเซเชจเซ เช เชฎเซ เชชเชเซเชฅเซ เชเชฐเซเชเชพ เชเชฐเซเชถเซเช.
เชชเชเชฒเซเช 3 - เชธเชฐเซเชตเชฐ เชฐเซเชชเชฐเซเชเชพเชเชเชจ
HTTP เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฌเซเชฒเซเชเชฎเชพเช, NGINX เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชชเซเชฐเซเช 8080 เชชเชฐ เชธเชพเชเชญเชณเชตเชพ เช เชจเซ เชกเซเชฎเซเชจเซเชธ เชฎเชพเชเซ เชเชตเชจเชพเชฐเซ เชตเชฟเชจเชเชคเซเชเชจเซ เชเชตเชพเชฌ เชเชชเชตเชพเชจเซ เชเชฒเซเชฒเซเช เชเชฐเซ เชเซ. one.example.com ะธ www.one.example.com.
server {
listen 8080;
server_name one.example.com www.one.example.com;
เชฆเซเชคเชจเซ เช เชเชฆเชฐ, เชคเซ เชถเซเชฐเซเชคเชพเช เชฆเซเชตเชพเชฐเชพ เชจเชฟเชฏเชเชคเซเชฐเชฟเชค เชฅเชพเชฏ เชเซ.
เชฆเซเชค เชถเซเชฐเซเชคเชพเช
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชธเชพเชฅเซ เชชเซเชฐเชพเชฐเชเชญ เชเชฐเชตเชพเชจเซเช เชธเซเชฅเซ เชฎเชนเชคเซเชตเชจเซเช เชชเชพเชธเซเช เชคเชฎเชพเชฐเชพ เชถเซเชฐเซเชคเชพเชเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชจเซเช เชเซ. เชคเชฎเชพเชฐเซ เชเช เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชซเชพเชเชฒ เชฌเชจเชพเชตเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ เชเซ เชตเชฐเซเชฃเชตเซ เชเซ เชเซ เชคเชฎเซ เชเชจเซเชตเซเชฏ เชเชจเซเชธเซเชเชจเซเชธ เชเซเชตเซ เชฐเซเชคเซ เชเชฒเชพเชตเชตเชพ เชฎเชพเชเชเซ เชเซ.
เชจเซเชเซเชจเซ เชธเซเชจเชฟเชชเซเช เชเช เชจเชตเซ เชถเซเชฐเซเชคเชพ เชฌเชจเชพเชตเชถเซ เช เชจเซ เชคเซเชจเซ เชชเซเชฐเซเช 8080 เชธเชพเชฅเซ เชเซเชกเชถเซ. เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซเชจเซ เชเชนเซ เชเซ เชเซ เชคเซเชจเซ เชเชตเชจเชพเชฐเซ เชตเชฟเชจเชเชคเซเช เชฎเชพเชเซ เชเชฏเชพ เชชเซเชฐเซเช เชธเชพเชฅเซ เชเซเชกเชตเซเช เชเซเชเช.
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชคเซเชจเซ เชเซเช เชตเชฃเซ เชฎเชพเชเซ YAML เชจเซเชเซเชถเชจเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ. เช เชจเซเชเซเชถเชจเชจเชพ เชชเชฐเชฟเชเชฏ เชฎเชพเชเซ, เช
เชนเซเช เชเซเช
Copy to Editorstatic_resources:
listeners:
- name: listener_0
address:
socket_address: { address: 0.0.0.0, port_value: 8080 }
เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชจเชฅเซ เชธเชฐเซเชตเชฐ_เชจเชพเชฎ, เชเชพเชฐเชฃ เชเซ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชซเชฟเชฒเซเชเชฐเซเชธ เชเชจเซ เชนเซเชจเซเชกเชฒ เชเชฐเชถเซ.
เชชเชเชฒเซเช 4 - เชธเซเชฅเชพเชจ เชฐเซเชชเชฐเซเชเชพเชเชเชจ
เชเซเชฏเชพเชฐเซ NGINX เชฎเชพเช เชตเชฟเชจเชเชคเซ เชเชตเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชธเซเชฅเชพเชจ เชฌเซเชฒเซเช เชจเชเซเชเซ เชเชฐเซ เชเซ เชเซ เชเซเชตเซ เชฐเซเชคเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเชตเซ เช เชจเซ เชเซเชฐเชพเชซเชฟเชเชจเซ เชเซเชฏเชพเช เชฐเซเช เชเชฐเชตเซ. เชจเซเชเซเชจเชพ เชเซเชเชกเชพเชฎเชพเช, เชธเชพเชเช เชชเชฐเชจเซ เชคเชฎเชพเชฎ เชเซเชฐเชพเชซเชฟเช เช เชชเชธเซเชเซเชฐเซเชฎ (เช เชจเซเชตเชพเชฆเชเชจเซ เชจเซเชเชง: เช เชชเชธเซเชเซเชฐเซเชฎ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชธเชฐเซเชตเชฐ เชเซ) เชจเชพเชฎเชจเชพ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชธเซเชฅเชพเชจเชพเชเชคเชฐเชฟเชค เชฅเชพเชฏ เชเซ. เชฒเชเซเชทเซเชฏ เชเซเชฒเชธเซเชเชฐ. เช เชชเชธเซเชเซเชฐเซเชฎ เชเซเชฒเชธเซเชเชฐ เชจเซเชกเซเชธเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ เชเซ เชตเชฟเชจเชเชคเซ เชชเชฐ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเชตเซ เชเซเชเช. เช เชฎเซ เชเชเชณเชจเชพ เชชเชเชฒเชพเชฎเชพเช เชเชจเซ เชเชฐเซเชเชพ เชเชฐเซเชถเซเช.
location / {
proxy_pass http://targetCluster/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
เชฆเซเชค เชชเชฐ, เชซเชฟเชฒเซเชเชฐเซเชธ เช เชเชฐเซ เชเซ.
เชฆเซเชค เชซเชฟเชฒเซเชเชฐเซเชธ
เชธเซเชฅเชฟเชฐ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฎเชพเชเซ, เชซเชฟเชฒเซเชเชฐเซเชธ เชเชจเชเชฎเชฟเชเช เชตเชฟเชจเชเชคเซเช เชชเชฐ เชเซเชตเซ เชฐเซเชคเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเชตเซ เชคเซ เชจเชเซเชเซ เชเชฐเซ เชเซ. เช เชเชฟเชธเซเชธเชพเชฎเชพเช เช เชฎเซ เชซเชฟเชฒเซเชเชฐเซเชธ เชธเซเช เชเชฐเซเช เชเซเช เชเซ เชฎเซเช เชเชฐเซ เชเซ เชธเชฐเซเชตเชฐ_เชจเชพเชฎเซ เชชเชพเชเชฒเชพ เชชเชเชฒเชพเชฎเชพเช. เชเซเชฏเชพเชฐเซ เชเชจเชเชฎเชฟเชเช เชตเชฟเชจเชเชคเซเช เชเชตเซ เชเซ เชเซ เชเซเชเซเชเชธ เชกเซเชฎเซเชจเซเชธ เช เชจเซ เชฐเซเชเซเชธ เชธเชพเชฅเซ เชฎเซเชณ เชเชพเชคเซ เชนเซเชฏ เชเซ, เชคเซเชฏเชพเชฐเซ เชเซเชฐเชพเชซเชฟเชเชจเซ เชเซเชฒเชธเซเชเชฐ เชคเชฐเชซ เชฐเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เช NGINX เชฌเซเชเชฎ-เช เชช เชเชจเซเชซเชฟเชเชฐเซเชถเชจเชจเซ เชธเชฎเชเชเซเชท เชเซ.
Copy to Editor filter_chains:
- filters:
- name: envoy.http_connection_manager
config:
codec_type: auto
stat_prefix: ingress_http
route_config:
name: local_route
virtual_hosts:
- name: backend
domains:
- "one.example.com"
- "www.one.example.com"
routes:
- match:
prefix: "/"
route:
cluster: targetCluster
http_filters:
- name: envoy.router
เชเชฎเชพ envoy.http_connection_manager เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซเชฎเชพเช เชฌเชฟเชฒเซเช-เชเชจ เชซเชฟเชฒเซเชเชฐ เชเซ. เช
เชจเซเชฏ เชซเชฟเชฒเซเชเชฐเซเชธเชจเซ เชธเชฎเชพเชตเซเชถ เชฅเชพเชฏ เชเซ Redis, เชฎเซเชเซ, เชเซเชธเซเชชเซ. เชคเชฎเซ เชธเชเชชเซเชฐเซเชฃ เชธเซเชเชฟ เช
เชนเซเช เชฎเซเชณเชตเซ เชถเชเซ เชเซ
เช
เชจเซเชฏ เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเช เชจเซเชคเชฟเช เชตเชฟเชถเซ เชตเชงเซ เชฎเชพเชนเชฟเชคเซ เชฎเชพเชเซ, เชฎเซเชฒเชพเชเชพเชค เชฒเซ
เชชเชเชฒเซเช 5 - เชชเซเชฐเซเชเซเชธเซ เช เชจเซ เช เชชเชธเซเชเซเชฐเซเชฎ เชฐเซเชชเชฐเซเชเชพเชเชเชจ
NGINX เชฎเชพเช, เช เชชเชธเซเชเซเชฐเซเชฎ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฒเชเซเชทเซเชฏ เชธเชฐเซเชตเชฐเซเชธเชจเชพ เชธเชฎเซเชนเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ เชเซ เชเซเชฐเชพเชซเชฟเช เชชเชฐ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเชถเซ. เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เชฌเซ เชเซเชฒเชธเซเชเชฐ เชธเซเชเชชเชตเชพเชฎเชพเช เชเชตเซเชฏเชพ เชนเชคเชพ.
upstream targetCluster {
172.18.0.3:80;
172.18.0.4:80;
}
เชเชจเซเชตเซเชฏเชฎเชพเช, เช เชเซเชฒเชธเซเชเชฐเซ เชฆเซเชตเชพเชฐเชพ เชธเชเชเชพเชฒเชฟเชค เชฅเชพเชฏ เชเซ.
เชฆเซเชค เชเซเชฒเชธเซเชเชฐเซ
เช เชชเชธเซเชเซเชฐเซเชฎ เชธเชฎเชเชเซเชทเชจเซ เชเซเชฒเชธเซเชเชฐ เชคเชฐเซเชเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เชเซ เชฏเชเชฎเชพเชจเซ เชเซเชฐเชพเชซเชฟเชเชจเซ เชธเซเชตเชพ เชเชชเชถเซ เชคเซเชฎเชจเซ เชเชณเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เชฏเชเชฎเชพเชจเซ เชเซ เชฐเซเชคเซ เชเชเซเชธเซเชธ เชฅเชพเชฏ เชเซ, เชเซเชฎ เชเซ เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ, เชเซเชฒเชธเซเชเชฐ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชคเชฐเซเชเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชฅเชฏเซเชฒ เชเซ. เช เชฒเซเชเชจเซเชธเซ เช เชจเซ เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเช เชเซเชตเชพ เชชเชพเชธเชพเช เชชเชฐ เชตเชงเซ เชฆเชพเชฃเชพเชฆเชพเชฐ เชจเชฟเชฏเชเชคเซเชฐเชฃ เชฎเชพเชเซ เชชเชฐเชตเชพเชจเชเซ เชเชชเซ เชเซ.
Copy to Editor clusters:
- name: targetCluster
connect_timeout: 0.25s
type: STRICT_DNS
dns_lookup_family: V4_ONLY
lb_policy: ROUND_ROBIN
hosts: [
{ socket_address: { address: 172.18.0.3, port_value: 80 }},
{ socket_address: { address: 172.18.0.4, port_value: 80 }}
]
เชธเซเชตเชพ เชถเซเชงเชจเซ เชเชชเชฏเซเช เชเชฐเชคเซ เชตเชเชคเซ STRICT_DNS เชฆเซเชค เชจเชฟเชฐเซเชฆเชฟเชทเซเช DNS เชฒเชเซเชทเซเชฏเชพเชเชเซเชจเซ เชธเชคเชค เช เชจเซ เช เชธเซเชฎเซเชณ เชฐเซเชคเซ เชเชเซเชฒเชถเซ. DNS เชชเชฐเชฟเชฃเชพเชฎเชฎเชพเชเชฅเซ เชฆเชฐเซเช เชชเชฐเชค เชเชฐเชพเชฏเซเชฒ IP เชธเชฐเชจเชพเชฎเซเช เช เชชเชธเซเชเซเชฐเซเชฎ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชธเซเชชเชทเซเช เชนเซเชธเซเช เชคเชฐเซเชเซ เชเชฃเชตเชพเชฎเชพเช เชเชตเชถเซ. เชเชจเซ เช เชฐเซเชฅ เช เชเซ เชเซ เชเซ เชตเชฟเชจเชเชคเซ เชฌเซ IP เชธเชฐเชจเชพเชฎเชพเช เชชเชฐเชค เชเชฐเซ เชเซ, เชคเซ เชฆเซเชค เชงเชพเชฐเซ เชเซ เชเซ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชฌเซ เชนเซเชธเซเช เชเซ, เช เชจเซ เชฌเชเชจเซ เชฒเซเชก เชธเชเชคเซเชฒเชฟเชค เชนเซเชตเชพ เชเซเชเช. เชเซ เชชเชฐเชฟเชฃเชพเชฎเชฎเชพเชเชฅเซ เชเซเช เชฏเชเชฎเชพเชจเชจเซ เชฆเซเชฐ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ, เชคเซ เชฐเชพเชเชฆเซเชค เชฎเชพเชจเซ เชฒเซเชถเซ เชเซ เชคเซ เชนเชตเซ เช เชธเซเชคเชฟเชคเซเชตเชฎเชพเช เชจเชฅเซ เช เชจเซ เชเซเชเชชเชฃ เชนเชพเชฒเชจเชพ เชเชจเซเชเซเชถเชจ เชชเซเชฒเชฎเชพเชเชฅเซ เชเซเชฐเชพเชซเชฟเช เชเซเชเชเซ เชฒเซเชถเซ.
เชตเชงเซ เชฎเชพเชนเชฟเชคเซ เชฎเชพเชเซ เชเซเช
เชชเชเชฒเซเช 6 - เชฒเซเช เชเชเซเชธเซเชธ เช เชจเซ เชญเซเชฒเซ
เช เชเชคเชฟเชฎ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชจเซเชเชงเชฃเซ เชเซ. เชเชฐเชฐ เชฒเซเชเซเชธเชจเซ เชกเชฟเชธเซเช เชชเชฐ เชงเชเซเชฒเชตเชพเชจเซ เชฌเชฆเชฒเซ, เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชเซเชฒเชพเชเชก-เชเชงเชพเชฐเชฟเชค เช เชญเชฟเชเชฎ เช เชชเชจเชพเชตเซ เชเซ. เชฌเชงเชพ เชเชชเซเชฒเชฟเชเซเชถเชจ เชฒเซเชเซเชธ เชเชเชเชชเซเช เชเซ stdout ะธ stderr.
เชเซเชฏเชพเชฐเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเช เชตเชฟเชจเชเชคเซ เชเชฐเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชเชเซเชธเซเชธ เชฒเซเชเซเชธ เชตเซเชเชฒเซเชชเชฟเช เชนเซเชฏ เชเซ เช เชจเซ เชกเชฟเชซเซเชฒเซเช เชฐเซเชชเซ เช เชเซเชทเชฎ เชนเซเชฏ เชเซ. HTTP เชตเชฟเชจเชเชคเซเช เชฎเชพเชเซ เชเชเซเชธเซเชธ เชฒเซเชเชจเซ เชธเชเซเชทเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ, เชฐเซเชชเชฐเซเชเชพเชเชเชจเชจเซ เชธเชเซเชทเชฎ เชเชฐเซ เชเชเซเชธเซเชธ_เชฒเซเช HTTP เชเชจเซเชเซเชถเชจ เชฎเซเชจเซเชเชฐ เชฎเชพเชเซ. เชชเชพเชฅ เชเชพเช เชคเซ เชเชชเชเชฐเชฃ เชนเซเช เชถเชเซ เชเซ เชเซเชฎ เชเซ stdout, เช เชฅเชตเชพ เชคเชฎเชพเชฐเซ เชเชฐเซเชฐเชฟเชฏเชพเชคเซเชจเซ เชเชงเชพเชฐเซ เชกเชฟเชธเซเช เชชเชฐเชจเซ เชซเชพเชเชฒ.
เชจเซเชเซเชจเซเช เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชคเชฎเชพเชฎ เชเชเซเชธเซเชธ เชฒเซเชเชจเซ เชฐเซเชกเชพเชฏเชฐเซเชเซเช เชเชฐเชถเซ stdout (เช เชจเซเชตเชพเชฆเชเชจเซ เชจเซเชเชง - เชกเซเชเชฐเชจเซ เช เชเชฆเชฐ เชฆเซเชคเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพ เชฎเชพเชเซ stdout เชเชฐเซเชฐเซ เชเซ. เชเซ เชกเซเชเชฐ เชตเชฟเชจเชพ เชตเชชเชฐเชพเชฏ เชเซ, เชคเซ เชชเชเซ /dev/stdout เชจเซ เชจเชฟเชฏเชฎเชฟเชค เชฒเซเช เชซเชพเชเชฒเชจเชพ เชชเชพเชฅ เชธเชพเชฅเซ เชฌเชฆเชฒเซ). เชเชจเซเชเซเชถเชจ เชฎเซเชจเซเชเชฐ เชฎเชพเชเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชตเชฟเชญเชพเชเชฎเชพเช เชธเซเชจเชฟเชชเซเชเชจเซ เชจเชเชฒ เชเชฐเซ:
Copy to Clipboardaccess_log:
- name: envoy.file_access_log
config:
path: "/dev/stdout"
เชชเชฐเชฟเชฃเชพเชฎเซ เชเชจเชพ เชเซเชตเชพ เชฆเซเชเชพเชตเชพ เชเซเชเช:
- name: envoy.http_connection_manager
config:
codec_type: auto
stat_prefix: ingress_http
access_log:
- name: envoy.file_access_log
config:
path: "/dev/stdout"
route_config:
เชกเชฟเชซเซเชฒเซเช เชฐเซเชชเซ, เชฆเซเชค เชชเชพเชธเซ เชเช เชซเซเชฐเซเชฎเซเช เชธเซเชเซเชฐเชฟเชเช เชเซ เชเซเชฎเชพเช HTTP เชตเชฟเชจเชเชคเซเชจเซ เชตเชฟเชเชคเซ เชถเชพเชฎเซเชฒ เชเซ:
[%START_TIME%] "%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% "%REQ(X-FORWARDED-FOR)%" "%REQ(USER-AGENT)%" "%REQ(X-REQUEST-ID)%" "%REQ(:AUTHORITY)%" "%UPSTREAM_HOST%"n
เช เชซเซเชฐเซเชฎเซเช เชธเซเชเซเชฐเชฟเชเชเชจเซเช เชชเชฐเชฟเชฃเชพเชฎ เชเซ:
[2018-11-23T04:51:00.281Z] "GET / HTTP/1.1" 200 - 0 58 4 1 "-" "curl/7.47.0" "f21ebd42-6770-4aa5-88d4-e56118165a7d" "one.example.com" "172.18.0.4:80"
เชซเซเชฐเซเชฎเซเช เชซเซเชฒเซเชก เชธเซเช เชเชฐเซเชจเซ เชเชเชเชชเซเช เชธเชพเชฎเชเซเชฐเซเชจเซ เชเชธเซเชเชฎเชพเชเช เชเชฐเซ เชถเชเชพเชฏ เชเซ. เชฆเชพเชเซเชฒเชพ เชคเชฐเซเชเซ:
access_log:
- name: envoy.file_access_log
config:
path: "/dev/stdout"
format: "[%START_TIME%] "%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%" %RESPONSE_CODE% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% "%REQ(X-REQUEST-ID)%" "%REQ(:AUTHORITY)%" "%UPSTREAM_HOST%"n"
เชซเซเชฒเซเชก เชธเซเช เชเชฐเซเชจเซ เชฒเซเช เชฒเชพเชเชจ JSON เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชเชเชเชชเซเช เชชเชฃ เชฅเช เชถเชเซ เชเซ json_format. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ:
access_log:
- name: envoy.file_access_log
config:
path: "/dev/stdout"
json_format: {"protocol": "%PROTOCOL%", "duration": "%DURATION%", "request_method": "%REQ(:METHOD)%"}
เชฆเซเชค เชจเซเชเชงเชฃเซ เชชเชฆเซเชงเชคเชฟ เชตเชฟเชถเซ เชตเชงเซ เชฎเชพเชนเชฟเชคเซ เชฎเชพเชเซ, เชฎเซเชฒเชพเชเชพเชค เชฒเซ
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชตเชพเชจเซ เชธเชฎเช เชฎเซเชณเชตเชตเชพเชจเซ เชเชเชฎเชพเชคเซเชฐ เชฐเชธเซเชคเซ เชฒเซเชเชฟเชเช เชจเชฅเซ. เชคเซเชฎเชพเช เช
เชฆเซเชฏเชคเชจ เชเซเชฐเซเชธเซเชเช เช
เชจเซ เชฎเซเชเซเชฐเชฟเชเซเชธ เชเซเชทเชฎเชคเชพเช เชฌเชฟเชฒเซเช เชเซ. เชคเชฎเซ เช
เชนเซเช เชตเชงเซ เชเชพเชฃเซ เชถเชเซ เชเซ
เชชเชเชฒเซเช 7 - เชฒเซเชเช เชเชฐเซ
เชคเชฎเซ เชนเชตเซ เชคเชฎเชพเชฐเซเช เชฐเซเชชเชฐเซเชเชพเชเชเชจ NGINX เชฅเซ Envoy Proxy เชฎเชพเช เชธเซเชฅเชพเชจเชพเชเชคเชฐเชฟเชค เชเชฐเซเชฏเซเช เชเซ. เชเซเชฒเซเชฒเซเช เชชเชเชฒเซเช เช เชเชเชพเชธเชตเชพ เชฎเชพเชเซ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชฆเชพเชเชฒเซ เชถเชฐเซ เชเชฐเชตเชพเชจเซเช เชเซ.
เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชคเชฐเซเชเซ เชเชฒเชพเชตเซ
NGINX เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฐเซเชเชพเชจเซ เชเซเช เชชเชฐ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ www www; เชธเซเชฐเชเซเชทเชพ เชธเซเชงเชพเชฐเชตเชพ เชฎเชพเชเซ NGINX เชจเซ เชเชเชพ เชตเชฟเชถเซเชทเชพเชงเชฟเชเซเชค เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชคเชฐเซเชเซ เชเชฒเชพเชตเชตเชพเชจเซ เชเชฒเซเชฒเซเช เชเชฐเซ เชเซ.
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชจเซ เชฎเชพเชฒเชฟเชเซ เชเซเชฃ เชเซ เชคเซเชจเซเช เชธเชเชเชพเชฒเชจ เชเชฐเชตเชพ เชฎเชพเชเซ เชเซเชฒเชพเชเชก-เชเชงเชพเชฐเชฟเชค เช เชญเชฟเชเชฎ เช เชชเชจเชพเชตเซ เชเซ. เชเซเชฏเชพเชฐเซ เช เชฎเซ เชเชจเซเชเซเชจเชฐ เชฆเซเชตเชพเชฐเชพ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชเชฒเชพเชตเซเช เชเซเช, เชคเซเชฏเชพเชฐเซ เช เชฎเซ เชเชเชพ เชตเชฟเชถเซเชทเชพเชงเชฟเชเซเชค เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชจเซ เชเชฒเซเชฒเซเช เชเชฐเซ เชถเชเซเช เชเซเช.
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชฒเซเชจเซเช เชเชฐเซ เชฐเชนเซเชฏเซเช เชเซ
เชจเซเชเซเชจเซ เชเชฆเซเชถ เชนเซเชธเซเช เชชเชฐ เชกเซเชเชฐ เชเชจเซเชเซเชจเชฐ เชฆเซเชตเชพเชฐเชพ เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซเชจเซ เชเชฒเชพเชตเชถเซ. เช เชเชฆเซเชถ เชเชจเซเชตเซเชฏเชจเซ เชชเซเชฐเซเช 80 เชชเชฐ เชเชตเชจเชพเชฐเซ เชตเชฟเชจเชเชคเซเช เชธเชพเชเชญเชณเชตเชพเชจเซ เชเซเชทเชฎเชคเชพ เชเชชเซ เชเซ. เชเซ เชเซ, เชฒเชฟเชธเชจเชฐ เชฐเซเชชเชฐเซเชเชพเชเชเชจเชฎเชพเช เชธเซเชชเชทเซเช เชเชฐเซเชฏเชพ เชฎเซเชเชฌ, เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชชเซเชฐเซเช 8080 เชชเชฐ เชเชตเชจเชพเชฐเชพ เชเซเชฐเชพเชซเชฟเชเชจเซ เชธเชพเชเชญเชณเซ เชเซ. เช เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชจเซ เชเชเชพ เชตเชฟเชถเซเชทเชพเชงเชฟเชเซเชค เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชคเชฐเซเชเซ เชเชฒเชพเชตเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ.
docker run --name proxy1 -p 80:8080 --user 1000:1000 -v /root/envoy.yaml:/etc/envoy/envoy.yaml envoyproxy/envoy
เชชเชฐเซเชเซเชทเชฃ
เชชเซเชฐเซเชเซเชธเซ เชเชพเชฒเซ เชนเซเชตเชพเชฅเซ, เชนเชตเซ เชชเชฐเซเชเซเชทเชฃเซ เชเชฐเซ เชถเชเชพเชฏ เชเซ เช เชจเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเซ เชถเชเชพเชฏ เชเซ. เชจเซเชเซเชจเซ cURL เชเชฆเซเชถ เชชเซเชฐเซเชเซเชธเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจเชฎเชพเช เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชนเซเชธเซเช เชนเซเชกเชฐ เชธเชพเชฅเซ เชตเชฟเชจเชเชคเซ เชเชฐเซ เชเซ.
curl -H "Host: one.example.com" localhost -i
HTTP เชตเชฟเชจเชเชคเซ เชญเซเชฒเชฎเชพเช เชชเชฐเชฟเชฃเชฎเชถเซ 503. เช เชเชเชฒเชพ เชฎเชพเชเซ เชเซ เชเชพเชฐเชฃ เชเซ เช เชชเชธเซเชเซเชฐเซเชฎ เชเซเชกเชพเชฃเซ เชเชพเชฎ เชเชฐเซ เชฐเชนเซเชฏเชพเช เชจเชฅเซ เช เชจเซ เชเชชเชฒเชฌเซเชง เชจเชฅเซ. เชคเซเชฅเซ, เชฆเซเชค เชชเซเชฐเซเชเซเชธเซ เชชเชพเชธเซ เชตเชฟเชจเชเชคเซ เชฎเชพเชเซ เชเซเช เชเชชเชฒเชฌเซเชง เชเชเชคเชตเซเชฏ เชจเชฅเซ. เชจเซเชเซเชจเซ เชเชฆเซเชถ HTTP เชธเซเชตเชพเชเชจเซ เชถเซเชฐเซเชฃเซ เชถเชฐเซ เชเชฐเชถเซ เชเซ เชเชจเซเชตเซเชฏ เชฎเชพเชเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชธเชพเชฅเซ เชฎเซเชณ เชเชพเชฏ เชเซ.
docker run -d katacoda/docker-http-server; docker run -d katacoda/docker-http-server;
เชเชชเชฒเชฌเซเชง เชธเซเชตเชพเช เชธเชพเชฅเซ, เชฆเซเชค เชธเชซเชณเชคเชพเชชเซเชฐเซเชตเช เชคเซเชจเชพ เชเชเชคเชตเซเชฏ เชธเซเชงเซ เชเซเชฐเชพเชซเชฟเชเชจเซ เชชเซเชฐเซเชเซเชธเซ เชเชฐเซ เชถเชเซ เชเซ.
curl -H "Host: one.example.com" localhost -i
เชคเชฎเชพเชฐเซ เชเช เชชเซเชฐเชคเชฟเชธเชพเชฆ เชเซเชตเซ เชเซเชเช เชเซ เชฆเชฐเซเชถเชพเชตเซ เชเซ เชเซ เชเชฏเชพ เชกเซเชเชฐ เชเชจเซเชเซเชจเชฐเช เชตเชฟเชจเชเชคเซ เชชเชฐ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเซ เชเซ. เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชฒเซเชเชฎเชพเช เชคเชฎเชพเชฐเซ เชเชเซเชธเซเชธ เชธเซเชเซเชฐเชฟเชเช เชเชเชเชชเซเช เชชเชฃ เชเซเชตเซเช เชเซเชเช.
เชตเชงเชพเชฐเชพเชจเชพ HTTP เชชเซเชฐเชคเชฟเชญเชพเชต เชนเซเชกเชฐเซ
เชคเชฎเซ เชตเชพเชธเซเชคเชตเชฟเช เชตเชฟเชจเชเชคเซเชจเชพ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชนเซเชกเชฐเชฎเชพเช เชตเชงเชพเชฐเชพเชจเชพ HTTP เชนเซเชกเชฐเซ เชเซเชถเซ. เชนเซเชกเชฐ เช เชชเชธเซเชเซเชฐเซเชฎ เชนเซเชธเซเชเซ เชตเชฟเชจเชเชคเซเชจเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชฐเชตเชพเชฎเชพเช เชตเชฟเชคเชพเชตเซเชฒเซ เชธเชฎเชฏ เชฆเชฐเซเชถเชพเชตเซ เชเซ. เชฎเชฟเชฒเชฟเชธเซเชเชเชกเชฎเชพเช เชตเซเชฏเชเซเชค. เชเซ เชเซเชฒเชพเชฏเชเช เชจเซเชเชตเชฐเซเช เชฒเซเชเชจเซเชธเซเชจเซ เชคเซเชฒเชจเชพเชฎเชพเช เชธเซเชตเชพเชจเซ เชธเชฎเชฏ เชจเชเซเชเซ เชเชฐเชตเชพ เชฎเชพเชเชเซ เชคเซ เช เชเชชเชฏเซเชเซ เชเซ.
x-envoy-upstream-service-time: 0
server: envoy
เช เชเชคเชฟเชฎ เชฐเซเชชเชฐเซเชเชพ
static_resources:
listeners:
- name: listener_0
address:
socket_address: { address: 0.0.0.0, port_value: 8080 }
filter_chains:
- filters:
- name: envoy.http_connection_manager
config:
codec_type: auto
stat_prefix: ingress_http
route_config:
name: local_route
virtual_hosts:
- name: backend
domains:
- "one.example.com"
- "www.one.example.com"
routes:
- match:
prefix: "/"
route:
cluster: targetCluster
http_filters:
- name: envoy.router
clusters:
- name: targetCluster
connect_timeout: 0.25s
type: STRICT_DNS
dns_lookup_family: V4_ONLY
lb_policy: ROUND_ROBIN
hosts: [
{ socket_address: { address: 172.18.0.3, port_value: 80 }},
{ socket_address: { address: 172.18.0.4, port_value: 80 }}
]
admin:
access_log_path: /tmp/admin_access.log
address:
socket_address: { address: 0.0.0.0, port_value: 9090 }
เช เชจเซเชตเชพเชฆเช เชชเชพเชธเซเชฅเซ เชตเชงเชพเชฐเชพเชจเซ เชฎเชพเชนเชฟเชคเซ
เชเชจเซเชตเซเชฏ เชชเซเชฐเซเชเซเชธเซ เชเชจเซเชธเซเชเซเชฒ เชเชฐเชตเชพ เชฎเชพเชเซเชจเซ เชธเซเชเชจเชพเช เชตเซเชฌเชธเชพเชเช เชชเชฐ เชฎเชณเซ เชถเชเซ เชเซ
เชฎเซเชณเชญเซเชค เชฐเซเชคเซ, rpm เชชเชพเชธเซ systemd เชธเซเชตเชพ เชฐเซเชชเชฐเซเชเชพ เชจเชฅเซ.
systemd เชธเซเชตเชพ เชฐเซเชชเชฐเซเชเชพ เชเชฎเซเชฐเซ /etc/systemd/system/envoy.service:
[Unit]
Description=Envoy Proxy
Documentation=https://www.envoyproxy.io/
After=network-online.target
Requires=envoy-auth-server.service
Wants=nginx.service
[Service]
User=root
Restart=on-failure
ExecStart=/usr/bin/envoy --config-path /etc/envoy/config.yaml
[Install]
WantedBy=multi-user.target
เชคเชฎเชพเชฐเซ เชกเชฟเชฐเซเชเซเชเชฐเซ /etc/envoy/ เชฌเชจเชพเชตเชตเชพเชจเซ เช เชจเซ เชคเซเชฏเชพเช config.yaml เชฐเซเชชเชฐเซเชเชพ เชฎเซเชเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ.
เชฆเซเชค เชชเซเชฐเซเชเซเชธเซเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเซเชฒเชฟเชเซเชฐเชพเชฎ เชเซเช เชเซ:
เชฆเซเชค เชชเซเชฐเซเชเซเชธเซ เชธเซเชเซเชเชฟเช เชเชจเซเชเซเชจเซเชเชจเซ เชธเซเชตเชพ เชเชชเชตเชพเชจเซเช เชธเชฎเชฐเซเชฅเชจ เชเชฐเชคเซเช เชจเชฅเซ. เชคเซเชฅเซ, เช เชธเซเชตเชฟเชงเชพ เชฎเชพเชเซ เชเซเชฃ เชฎเชค เชเชชเซ เชถเชเซ เชเซ:
เชซเชเซเชค เชจเซเชเชงเชพเชฏเซเชฒเชพ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเช เช เชธเชฐเซเชตเซเชฎเชพเช เชญเชพเช เชฒเช เชถเชเซ เชเซ.
เชถเซเช เช เชชเซเชธเซเชเซ เชคเชฎเชจเซ เชฆเซเชค เชชเซเชฐเซเชเซเชธเซ เชเชจเซเชธเซเชเซเชฒ เชเชฐเชตเชพ เช เชจเซ เชชเชฐเซเชเซเชทเชฃ เชเชฐเชตเชพ เชฎเชพเชเซ เชชเซเชฐเซเชคเซเชธเชพเชนเชฟเชค เชเชฐเซเชฏเชพ เชเซ?
-
เชนเชพ
-
เชเซเช
75 เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเช เชฎเชคเชฆเชพเชจ เชเชฐเซเชฏเซเช. 18 เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเช เชฆเซเชฐ เชฐเชนเซเชฏเชพ.
เชธเซเชฐเซเชธ: www.habr.com