sigs.k8s.io/cluster-api-provider-aws@v1.5.5/docs/proposal/20220712-garbage-collection-delete.svg (about)

     1  <?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="649px" preserveAspectRatio="none" style="width:1154px;height:649px;background:#FFFFFF;" version="1.1" viewBox="0 0 1154 649" width="1154px" zoomAndPan="magnify"><defs/><g><rect fill="#FFFFFF" height="366.5938" style="stroke:#181818;stroke-width:1.0;" width="10" x="365" y="141.5625"/><rect fill="#FFFFFF" height="308.3281" style="stroke:#181818;stroke-width:1.0;" width="10" x="502.5" y="199.8281"/><rect height="106.5313" style="stroke:#000000;stroke-width:1.5;fill:none;" width="726.5" x="422" y="273.0938"/><rect height="46.2656" style="stroke:#000000;stroke-width:1.5;fill:none;" width="501.5" x="637" y="326.3594"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="24" x2="24" y1="81.2969" y2="568.2891"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="147.5" x2="147.5" y1="81.2969" y2="568.2891"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="370" x2="370" y1="81.2969" y2="568.2891"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="507" x2="507" y1="81.2969" y2="568.2891"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="690" x2="690" y1="81.2969" y2="568.2891"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="803" x2="803" y1="81.2969" y2="568.2891"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="936" x2="936" y1="81.2969" y2="568.2891"/><line style="stroke:#181818;stroke-width:0.5;fill:none;stroke-dasharray:5.0,5.0;" x1="1107.5" x2="1107.5" y1="81.2969" y2="568.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="32" x="5" y="77.9951">User</text><ellipse cx="24" cy="13.5" fill="#E2E2F0" rx="8" ry="8" style="stroke:#181818;stroke-width:0.5;"/><path d="M24,21.5 L24,48.5 M11,29.5 L37,29.5 M24,48.5 L11,63.5 M24,48.5 L37,63.5 " fill="none" style="stroke:#181818;stroke-width:0.5;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="32" x="5" y="580.2842">User</text><ellipse cx="24" cy="592.0859" fill="#E2E2F0" rx="8" ry="8" style="stroke:#181818;stroke-width:0.5;"/><path d="M24,600.0859 L24,627.0859 M11,608.0859 L37,608.0859 M24,627.0859 L11,642.0859 M24,627.0859 L37,642.0859 " fill="none" style="stroke:#181818;stroke-width:0.5;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="65" x="112.5" y="77.9951">APIServer</text><path d="M130,29 C130,19 148,19 148,19 C148,19 166,19 166,29 L166,55 C166,65 148,65 148,65 C148,65 130,65 130,55 L130,29 " fill="#E2E2F0" style="stroke:#181818;stroke-width:1.5;"/><path d="M130,29 C130,39 148,39 148,39 C148,39 166,39 166,29 " fill="none" style="stroke:#181818;stroke-width:1.5;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="65" x="112.5" y="580.2842">APIServer</text><path d="M130,593.5859 C130,583.5859 148,583.5859 148,583.5859 C148,583.5859 166,583.5859 166,593.5859 L166,619.5859 C166,629.5859 148,629.5859 148,629.5859 C148,629.5859 130,629.5859 130,619.5859 L130,593.5859 " fill="#E2E2F0" style="stroke:#181818;stroke-width:1.5;"/><path d="M130,593.5859 C130,603.5859 148,603.5859 148,603.5859 C148,603.5859 166,603.5859 166,593.5859 " fill="none" style="stroke:#181818;stroke-width:1.5;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98" x="318" y="77.9951">CAPIController</text><ellipse cx="370" cy="49" fill="#E2E2F0" rx="12" ry="12" style="stroke:#181818;stroke-width:0.5;"/><polygon fill="#181818" points="366,37,372,32,370,37,372,42,366,37" style="stroke:#181818;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98" x="318" y="580.2842">CAPIController</text><ellipse cx="370" cy="599.5859" fill="#E2E2F0" rx="12" ry="12" style="stroke:#181818;stroke-width:0.5;"/><polygon fill="#181818" points="366,587.5859,372,582.5859,370,587.5859,372,592.5859,366,587.5859" style="stroke:#181818;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="145" x="432" y="77.9951">InfraClusterController</text><ellipse cx="507.5" cy="49" fill="#E2E2F0" rx="12" ry="12" style="stroke:#181818;stroke-width:0.5;"/><polygon fill="#181818" points="503.5,37,509.5,32,507.5,37,509.5,42,503.5,37" style="stroke:#181818;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="145" x="432" y="580.2842">InfraClusterController</text><ellipse cx="507.5" cy="599.5859" fill="#E2E2F0" rx="12" ry="12" style="stroke:#181818;stroke-width:0.5;"/><polygon fill="#181818" points="503.5,587.5859,509.5,582.5859,507.5,587.5859,509.5,592.5859,503.5,587.5859" style="stroke:#181818;stroke-width:1.0;"/><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="87" x="647" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="73" x="654" y="69.9951">gc_service</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="87" x="647" y="567.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="73" x="654" y="587.2842">gc_service</text><rect fill="#E2E2F0" height="30.2969" style="stroke:#181818;stroke-width:0.5;" width="115" x="748" y="46"/><rect fill="#E2E2F0" height="30.2969" style="stroke:#181818;stroke-width:0.5;" width="115" x="744" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="101" x="751" y="69.9951">other_services</text><rect fill="#E2E2F0" height="30.2969" style="stroke:#181818;stroke-width:0.5;" width="115" x="748" y="567.2891"/><rect fill="#E2E2F0" height="30.2969" style="stroke:#181818;stroke-width:0.5;" width="115" x="744" y="571.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="101" x="751" y="591.2842">other_services</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="126" x="873" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="112" x="880" y="69.9951">network_service</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="126" x="873" y="567.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="112" x="880" y="587.2842">network_service</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="1087.5" y="50"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="27" x="1094.5" y="69.9951">aws</text><rect fill="#E2E2F0" height="30.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="1087.5" y="567.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="27" x="1094.5" y="587.2842">aws</text><rect fill="#FFFFFF" height="366.5938" style="stroke:#181818;stroke-width:1.0;" width="10" x="365" y="141.5625"/><rect fill="#FFFFFF" height="308.3281" style="stroke:#181818;stroke-width:1.0;" width="10" x="502.5" y="199.8281"/><polygon fill="#181818" points="136,108.4297,146,112.4297,136,116.4297,140,112.4297" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="24" x2="142" y1="112.4297" y2="112.4297"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="31" y="107.3638">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="87" x="44" y="107.3638">delete cluster</text><polygon fill="#181818" points="159,137.5625,149,141.5625,159,145.5625,155,141.5625" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="153" x2="364" y1="141.5625" y2="141.5625"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="165" y="136.4966">2</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="37" x="178" y="136.4966">watch</text><polygon fill="#181818" points="159,166.6953,149,170.6953,159,174.6953,155,170.6953" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="153" x2="364" y1="170.6953" y2="170.6953"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="165" y="165.6294">3</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="180" x="178" y="165.6294">delete infra (set timestamp)</text><polygon fill="#181818" points="159,195.8281,149,199.8281,159,203.8281,155,199.8281" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="153" x2="501.5" y1="199.8281" y2="199.8281"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="165" y="194.7622">4</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="91" x="178" y="194.7622">watch (delete)</text><polygon fill="#181818" points="791.5,224.9609,801.5,228.9609,791.5,232.9609,795.5,228.9609" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="512.5" x2="797.5" y1="228.9609" y2="228.9609"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="519.5" y="223.895">5</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="106" x="532.5" y="223.895">Reconcile Delete</text><polygon fill="#181818" points="1096,254.0938,1106,258.0938,1096,262.0938,1100,258.0938" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="803.5" x2="1102" y1="258.0938" y2="258.0938"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="810.5" y="253.0278">6</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="157" x="823.5" y="253.0278">Delete non-network infra</text><path d="M422,273.0938 L492,273.0938 L492,280.2266 L482,290.2266 L422,290.2266 L422,273.0938 " fill="#EEEEEE" style="stroke:#000000;stroke-width:1.5;"/><rect fill="none" height="106.5313" style="stroke:#000000;stroke-width:1.5;" width="726.5" x="422" y="273.0938"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="25" x="437" y="286.1606">opt</text><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacing" textLength="145" x="507" y="285.3042">[if gc feature enabled]</text><polygon fill="#181818" points="678.5,307.3594,688.5,311.3594,678.5,315.3594,682.5,311.3594" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="512.5" x2="684.5" y1="311.3594" y2="311.3594"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="519.5" y="306.2935">7</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="102" x="532.5" y="306.2935">ReconcileDelete</text><path d="M637,326.3594 L707,326.3594 L707,333.4922 L697,343.4922 L637,343.4922 L637,326.3594 " fill="#EEEEEE" style="stroke:#000000;stroke-width:1.5;"/><rect fill="none" height="46.2656" style="stroke:#000000;stroke-width:1.5;" width="501.5" x="637" y="326.3594"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="25" x="652" y="339.4263">opt</text><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacing" textLength="204" x="722" y="338.5698">[if gc annotation != false OR ""]</text><polygon fill="#181818" points="1096,360.625,1106,364.625,1096,368.625,1100,364.625" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="690.5" x2="1102" y1="364.625" y2="364.625"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="697.5" y="359.5591">8</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="252" x="710.5" y="359.5591">Delete tenant created resources (lb/sg)</text><polygon fill="#181818" points="924,403.7578,934,407.7578,924,411.7578,928,407.7578" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="512.5" x2="930" y1="407.7578" y2="407.7578"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="9" x="519.5" y="402.6919">9</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="106" x="532.5" y="402.6919">Reconcile Delete</text><polygon fill="#181818" points="1096,432.8906,1106,436.8906,1096,440.8906,1100,436.8906" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="936" x2="1102" y1="436.8906" y2="436.8906"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="18" x="943" y="431.8247">10</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="126" x="965" y="431.8247">delete network infra</text><line style="stroke:#181818;stroke-width:1.0;" x1="512.5" x2="554.5" y1="466.0234" y2="466.0234"/><line style="stroke:#181818;stroke-width:1.0;" x1="554.5" x2="554.5" y1="466.0234" y2="479.0234"/><line style="stroke:#181818;stroke-width:1.0;" x1="513.5" x2="554.5" y1="479.0234" y2="479.0234"/><polygon fill="#181818" points="523.5,475.0234,513.5,479.0234,523.5,483.0234,519.5,479.0234" style="stroke:#181818;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="18" x="519.5" y="460.9575">11</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="137" x="541.5" y="460.9575">Remove infra finalizer</text><polygon fill="#181818" points="159,504.1563,149,508.1563,159,512.1563,155,508.1563" style="stroke:#181818;stroke-width:1.0;"/><line style="stroke:#181818;stroke-width:1.0;" x1="153" x2="506.5" y1="508.1563" y2="508.1563"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="18" x="165" y="503.0903">12</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="36" x="187" y="503.0903">patch</text><line style="stroke:#181818;stroke-width:1.0;" x1="148" x2="190" y1="537.2891" y2="537.2891"/><line style="stroke:#181818;stroke-width:1.0;" x1="190" x2="190" y1="537.2891" y2="550.2891"/><line style="stroke:#181818;stroke-width:1.0;" x1="149" x2="190" y1="550.2891" y2="550.2891"/><polygon fill="#181818" points="159,546.2891,149,550.2891,159,554.2891,155,550.2891" style="stroke:#181818;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="18" x="155" y="532.2231">13</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="121" x="177" y="532.2231">Delete infra cluster</text><!--MD5=[4389993db6aca10e75844ee7084d68d4]
     2  @startuml
     3  autonumber
     4  actor User
     5  database APIServer
     6  control CAPIController
     7  control InfraClusterController
     8  participant gc_service
     9  collections other_services
    10  participant network_service
    11  participant aws
    12  User -> APIServer: delete cluster
    13  CAPIController -> APIServer: watch
    14  activate CAPIController
    15  CAPIController -> APIServer: delete infra (set timestamp)
    16  
    17  InfraClusterController -> APIServer: watch (delete)
    18  activate InfraClusterController
    19  InfraClusterController -> other_services: Reconcile Delete 
    20  other_services -> aws: Delete non-network infra
    21  opt if gc feature enabled
    22      InfraClusterController -> gc_service: ReconcileDelete
    23      opt if gc annotation != false OR ""
    24          gc_service -> aws: Delete tenant created resources (lb/sg)
    25      end
    26  end
    27  InfraClusterController -> network_service: Reconcile Delete
    28  network_service -> aws: delete network infra
    29  InfraClusterController -> InfraClusterController: Remove infra finalizer
    30  InfraClusterController -> APIServer: patch
    31  deactivate InfraClusterController
    32  deactivate CAPIController
    33  APIServer -> APIServer: Delete infra cluster
    34  
    35  @enduml
    36  
    37  PlantUML version 1.2022.5(Sat Apr 30 11:55:52 BST 2022)
    38  (GPL source distribution)
    39  Java Runtime: OpenJDK Runtime Environment
    40  JVM: OpenJDK 64-Bit Server VM
    41  Default Encoding: UTF-8
    42  Language: en
    43  Country: GB
    44  --></g></svg>