Sveiks, Habr! Es vÄrÅ”u jÅ«su uzmanÄ«bu uz ziÅas tulkojumu:
Envoy ir augstas veiktspÄjas izplatÄ«ts starpniekserveris (rakstÄ«ts C++ valodÄ), kas paredzÄts atseviŔķiem pakalpojumiem un lietojumprogrammÄm, tas ir arÄ« sakaru kopne un āuniversÄlÄ datu plakneā, kas paredzÄta lielÄm mikropakalpojumu āservice meshā arhitektÅ«rÄm. To veidojot, tika Åemti vÄrÄ risinÄjumi problÄmÄm, kas radÄs tÄdu serveru kÄ NGINX, HAProxy, aparatÅ«ras slodzes balansÄtÄju un mÄkoÅu slodzes balansÄtÄju izstrÄdes laikÄ. Envoy darbojas kopÄ ar katru lietojumprogrammu un apkopo tÄ«klu, lai nodroÅ”inÄtu kopÄ«gu funkcionalitÄti neatkarÄ«gi no platformas. Kad visa pakalpojumu trafika infrastruktÅ«rÄ plÅ«st caur Envoy tÄ«klu, ir viegli vizualizÄt problemÄtiskÄs zonas ar konsekventu novÄrojamÄ«bu, pielÄgot vispÄrÄjo veiktspÄju un pievienot pamatfunkcionalitÄti noteiktÄ vietÄ.
SpÄjas
- Ärpusprocesa arhitektÅ«ra: envoy ir autonoms, augstas veiktspÄjas serveris, kas aizÅem nelielu daudzumu RAM. Tas darbojas kopÄ ar jebkuru lietojumprogrammas valodu vai sistÄmu.
- http/2 un grpc atbalsts: envoy ir pirmÄs klases http/2 un grpc atbalsts ienÄkoÅ”ajiem un izejoÅ”ajiem savienojumiem. Å is ir caurspÄ«dÄ«gs starpniekserveris no http/1.1 lÄ«dz http/2.
- UzlabotÄ slodzes lÄ«dzsvaroÅ”ana: sÅ«tnis atbalsta uzlabotas slodzes lÄ«dzsvaroÅ”anas funkcijas, tostarp automÄtiskus atkÄrtotus mÄÄ£inÄjumus, Ä·Ädes pÄrtraukÅ”anu, globÄlÄs Ätruma ierobežoÅ”anu, pieprasÄ«juma Änojumu, lokÄlÄs zonas slodzes lÄ«dzsvaroÅ”anu utt.
- KonfigurÄcijas pÄrvaldÄ«bas API: envoy nodroÅ”ina spÄcÄ«gu API jÅ«su konfigurÄcijas dinamiskai pÄrvaldÄ«bai.
- NovÄrojamÄ«ba: L7 trafika dziļa novÄrojamÄ«ba, vietÄjais atbalsts izplatÄ«tai izsekoÅ”anai un mongodb, dynamodb un daudzu citu lietojumprogrammu novÄrojamÄ«ba.
1. darbÄ«ba ā NGINX konfigurÄcijas piemÄrs
Å is skripts izmanto Ä«paÅ”i izveidotu failu nginx.conf, pamatojoties uz pilnu piemÄru no
nginx avota konfigurÄcija
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 konfigurÄcijÄm parasti ir trÄ«s galvenie elementi:
- NGINX servera, žurnÄla struktÅ«ras un Gzip funkcionalitÄtes konfigurÄÅ”ana. Tas visos gadÄ«jumos ir definÄts globÄli.
- NGINX konfigurÄÅ”ana, lai pieÅemtu pieprasÄ«jumus saimniekdatoram one.example.com portÄ 8080.
- MÄrÄ·a atraÅ”anÄs vietas iestatÄ«Å”ana, kÄ apstrÄdÄt trafiku dažÄdÄm URL daļÄm.
Ne visas konfigurÄcijas attieksies uz Envoy Proxy, un daži iestatÄ«jumi nav jÄkonfigurÄ. Envoy Proxy ir Äetri galvenie veidi, kas atbalsta NGINX piedÄvÄto pamatinfrastruktÅ«ru. Kodols ir:
- KlausÄ«tÄji: Tie nosaka, kÄ Envoy Proxy pieÅem ienÄkoÅ”os pieprasÄ«jumus. Envoy Proxy paÅ”laik atbalsta tikai uz TCP balstÄ«tus klausÄ«tÄjus. Kad savienojums ir izveidots, tas tiek nodots apstrÄdei filtru kopai.
- Filtri: Tie ir daļa no konveijera arhitektÅ«ras, kas var apstrÄdÄt ienÄkoÅ”os un izejoÅ”os datus. Å Ä« funkcionalitÄte ietver filtrus, piemÄram, Gzip, kas saspiež datus pirms to nosÅ«tÄ«Å”anas klientam.
- MarÅ”rutÄtÄji: Tie pÄrsÅ«ta trafiku uz vajadzÄ«go galamÄrÄ·i, kas definÄts kÄ klasteris.
- Kopas: Tie nosaka trafika un konfigurÄcijas parametru beigu punktu.
MÄs izmantosim Å”os Äetrus komponentus, lai izveidotu sÅ«tÅa starpniekservera konfigurÄciju, kas atbilstu noteiktai NGINX konfigurÄcijai. SÅ«tÅa mÄrÄ·is ir strÄdÄt ar API un dinamisku konfigurÄciju. Å ajÄ gadÄ«jumÄ bÄzes konfigurÄcijÄ tiks izmantoti statiski, stingri kodÄti NGINX iestatÄ«jumi.
2. darbÄ«ba ā NGINX konfigurÄcija
PirmÄ daļa nginx.conf definÄ dažus NGINX iekÅ”Äjos elementus, kas jÄkonfigurÄ.
Darbinieku savienojumi
TÄlÄk sniegtÄ konfigurÄcija nosaka darbinieku procesu un savienojumu skaitu. Tas norÄda, kÄ NGINX mÄrogos, lai apmierinÄtu pieprasÄ«jumu.
worker_processes 2;
events {
worker_connections 2000;
}
Envoy Proxy pÄrvalda darbplÅ«smas un savienojumus dažÄdos veidos.
Envoy izveido darbinieka pavedienu katram sistÄmas aparatÅ«ras pavedienam. Katrs darbinieka pavediens izpilda nebloÄ·ÄjoÅ”u notikumu cilpu, kas ir atbildÄ«ga par
- Uzklausot katru klausÄ«tÄju
- Jaunu savienojumu pieÅemÅ”ana
- Filtru komplekta izveide savienojumam
- ApstrÄdÄjiet visas I/O darbÄ«bas savienojuma darbÄ«bas laikÄ.
Visa turpmÄkÄ savienojuma apstrÄde tiek pilnÄ«bÄ apstrÄdÄta darbinieka pavedienÄ, tostarp jebkura pÄrsÅ«tÄ«Å”anas darbÄ«ba.
Katram darbinieka pavedienam programmÄ Envoy ir savienojumu pÅ«ls. TÄtad HTTP/2 savienojumu pÅ«li vienlaikus izveido tikai vienu savienojumu katram ÄrÄjam resursdatoram, ja ir Äetri darbinieku pavedieni, stabilÄ stÄvoklÄ« katram ÄrÄjam resursdatoram bÅ«s Äetri HTTP/2 savienojumi. SaglabÄjot visu vienÄ darbinieka pavedienÄ, gandrÄ«z visu kodu var ierakstÄ«t bez bloÄ·ÄÅ”anas, it kÄ tas bÅ«tu viens pavediens. Ja tiek pieŔķirts vairÄk darbinieku pavedienu nekÄ nepiecieÅ”ams, tas var novest pie atmiÅas izŔķÄrdÄÅ”anas, radot lielu skaitu dÄ«kstÄves savienojumu un samazinot to reižu skaitu, kad savienojumi tiek atgriezti atpakaļ pÅ«lÄ.
Lai iegÅ«tu vairÄk informÄcijas, apmeklÄjiet vietni
HTTP konfigurÄcija
Å is NGINX konfigurÄcijas bloks definÄ HTTP iestatÄ«jumus, piemÄram:
- KÄdi mime veidi tiek atbalstÄ«ti
- NoklusÄjuma noildzes
- Gzip konfigurÄcija
Varat pielÄgot Å”os aspektus, izmantojot filtrus programmÄ Envoy Proxy, par ko mÄs runÄsim vÄlÄk.
3. darbÄ«ba ā servera konfigurÄÅ”ana
HTTP konfigurÄcijas blokÄ NGINX konfigurÄcija nosaka klausÄ«ties portÄ 8080 un atbildÄt uz ienÄkoÅ”ajiem domÄnu pieprasÄ«jumiem. one.example.com Šø www.one.example.com.
server {
listen 8080;
server_name one.example.com www.one.example.com;
Inside Envoy to kontrolÄ KlausÄ«tÄji.
SÅ«tni klausÄ«tÄjus
VissvarÄ«gÄkais aspekts, lai sÄktu darbu ar Envoy Proxy, ir definÄt klausÄ«tÄjus. Jums ir jÄizveido konfigurÄcijas fails, kurÄ aprakstÄ«ts, kÄ vÄlaties palaist Envoy gadÄ«jumu.
TÄlÄk sniegtais fragments izveidos jaunu uztvÄrÄju un saistÄ«s to ar portu 8080. KonfigurÄcija norÄda sÅ«tÅa starpniekserveri, ar kuriem portiem tam ir jÄsaista ienÄkoÅ”o pieprasÄ«jumu gadÄ«jumÄ.
Envoy Proxy konfigurÄcijai izmanto YAML apzÄ«mÄjumu. Ievadu par Å”o apzÄ«mÄjumu skatiet Å”eit
Copy to Editorstatic_resources:
listeners:
- name: listener_0
address:
socket_address: { address: 0.0.0.0, port_value: 8080 }
Nav nepiecieÅ”ams definÄt servera_vÄrds, jo ar to tiks galÄ sÅ«tÅa starpniekservera filtri.
4. darbÄ«ba ā atraÅ”anÄs vietas konfigurÄÅ”ana
Kad NGINX tiek saÅemts pieprasÄ«jums, atraÅ”anÄs vietas bloks nosaka, kÄ apstrÄdÄt un kur marÅ”rutÄt trafiku. NÄkamajÄ fragmentÄ visa datplÅ«sma uz vietni tiek pÄrsÅ«tÄ«ta uz augÅ”up straumi (tulkotÄja piezÄ«me: augÅ”pus parasti ir lietojumprogrammu serveris) klasteru ar nosaukumu mÄrÄ·aCluster. AugÅ”ÄjÄ klasteris definÄ mezglus, kuriem jÄapstrÄdÄ pieprasÄ«jums. MÄs to apspriedÄ«sim nÄkamajÄ darbÄ«bÄ.
location / {
proxy_pass http://targetCluster/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
UzÅÄmumÄ Envoy Filtri to dara.
SÅ«tÅu filtri
Statiskai konfigurÄcijai filtri nosaka, kÄ apstrÄdÄt ienÄkoÅ”os pieprasÄ«jumus. Å ajÄ gadÄ«jumÄ mÄs iestatÄm atbilstoÅ”os filtrus serveru_nosaukumi iepriekÅ”ÄjÄ solÄ«. Kad tiek saÅemti ienÄkoÅ”ie pieprasÄ«jumi, kas atbilst noteiktiem domÄniem un marÅ”rutiem, trafiks tiek novirzÄ«ts uz kopu. Tas ir lÄ«dzvÄrtÄ«gs NGINX augÅ”upÄjai konfigurÄcijai.
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
VÄrds sÅ«tnis.http_connection_manager ir sÅ«tÅa starpniekserverÄ« iebÅ«vÄts filtrs. Citi filtri ietver Redis, Mongo, TCP. Pilnu sarakstu varat atrast vietnÄ
Lai iegÅ«tu papildinformÄciju par citÄm slodzes lÄ«dzsvaroÅ”anas politikÄm, apmeklÄjiet vietni
5. darbÄ«ba ā starpniekservera un augÅ”puses konfigurÄcija
NGINX augÅ”ÄjÄ konfigurÄcija nosaka mÄrÄ·a serveru kopu, kas apstrÄdÄs trafiku. Å ajÄ gadÄ«jumÄ tika pieŔķirtas divas kopas.
upstream targetCluster {
172.18.0.3:80;
172.18.0.4:80;
}
ProgrammÄ Envoy to pÄrvalda kopas.
SÅ«tÅu kopas
AugÅ”puses ekvivalents ir definÄts kÄ kopas. Å ajÄ gadÄ«jumÄ ir identificÄti saimnieki, kas apkalpos trafiku. Veids, kÄdÄ tiek piekļūts saimniekdatoriem, piemÄram, noildze, ir definÄts kÄ klastera konfigurÄcija. Tas ļauj precÄ«zÄk kontrolÄt tÄdus aspektus kÄ latentums un slodzes lÄ«dzsvaroÅ”ana.
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 }}
]
Izmantojot pakalpojumu atklÄÅ”anu STRICT_DNS SÅ«tnis nepÄrtraukti un asinhroni atrisinÄs norÄdÄ«tos DNS mÄrÄ·us. Katra atgrieztÄ IP adrese no DNS rezultÄta tiks uzskatÄ«ta par nepÄrprotamu saimniekdatoru augÅ”upÄjÄ klasterÄ«. Tas nozÄ«mÄ, ka, ja pieprasÄ«jums atgriež divas IP adreses, Envoy pieÅems, ka klasterÄ« ir divi resursdatori un abiem jÄbÅ«t lÄ«dzsvarotiem. Ja resursdators tiek noÅemts no rezultÄta, Envoy pieÅems, ka tas vairs nepastÄv, un piesaistÄ«s trafiku no visiem esoÅ”ajiem savienojumu pÅ«liem.
PlaÅ”Äku informÄciju skat
6. darbÄ«ba. Piekļuve žurnÄlam un kļūdas
PÄdÄjÄ konfigurÄcija ir reÄ£istrÄcija. TÄ vietÄ, lai kļūdu žurnÄlus ievietotu diskÄ, Envoy Proxy izmanto uz mÄkoÅiem balstÄ«tu pieeju. Visi lietojumprogrammu žurnÄli tiek izvadÄ«ti uz stdout Šø Stderr.
Kad lietotÄji iesniedz pieprasÄ«jumu, piekļuves žurnÄli nav obligÄti un pÄc noklusÄjuma ir atspÄjoti. Lai HTTP pieprasÄ«jumiem iespÄjotu piekļuves žurnÄlus, iespÄjojiet konfigurÄciju piekļuves_žurnÄls HTTP savienojuma pÄrvaldniekam. CeļŔ var bÅ«t vai nu ierÄ«ce, piemÄram, stdout, vai failu diskÄ, atkarÄ«bÄ no jÅ«su prasÄ«bÄm.
TÄlÄk norÄdÄ«tajÄ konfigurÄcijÄ visi piekļuves žurnÄli tiks novirzÄ«ti uz stdout (tulkotÄja piezÄ«me - stdout ir nepiecieÅ”ams, lai izmantotu envoy inside docker. Ja to lieto bez dockera, aizstÄjiet /dev/stdout ar ceļu uz parastu žurnÄlfailu). KopÄjiet fragmentu savienojuma pÄrvaldnieka konfigurÄcijas sadaļÄ:
Copy to Clipboardaccess_log:
- name: envoy.file_access_log
config:
path: "/dev/stdout"
RezultÄtiem vajadzÄtu izskatÄ«ties Å”Ädi:
- 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:
PÄc noklusÄjuma Envoy ir formÄta virkne, kas ietver HTTP pieprasÄ«juma informÄciju:
[%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
Å Ä«s formÄta virknes rezultÄts ir:
[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"
Izvades saturu var pielÄgot, iestatot formÄta lauku. PiemÄram:
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"
ŽurnÄla rindiÅu var arÄ« izvadÄ«t JSON formÄtÄ, iestatot lauku json_format. PiemÄram:
access_log:
- name: envoy.file_access_log
config:
path: "/dev/stdout"
json_format: {"protocol": "%PROTOCOL%", "duration": "%DURATION%", "request_method": "%REQ(:METHOD)%"}
Lai iegÅ«tu papildinformÄciju par sÅ«tÅu reÄ£istrÄcijas metodiku, apmeklÄjiet vietni
MežizstrÄde nav vienÄ«gais veids, kÄ gÅ«t ieskatu darbÄ ar Envoy Proxy. TajÄ ir iebÅ«vÄtas uzlabotas izsekoÅ”anas un metrikas iespÄjas. JÅ«s varat uzzinÄt vairÄk vietnÄ
7. darbÄ«ba ā palaiÅ”ana
JÅ«s tagad esat migrÄjis savu konfigurÄciju no NGINX uz Envoy Proxy. PÄdÄjais solis ir palaist Envoy Proxy instanci, lai to pÄrbaudÄ«tu.
Palaist kÄ lietotÄjs
NGINX konfigurÄcijas rindas augÅ”pusÄ lietotÄjs www www; nosaka palaist NGINX kÄ zemu priviliÄ£Ätu lietotÄju, lai uzlabotu droŔību.
Envoy Proxy izmanto uz mÄkoÅiem balstÄ«tu pieeju, lai pÄrvaldÄ«tu, kam process pieder. Kad mÄs palaižam sÅ«tÅa starpniekserveri caur konteineru, mÄs varam norÄdÄ«t zemu priviliÄ£Ätu lietotÄju.
SÅ«tÅa starpniekservera palaiÅ”ana
TÄlÄk norÄdÄ«tÄ komanda palaidÄ«s Envoy Proxy caur Docker konteineru resursdatorÄ. Å Ä« komanda sniedz Envoy iespÄju noklausÄ«ties ienÄkoÅ”os pieprasÄ«jumus 80. portÄ. TomÄr, kÄ norÄdÄ«ts klausÄ«tÄja konfigurÄcijÄ, sÅ«tÅa starpniekserveris klausÄs ienÄkoÅ”o trafiku portÄ 8080. Tas ļauj procesam darboties kÄ lietotÄjam ar zemÄm priviliÄ£ÄtÄm tiesÄ«bÄm.
docker run --name proxy1 -p 80:8080 --user 1000:1000 -v /root/envoy.yaml:/etc/envoy/envoy.yaml envoyproxy/envoy
TestÄÅ”ana
Kad starpniekserveris darbojas, tagad var veikt un apstrÄdÄt testus. Å Ä« cURL komanda izdod pieprasÄ«jumu ar starpniekservera konfigurÄcijÄ definÄto resursdatora galveni.
curl -H "Host: one.example.com" localhost -i
HTTP pieprasÄ«jums radÄ«s kļūdu 503. Tas ir tÄpÄc, ka augÅ”upÄjie savienojumi nedarbojas un nav pieejami. TÄpÄc sÅ«tÅa starpniekserveram nav pieejami pieprasÄ«juma galamÄrÄ·i. Å Ä« komanda sÄks HTTP pakalpojumu sÄriju, kas atbilst konfigurÄcijai, kas definÄta Envoy.
docker run -d katacoda/docker-http-server; docker run -d katacoda/docker-http-server;
Izmantojot pieejamos pakalpojumus, Envoy var veiksmÄ«gi nosÅ«tÄ«t trafiku uz galamÄrÄ·i.
curl -H "Host: one.example.com" localhost -i
Jums vajadzÄtu redzÄt atbildi, kas norÄda, kurÅ” Docker konteiners apstrÄdÄja pieprasÄ«jumu. SÅ«tÅa starpniekservera žurnÄlos jums vajadzÄtu redzÄt arÄ« piekļuves virknes izvadi.
Papildu HTTP atbildes galvenes
JÅ«s redzÄsiet papildu HTTP galvenes faktiskÄ pieprasÄ«juma atbildes galvenÄs. GalvenÄ tiek parÄdÄ«ts laiks, ko augÅ”Äjais saimniekdators pavadÄ«ja, apstrÄdÄjot pieprasÄ«jumu. Izteikts milisekundÄs. Tas ir noderÄ«gi, ja klients vÄlas noteikt apkalpoÅ”anas laiku salÄ«dzinÄjumÄ ar tÄ«kla latentumu.
x-envoy-upstream-service-time: 0
server: envoy
GalÄ«gÄ konfigurÄcija
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 }
Papildu informÄcija no tulka
NorÄdÄ«jumus par Envoy Proxy instalÄÅ”anu var atrast vietnÄ
PÄc noklusÄjuma rpm nav sistÄmas pakalpojuma konfigurÄcijas.
Pievienojiet systemd pakalpojuma konfigurÄciju /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
Jums ir jÄizveido direktorija /etc/envoy/ un jÄievieto tur config.yaml konfigurÄcija.
Ir telegrammas tÄrzÄÅ”ana, izmantojot sÅ«tÅa starpniekserveri:
SÅ«tÅa starpniekserveris neatbalsta statiska satura apkalpoÅ”anu. TÄpÄc, kas var balsot par funkciju:
AptaujÄ var piedalÄ«ties tikai reÄ£istrÄti lietotÄji.
Vai Ŕī ziÅa mudinÄja jÅ«s instalÄt un pÄrbaudÄ«t sÅ«tÅa starpniekserveri?
-
jÄ
-
nÄ
Nobalsoja 75 lietotÄji. 18 lietotÄji atturÄjÄs.
Avots: www.habr.com