From c53b0d2ebbe46d57f52d4ce5a1eb4a3eba7ba8a8 Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Wed, 15 Sep 2021 13:49:33 -0500 Subject: [PATCH] docs: remove T3 in ECS task startup arch doc --- website/content/docs/ecs/architecture.mdx | 3 +-- website/public/img/ecs-task-startup.png | Bin 11547 -> 10694 bytes 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/website/content/docs/ecs/architecture.mdx b/website/content/docs/ecs/architecture.mdx index df108a6248..a9ab9ead2d 100644 --- a/website/content/docs/ecs/architecture.mdx +++ b/website/content/docs/ecs/architecture.mdx @@ -37,8 +37,7 @@ This diagram shows the timeline of a task starting up and all its containers: - `consul-client` uses the `retry-join` option to join the Consul cluster - `mesh-init` registers the service for this task and its sidecar proxy into Consul. It runs `consul connect envoy -bootstrap` to generate Envoy’s bootstrap JSON file and write it to a shared volume. After registration and bootstrapping, `mesh-init` exits. - **T1:** The `sidecar-proxy` container starts. It runs Envoy by executing `envoy -c `. -- **T2:** The `sidecar-proxy` container is marked as healthy by ECS. It uses a health check that detects if its public listener port is open. At this time, the user’s application containers are started since all the Consul machinery is ready to service requests. -- **T3:** The service will now receive traffic. At this time the only running containers are `consul-client`, `sidecar-proxy` and the user’s application container(s). +- **T2:** The `sidecar-proxy` container is marked as healthy by ECS. It uses a health check that detects if its public listener port is open. At this time, the user’s application containers are started since all the Consul machinery is ready to service requests. The only running containers are `consul-client`, `sidecar-proxy` and the user’s application container(s). ### Automatic ACL Token Provisioning diff --git a/website/public/img/ecs-task-startup.png b/website/public/img/ecs-task-startup.png index 475def2ebfca655cc150c9b21a3595bfbce38a5c..6b9e587b2c607d313e7b4c7849e1d7f226c42f6c 100644 GIT binary patch literal 10694 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�P-s+V!{g~!BNZW*n*C)QE#5`82E^wm-` zF#sH$X5XPDG;=c=x&{#|-n&6G=}a)EM&skoeb zjvLl!hsKw}6A!VO=duUz5)6FLvQAtb^(r~ko;hq3eK1K^Xexuj8cG2_a8xo2ei8T7)XsTUk?gue!ju-cCn$6_(;g67bwyfW*v z1A*E-q0EJzLC)W~kn)K-Ux7f7h5Sw4GcK4D+oqTsT-$Z11va0k&0ovg*=cV!C>#91 znAj#$U3NxOM-5tE{relk>Q3S76-1iWpmzy~%Z?b!RTscn{-;(L?eKe98M!nvSP7M_ zBr{`Wj>GU$Vg`*g1;+j+f@}+jF^sp*&>|)4j&`_JzL_;tKw)F|DqPWk` z_R_w&R{mLq`qr;KW+(dBm>2@F{fyI~I{x!n-?JOtNI{G|R4`V~p^4R-{bht0rAN%P z5%k}ixBzaZ^NDq|macl*2Nd~+s^;L6l1Nbr*$~bkA9_8P=Y}?Z0LlspK5|WJ!uT_F zG60jcZx{!YyC0Y=>Lbtmzi|Sh%7-fP*OIKud@6K7#J%R7*R$tenV;XJ(B-+ZG_&zM z*IuvUxLO1q2MA)?atvF*18{D9TWCv=f&(lV9 z@DT+=-*8tjncXG#HU^p0SLHyG`Ogp?%0`ZgJNC%^XNbVs-78vOu5EH4a~9C6T%S(8 zBxNRXP$lc)q6AK3#0cr6m#kZ*()$DTP-8Z1z@7o-m*5^#3(b6%+UzUPbS6W4ponDD%&u`)uj>O}MMjHewEBOvC$!j17rOkL=>=7pGdZ zihBA!JZkv)=_#p(_U%ebhE}od%WeB)TA_n|!uS9RaNyu0P6Zsnn||&H`l>(m^2R-W zBww_kpECkOBs9ZgAXa737+@`;Xt_hs<<1ehns_e9 z8)t&7Ovw&Uc_skL4`5K?gDhJWw=`h*2cHk)4|eipn0& zYP{(eMV!;y??KK>T~X*rt`eFZZBh*M*HFf}aEu^tOqjgi`MXj&=mQH#B7?w4iw@;Q z%?-vlk|j@7E#8MD$!lD6>l0f`j-j}*!mW?N2Bbd5w@|}q(`k;ql~P|%Y=)Mxu9g$~ zBW;@y+6i(v^m6T>`J{)G&C<_x=zX=OC6-yXkZL#;yXk!`Xo1&am=8mAEu4d1UHJB9 z7VEPwMh$=$)cdpUBrgNlv}yYBHBfErIh=}+lVSjuSk~bcI}9$*JX*r~mTG9tu1b<1 zX6aX`>?vy*KfiYjG?;pdH*|L?2h?>0u4An^q?2gYo4fyZAeVmf4OD&wj4ZvfI7t!x zc@DiD{m@Ggzj{uD-#FagtK2g^vMCCT#dE{28^xz(2tVRpBLrH%i zQE{Fv=tEw;6shkh8@|j~)(%buT%MN9(33dw6NI_=u{h^z)Cn@%Ru*__yARm zK9ywdSTP+=(kIG8FDKS$<$IxMy$yR0xg|KUk8_zE0y*1s4$W|z5^!dz-a5!KV1 zPUxn#koIKoeG_BD!x=UoJHo@8A1TR`Y=1}D!d9-4!*M=Pe_ zVrqplVqcyfLM9&hJ{8T@yNO~OiW`IYrK8{wFN84pMC&QzqLWEI;83k|e?uWX@|y9h z!Wxt#GaAL6`#^=jeD;QZzC>zsV2uN~_WA=s{5xWtgv-WmC>ee*C}76=Il^&=2I%&f zPkS%^R>j{i{Pcv|yzcpc1UX#PtVc73#YZHo(AkBfLMwz}OF`~TZcHabv_ewa_X79x zf+b26ddpZOAzg~z11ox?ErfU<59haNo8;}3Y|q=o8ERM`*GYfI;r=1S3>?!FcB6bf zCqvQl31z%kH7aPI#aJLAbqNr+T}7Yf9ZYGq3tI97pQ+n{3^)~0!iFnrlqB3RH#5uq z0hkXzr3I}Ra~EjA3mD{P3!3Jd$}i-1@>HT!Q2Lbig{xkenr!KaGVI{YU@PqT`2GS; zv(<*+D)*y>(GP!OQ@>~F3d^>gdp>*Jx6Nt=Zuy@p)%Pvg@a|XrLwnI(_Ozoi zn2&wf{YkiNuAEHnvLp?H7i7bF;H^7H??kA?du@|h?Ua^4ZaO0OkqLC#`~5roNjcD4 z()#hXnD6bna6-!Yn+R^Ff1Q_GjZIf9;e0po_}_uO`URD$=@ZPh)|E}^UhVVBD?5ee z=fCvRdnFi)SmB%Z5jOB*daw8|CYpY%V6J|nV+a*DX*xUVGvYA)+!xpO{tRA**)9Lq d2YpwzOg2~iae8fG4=q^4<%^mZu*x_6{s(;|F_{1W