рднрдВрдбрд╛рд░рдг рдХреНрд╖рдорддрд╛ рдЯреНрд░реИрдХрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╡реЙрд▓реНрдпреВрдо: рд╕реНрдЯреЗрд░реЙрдпрдб рдкрд░ рдЦрд╛рд▓реА рдбрд┐рд░

рднрдВрдбрд╛рд░рдг рдХреНрд╖рдорддрд╛ рдЯреНрд░реИрдХрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╡реЙрд▓реНрдпреВрдо: рд╕реНрдЯреЗрд░реЙрдпрдб рдкрд░ рдЦрд╛рд▓реА рдбрд┐рд░

рдХреБрдЫ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдЗрд╕ рддрдереНрдп рд╕реЗ рдХрд╛рдлреА рд╕рд╣рдЬ рд╣реИрдВ рдХрд┐ рдкреБрдирд░рд╛рд░рдВрдн рдХреЗ рдмрд╛рдж рдбреЗрдЯрд╛ рд╕рд╣реЗрдЬрд╛ рдирд╣реАрдВ рдЬрд╛рдПрдЧрд╛ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреИрд╢рд┐рдВрдЧ рд╕реЗрд╡рд╛рдПрдВ рд░реИрдо рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реЛрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрди рдбреЗрдЯрд╛ рдХреЛ рднреА рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддреА рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд╛рдпрдж рд╣реА рдХрднреА рд╕реНрдЯреЛрд░реЗрдЬ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рд░реИрдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдзреАрдореА рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рд╕рдордЧреНрд░ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдмрд╣реБрдд рдХрдо рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИред рдЕрдиреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХреБрдЫ рд░реАрдб-рдУрдирд▓реА рдЗрдирдкреБрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдпрд╛ рдЧреБрдкреНрдд рдХреБрдВрдЬрд┐рдпрд╛рдБред

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрдИ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ рдХреНрд╖рдгрд┐рдХ рдорд╛рддреНрд░рд╛рдПрдБ, рд▓реЗрдХрд┐рди рдЙрдирдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ K8s рдореЗрдВ рд▓рд╛рдЧреВ рдХреА рдЧрдИ рдЪреАрдЬрд╝реЛрдВ рддрдХ рд╣реА рд╕реАрдорд┐рдд рд╣реИред

рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╕реАрдПрд╕рдЖрдИ рд╡реЙрд▓реНрдпреВрдо рд╣рд▓реНрдХреЗ рд╕реНрдерд╛рдиреАрдп рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЛ рд╕реАрдПрд╕рдЖрдИ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЧрдИред рдЗрд╕ рддрд░рд╣ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдВрднрд╡ рд╣реИ рдордирдорд╛рдиреА рд╕рдВрд░рдЪрдирд╛рдПрдБ: рд╕реЗрдЯрд┐рдВрдЧреНрд╕, рд░рд╣рд╕реНрдп, рдкрд╣рдЪрд╛рди рдбреЗрдЯрд╛, рдЪрд░, рдЗрддреНрдпрд╛рджрд┐ред рдЗрд╕ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдПрд╕рдЖрдИ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдирд┐рдпрдорд┐рдд рдорд╛рдирдХреАрдХреГрдд рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ - рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдРрд╕реЗ рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреЙрдб рдХреЗ рд▓рд┐рдП рдЪрдпрдирд┐рдд рдХрд┐рд╕реА рднреА рдиреЛрдб рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рдЙрди рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛрд╕реНрдЯ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЬреЛ рдХреЗрд╡рд▓ рдХреБрдЫ рд╣реЛрд╕реНрдЯ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ Kubernetes 1.19 рджреЛ рдирдП рдЕрд▓реНрдлрд╛ рдкрд░реАрдХреНрд╖рдг рд╡реЙрд▓реНрдпреВрдо рдлреАрдЪрд░ рдкреЗрд╢ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╡реИрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ EmptyDir рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд╕рдорд╛рди рд╣реИрдВ:

  • рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдорд╛рддреНрд░рд╛рдПрдБ;

  • рд╕реАрдПрд╕рдЖрдИ рднрдВрдбрд╛рд░рдг рдХреНрд╖рдорддрд╛ рдЯреНрд░реИрдХрд┐рдВрдЧред

рдирдпреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд╛рдн:

  • рднрдВрдбрд╛рд░рдг рд╕реНрдерд╛рдиреАрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ;

  • рд╡реЙрд▓реНрдпреВрдо рдореЗрдВ рдПрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЖрдХрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдкрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ;

  • рдХрд┐рд╕реА рднреА рд╕реАрдПрд╕рдЖрдИ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд▓рдЧрд╛рддрд╛рд░ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ (рдХреНрд╖рдорддрд╛ рдЯреНрд░реИрдХрд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдХреЙрд▓ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ GetCapacity;

  • рдбреНрд░рд╛рдЗрд╡рд░ рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡реЙрд▓реНрдпреВрдо рдореЗрдВ рдХреБрдЫ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ;

  • рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд╕рд╛рде рд╕рднреА рдорд╛рдирдХ рд╕рдВрдЪрд╛рд▓рди (рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдирд╛, рдЖрдХрд╛рд░ рдмрджрд▓рдирд╛, рдЖрджрд┐) рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ;

  • рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдореЙрдбреНрдпреВрд▓ рдпрд╛ рд╡реЙрд▓реНрдпреВрдо рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ;

  • рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╢реЗрдбреНрдпреВрд▓рд░ рдЕрдкрдиреЗ рдЖрдк рдЙрдкрдпреБрдХреНрдд рдиреЛрдбреНрд╕ рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдм рд╢реЗрдбреНрдпреВрд▓рд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рдкреНрд░рд╛рд╡рдзрд╛рди рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпрд╛ рд╡реЗрдмрд╣реБрдХ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЖрд╡реЗрджрди рдХреЗ рд╡рд┐рдХрд▓реНрдк

рдЗрд╕рд▓рд┐рдП, рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреЗ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╡реЙрд▓реНрдпреВрдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИрдВ:

рдореЗрдордХреИрдЪреНрдб рдХреЗ рд▓рд┐рдП рд░реИрдо рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдерд╛рдпреА рдореЗрдореЛрд░реА

рдореЗрдордХреИрдЪреНрдб рдХреА рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬрд╝ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдорд░реНрдерди рд▓рдЧрд╛рддрд╛рд░ рдореЗрдореЛрд░реА (рдЗрдВрдЯреЗрд▓ рдСрдкреНрдЯреЗрди, рдЖрджрд┐) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд▓рдЧрднрдЧред рдЕрдиреБрд╡рд╛рджрдХ) рдирд┐рдпрдорд┐рдд рд░реИрдо рдХреЗ рдмрдЬрд╛рдпред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдореЗрдордХреИрдЪреНрдб рдХреЛ рддреИрдирд╛рдд рдХрд░рддреЗ рд╕рдордп, рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреЗ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕реАрдПрд╕рдЖрдИ рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреАрдПрдордИрдПрдо рд╕реЗ рджрд┐рдП рдЧрдП рдЖрдХрд╛рд░ рдХрд╛ рд╡реЙрд▓реНрдпреВрдо рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкреАрдПрдордИрдПрдо-рд╕реАрдПрд╕рдЖрдИ.

рдХрд╛рд░реНрдпрд╕реНрдерд▓ рдХреЗ рд░реВрдк рдореЗрдВ LVM рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг

рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд░реИрдо рд╕реЗ рдмрдбрд╝реЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЖрдХрд╛рд░ рдпрд╛ рдкреНрд░рджрд░реНрд╢рди рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреЛ рдХрд┐ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рдирд┐рдпрдорд┐рдд рдПрдореНрдкреНрдЯреАрдбрд┐рд░ рд╡реЙрд▓реНрдпреВрдо рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕реА рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рдпрд╣ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ рдЯреЛрдкреЛрдПрд▓рд╡реАрдПрдо.

рдбреЗрдЯрд╛ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рдкрд╣реБрдВрдЪ

рдХрд┐рд╕реА рд╡реЙрд▓реНрдпреВрдо рдХреЗ рдЖрд╡рдВрдЯрди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреВрд░реНрдг рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм:

рдЗрди рд╡реЙрд▓реНрдпреВрдо рдХреЛ рд░реАрдб-рдУрдирд▓реА рдореЛрдб рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

╨Ъ╨░╨║ ╤Н╤В╨╛ ╤А╨░╨▒╨╛╤В╨░╨╡╤В

рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдЦрдВрдб

рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреЗ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рдПрдХ рдкреНрд░рдореБрдЦ рд╡рд┐рд╢реЗрд╖рддрд╛ рдирдпрд╛ рд╡реЙрд▓реНрдпреВрдо рд╕реНрд░реЛрдд рд╣реИ, EphemeralVolumeSource, рдЬрд┐рд╕рдореЗрдВ рд╡реЙрд▓реНрдпреВрдо рдЕрдиреБрд░реЛрдз рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдлрд╝реАрд▓реНрдб рд╢рд╛рдорд┐рд▓ рд╣реИрдВ (рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ рдЗрд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рд╡реЙрд▓реНрдпреВрдо рдЕрдиреБрд░реЛрдз, рдкреАрд╡реАрд╕реА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ)ред рдирдпрд╛ рдирд┐рдпрдВрддреНрд░рдХ kube-controller-manager рдЙрди рдкреЙрдбреНрд╕ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рддрд░рд╣ рдХрд╛ рд╡реЙрд▓реНрдпреВрдо рд╕реНрд░реЛрдд рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЙрди рдкреЙрдбреНрд╕ рдХреЗ рд▓рд┐рдП рдкреАрд╡реАрд╕реА рдмрдирд╛рддреЗ рд╣реИрдВред рд╕реАрдПрд╕рдЖрдИ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЕрдиреБрд░реЛрдз рдЕрдиреНрдп рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рдорд╛рди рд╣реА рджрд┐рдЦрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдВ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЬрдм рддрдХ рдРрд╕реЗ рдкреАрд╡реАрд╕реА рдореМрдЬреВрдж рд╣реИрдВ, рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реЙрд▓реНрдпреВрдо рдкрд░ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдЕрдиреБрд░реЛрдз рдХреА рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдХрд┐рд╕реА рд╡реЙрд▓реНрдпреВрдо рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рддреЗ рд╕рдордп рдпрд╛ рдХрд┐рд╕реА рд╡реЙрд▓реНрдпреВрдо рд╕реЗ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рддреЗ рд╕рдордп рдЙрдиреНрд╣реЗрдВ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкреАрд╡реАрд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╡реЙрд▓реНрдпреВрдо рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рднреА рд╢рд╛рдорд┐рд▓ рд╣реЛрддреА рд╣реИред

рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрдирд╛рдП рдЧрдП рдкреАрд╡реАрд╕реА рдХреЗ рдирд╛рдо рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реИрдВ: рд╡реЗ рдкреЙрдб рдирд╛рдо рдФрд░ рд╡реЙрд▓реНрдпреВрдо рдирд╛рдо рдХрд╛ рдПрдХ рд╕рдВрдпреЛрдЬрди рд╣реИрдВ, рдЬреЛ рдПрдХ рд╣рд╛рдЗрдлрд╝рди рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╛рдо рдкреАрд╡реАрд╕реА рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдЖрдк рдкреЙрдб рдирд╛рдо рдФрд░ рд╡реЙрд▓реНрдпреВрдо рдирд╛рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рдЦреЛрдЬрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИред рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рдирд╛рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдкрддрд╛ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рджреНрд╡рд╛рд░рд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреЙрдб рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдЕрд╡рд░реБрджреНрдз рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╡реЙрд▓реНрдпреВрдо рдХреЛ рдкреЙрдб рдХреЗ рд╕рд╛рде рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдирд┐рдпрдВрддреНрд░рдХ рдорд╛рд▓рд┐рдХ рдХреЗ рддрд╣рдд рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИред рдЬрдм рдкреЙрдб рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдорд╛рдирдХ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рддрдВрддреНрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЕрдиреБрд░реЛрдз рдФрд░ рд╡реЙрд▓реНрдпреВрдо рджреЛрдиреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИред

рд╕реНрдЯреЛрд░реЗрдЬ рдХреНрд▓рд╛рд╕ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рддрдВрддреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдЯреЛрд░реЗрдЬ рдбреНрд░рд╛рдЗрд╡рд░ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдорд┐рд▓рд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рддрддреНрдХрд╛рд▓ рдФрд░ рджреЗрд░ рд╕реЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╡рд╛рд▓реА рдХрдХреНрд╖рд╛рдПрдВ (рдЙрд░реНрдл WaitForFirstConsumer) рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ, рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ WaitForFirstConsumer, рддреЛ рдиреЛрдб рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╕рдордп рд╢реЗрдбреНрдпреВрд▓рд░ рдиреЛрдб рдЙрдкрдпреЛрдЧ рдФрд░ рднрдВрдбрд╛рд░рдг рдЙрдкрд▓рдмреНрдзрддрд╛ рджреЛрдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдПрдХ рдирдИ рд╕реБрд╡рд┐рдзрд╛ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ.

рднрдВрдбрд╛рд░рдг рдХреНрд╖рдорддрд╛ рдЯреНрд░реИрдХрд┐рдВрдЧ

рдЖрдорддреМрд░ рдкрд░ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЛ рдЗрд╕ рдмрд╛рдд рдХреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдХрд┐ рд╕реАрдПрд╕рдЖрдИ рдбреНрд░рд╛рдЗрд╡рд░ рд╡реЙрд▓реНрдпреВрдо рдХрд╣рд╛рдВ рдмрдирд╛рдПрдЧрд╛ред рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЗ рдкрд╛рд╕ рд╕реАрдзреЗ рдбреНрд░рд╛рдЗрд╡рд░ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╢реЗрдбреНрдпреВрд▓рд░ рдиреЛрдбреНрд╕ рдХреЛ рддрдм рддрдХ рдкреЛрд▓ рдХрд░рддрд╛ рд╣реИ рдЬрдм рддрдХ рдЙрд╕реЗ рдРрд╕рд╛ рдХреЛрдИ рди рдорд┐рд▓ рдЬрд╛рдП рдЬрд┐рд╕ рдкрд░ рд╡реЙрд▓реНрдпреВрдо рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ (рджреЗрд░ рд╕реЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ) рдпрд╛ рд╕реНрдерд╛рди рдХрд╛ рдЪреБрдирд╛рд╡ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдбреНрд░рд╛рдЗрд╡рд░ (рддрддреНрдХрд╛рд▓ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ) рдкрд░ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред

рдирдпрд╛ API CSIStorageCapacity, рдЬреЛ рдЕрд▓реНрдлрд╛ рдЪрд░рдг рдореЗрдВ рд╣реИ, рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдХреЛ рдЖрджрд┐ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛред рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреЗ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬрдм рдЖрдк рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рддреИрдирд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рднрдВрдбрд╛рд░рдг рдХреНрд╖рдорддрд╛ рдЯреНрд░реИрдХрд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░рдиреА рд╣реЛрдЧреА: external-provisioner рдбреНрд░рд╛рдЗрд╡рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХреНрд╖рдорддрд╛ рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП GetCapacity.

рдпрджрд┐ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЛ рдЕрдирдмрд╛рдЙрдВрдб рд╡реЙрд▓реНрдпреВрдо рд╡рд╛рд▓реЗ рдкреЙрдб рдХреЗ рд▓рд┐рдП рдПрдХ рдиреЛрдб рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рд▓реЗрдЯ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдбреНрд░рд╛рдЗрд╡рд░ рдиреЗ рдлрд╝реНрд▓реИрдЧ рд╕реЗрдЯ рдХрд░рдХреЗ рддреИрдирд╛рддреА рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рд╣реИ CSIDriver.storageCapacity, рддреЛ рдЬрд┐рди рдиреЛрдбреНрд╕ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рднрдВрдбрд╛рд░рдг рдХреНрд╖рдорддрд╛ рдирд╣реАрдВ рд╣реИ рдЙрдиреНрд╣реЗрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреЗ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдФрд░ рд▓рдЧрд╛рддрд╛рд░ рджреЛрдиреЛрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реАрдПрд╕рдЖрдИ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рдкрдврд╝реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдкреЙрдбреНрд╕ рд╢реЗрдбреНрдпреВрд▓ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рддреБрд░рдВрдд рд▓рд┐рдВрдХ рдХрд┐рдП рдЧрдП рд╡реЙрд▓реНрдпреВрдо рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХрд╛ рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рд╕реНрдЯреЛрд░реЗрдЬ рдбреНрд░рд╛рдЗрд╡рд░ рджреНрд╡рд╛рд░рд╛ рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╕рдордп external-provisioner рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рддрддреНрдХрд╛рд▓ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╡рд╛рд▓реЗ рд╕реНрдЯреЛрд░реЗрдЬ рдХреНрд▓рд╛рд╕ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдбреЗрдЯрд╛ рдХрд╛ рд╡реИрд╕реЗ рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЪреВрдВрдХрд┐ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЛ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдкреБрд░рд╛рдиреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рдмрд╛рдд рдХреА рдХреЛрдИ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡реЙрд▓реНрдпреВрдо рдмрдирд╛рдП рдЬрд╛рдиреЗ рдкрд░ рд╣рд░ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреНрд╖рдорддрд╛ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдмрд┐рдирд╛ рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдП рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдПрдирдмреА рдЖрдк рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ "рдмрд┐рд▓реНрд▓рд┐рдпреЛрдВ рдХреЗ рд╕реНрдЯреИрдВрдб рдкрд░ рдЕрднреНрдпрд╛рд╕" рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рд╕реЗ рдмрд╛рд╣рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЧрд╣рди рдкрд╛рдареНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рдпреЛрдЧреНрдп рддрдХрдиреАрдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдмреЗрд╕ 28-30 рд╕рд┐рддрдВрдмрд░ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдЧрд╛ рдЕрдХреНрдЯреВрдмрд░ 14-16.

рд╕реБрд░рдХреНрд╖рд╛

рд╕реАрдПрд╕рдЖрдИрдПрд╕рднрдВрдбрд╛рд░рдгрдХреНрд╖рдорддрд╛

CSIStorageCapacity рдСрдмреНрдЬреЗрдХреНрдЯ рдиреЗрдорд╕реНрдкреЗрд╕ рдореЗрдВ рд░рд╣рддреЗ рд╣реИрдВ; рдкреНрд░рддреНрдпреЗрдХ CSI рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рдЕрдкрдиреЗ рдиреЗрдорд╕реНрдкреЗрд╕ рдореЗрдВ рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░рддреЗ рд╕рдордп, рдЙрд╕ рд╕реНрдерд╛рди рдореЗрдВ CSIStorageCapacity рдХреЗ RBAC рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдХрд╣рд╛рдБ рд╕реЗ рдЖ рд░рд╣рд╛ рд╣реИред рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╡реИрд╕реЗ рднреА рдЗрд╕рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЖрдорддреМрд░ рдкрд░ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреЛ рдПрдХ рд╣реА рдирд╛рдорд╕реНрдерд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдВрддрддрдГ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдЧрд▓рдд рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдФрд░ рдпрд╣реАрдВ рдкрд░ рдореЗрд░рд╛ рдХрд╛рд░реНрдб рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдпрд╛, рд▓рдЧрднрдЧред рджрд╛рдврд╝реА рд╡рд╛рд▓реЗ рдЪреБрдЯрдХреБрд▓реЗ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдЕрдиреБрд╡рд╛рджрдХ)

рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдЦрдВрдб

рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдкрд╛рд╕ рдкреЙрдб (рдкреНрд░рддреНрдпрдХреНрд╖ рдпрд╛ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ) рдмрдирд╛рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реИ, рддреЛ рд╡реЗ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреЗ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╡реЙрд▓реНрдпреВрдо рднреА рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ, рднрд▓реЗ рд╣реА рдЙрдирдХреЗ рдкрд╛рд╕ рд╡реЙрд▓реНрдпреВрдо рдкрд░ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рди рд╣реЛред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрд░рдмреАрдПрд╕реА рдЕрдиреБрдорддрд┐ рдЬрд╛рдВрдЪ рдкреАрд╡реАрд╕реА рдмрдирд╛рдиреЗ рд╡рд╛рд▓реЗ рдирд┐рдпрдВрддреНрд░рдХ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреА рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░ рдирд╣реАрдВред рдпрд╣ рдЬреЛрдбрд╝рдиреЗ рд╡рд╛рд▓рд╛ рдореБрдЦреНрдп рдкрд░рд┐рд╡рд░реНрддрди рд╣реИ рдЖрдкрдХреЗ рдЦрд╛рддреЗ рдореЗрдВ, рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЙрди рд╕рдореВрд╣реЛрдВ рдкрд░ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЬрд╣рд╛рдВ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдкрд╛рд╕ рд╡реЙрд▓реНрдпреВрдо рдмрдирд╛рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЙрджрд╛рд╣рд░рдг

рдЕрдкрдирд╛ рд╢рд╛рдЦрд╛ рдкреАрдПрдордИрдПрдо-рд╕реАрдПрд╕рдЖрдИ рдореЗрдВ рдЕрд▓реНрдлрд╛ рдЪрд░рдг рдореЗрдВ рд╕рднреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХреНрдпреВрдИрдПрдордпреВ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрдиреЛрдВ рдХреЗ рдЕрдВрджрд░ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ 1.19 рдХреНрд▓рд╕реНрдЯрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рд╡рд░реНрддрди рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛрдб рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, рдХреЗрд╡рд▓ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдмрджрд▓ рдЧрдпрд╛ рд╣реИред

рдПрдХ рдЙрдкрдпреБрдХреНрдд рдорд╢реАрди рдкрд░ (рд▓рд┐рдирдХреНрд╕, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдбрд╛рдХ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗрд╡рд╛рд▓рд╛ рдордЬрд╝рджреВрд░, рджреЗрдЦрдирд╛ рдпрд╣рд╛рдВ рд╡рд┐рд╡рд░рдг) рдпреЗ рдЖрджреЗрд╢ рдХреНрд▓рд╕реНрдЯрд░ рд▓рд╛рдПрдВрдЧреЗ рдФрд░ рдкреАрдПрдордИрдПрдо-рд╕реАрдПрд╕рдЖрдИ рдбреНрд░рд╛рдЗрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ:

git clone --branch=kubernetes-1-19-blog-post https://github.com/intel/pmem-csi.git
cd pmem-csi
export TEST_KUBERNETES_VERSION=1.19 TEST_FEATURE_GATES=CSIStorageCapacity=true,GenericEphemeralVolume=true TEST_PMEM_REGISTRY=intel
make start && echo && test/setup-deployment.sh

рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢ рд╣реЛрдВрдЧреЗ:

The test cluster is ready. Log in with [...]/pmem-csi/_work/pmem-govm/ssh.0, run
kubectl once logged in.  Alternatively, use kubectl directly with the
following env variable:
   KUBECONFIG=[...]/pmem-csi/_work/pmem-govm/kube.config

secret/pmem-csi-registry-secrets created
secret/pmem-csi-node-secrets created
serviceaccount/pmem-csi-controller created
...
To try out the pmem-csi driver ephemeral volumes:
   cat deploy/kubernetes-1.19/pmem-app-ephemeral.yaml |
   [...]/pmem-csi/_work/pmem-govm/ssh.0 kubectl create -f -

CSIStorageCapacity рдСрдмреНрдЬреЗрдХреНрдЯ рдордиреБрд╖реНрдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХреБрдЫ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЧреЛрд▓рд╛рдВрдЧ рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд┐рд▓реНрдЯрд░ рднрдВрдбрд╛рд░рдг рдХрдХреНрд╖рд╛рдПрдВ рджрд┐рдЦрд╛рдПрдВрдЧреЗ, рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдирд╛рдо, рдЯреЛрдкреЛрд▓реЙрдЬреА рдФрд░ рдХреНрд╖рдорддрд╛ рджрд┐рдЦрд╛рдПрдЧрд╛:

$ kubectl get 
        -o go-template='{{range .items}}{{if eq .storageClassName "pmem-csi-sc-late-binding"}}{{.metadata.name}} {{.nodeTopology.matchLabels}} {{.capacity}}
{{end}}{{end}}' 
        csistoragecapacities
csisc-2js6n map[pmem-csi.intel.com/node:pmem-csi-pmem-govm-worker2] 30716Mi
csisc-sqdnt map[pmem-csi.intel.com/node:pmem-csi-pmem-govm-worker1] 30716Mi
csisc-ws4bv map[pmem-csi.intel.com/node:pmem-csi-pmem-govm-worker3] 30716Mi

рдПрдХ рдПрдХрд▓ рд╡рд╕реНрддреБ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рд╣реЛрддреА рд╣реИ:

$ kubectl describe csistoragecapacities/csisc-6cw8j
Name:         csisc-sqdnt
Namespace:    default
Labels:       <none>
Annotations:  <none>
API Version:  storage.k8s.io/v1alpha1
Capacity:     30716Mi
Kind:         CSIStorageCapacity
Metadata:
  Creation Timestamp:  2020-08-11T15:41:03Z
  Generate Name:       csisc-
  Managed Fields:
    ...
  Owner References:
    API Version:     apps/v1
    Controller:      true
    Kind:            StatefulSet
    Name:            pmem-csi-controller
    UID:             590237f9-1eb4-4208-b37b-5f7eab4597d1
  Resource Version:  2994
  Self Link:         /apis/storage.k8s.io/v1alpha1/namespaces/default/csistoragecapacities/csisc-sqdnt
  UID:               da36215b-3b9d-404a-a4c7-3f1c3502ab13
Node Topology:
  Match Labels:
    pmem-csi.intel.com/node:  pmem-csi-pmem-govm-worker1
Storage Class Name:           pmem-csi-sc-late-binding
Events:                       <none>

рдЖрдЗрдП рдПрдХрд▓ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреНрд╖рдгрд┐рдХ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд╕рд╛рде рдПрдХ рдбреЗрдореЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдордЧреНрд░реА pmem-app-ephemeral.yaml:

# This example Pod definition demonstrates
# how to use generic ephemeral inline volumes
# with a PMEM-CSI storage class.
kind: Pod
apiVersion: v1
metadata:
  name: my-csi-app-inline-volume
spec:
  containers:
    - name: my-frontend
      image: intel/pmem-csi-driver-test:v0.7.14
      command: [ "sleep", "100000" ]
      volumeMounts:
      - mountPath: "/data"
        name: my-csi-volume
  volumes:
  - name: my-csi-volume
    ephemeral:
      volumeClaimTemplate:
        spec:
          accessModes:
          - ReadWriteOnce
          resources:
            requests:
              storage: 4Gi
          storageClassName: pmem-csi-sc-late-binding

рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рджрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреЙрдб рдФрд░ рдкреАрд╡реАрд╕реА рд╣реИ:

$ kubectl get pods/my-csi-app-inline-volume -o wide
NAME                       READY   STATUS    RESTARTS   AGE     IP          NODE                         NOMINATED NODE   READINESS GATES
my-csi-app-inline-volume   1/1     Running   0          6m58s   10.36.0.2   pmem-csi-pmem-govm-worker1   <none>           <none>
$ kubectl get pvc/my-csi-app-inline-volume-my-csi-volume
NAME                                     STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS               AGE
my-csi-app-inline-volume-my-csi-volume   Bound    pvc-c11eb7ab-a4fa-46fe-b515-b366be908823   4Gi        RWO            pmem-csi-sc-late-binding   9m21s

рдкреАрд╡реАрд╕реА рд╕реНрд╡рд╛рдореА - рдЕрдВрддрд░реНрдЧрдд:

$ kubectl get -o yaml pvc/my-csi-app-inline-volume-my-csi-volume
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  annotations:
    pv.kubernetes.io/bind-completed: "yes"
    pv.kubernetes.io/bound-by-controller: "yes"
    volume.beta.kubernetes.io/storage-provisioner: pmem-csi.intel.com
    volume.kubernetes.io/selected-node: pmem-csi-pmem-govm-worker1
  creationTimestamp: "2020-08-11T15:44:57Z"
  finalizers:
  - kubernetes.io/pvc-protection
  managedFields:
    ...
  name: my-csi-app-inline-volume-my-csi-volume
  namespace: default
  ownerReferences:
  - apiVersion: v1
    blockOwnerDeletion: true
    controller: true
    kind: Pod
    name: my-csi-app-inline-volume
    uid: 75c925bf-ca8e-441a-ac67-f190b7a2265f
...

рдХреЗ рд▓рд┐рдП рдЕрдкреЗрдХреНрд╖рд┐рдд рдЕрджреНрдпрддрди рдЬрд╛рдирдХрд╛рд░реА pmem-csi-pmem-govm-worker1:

csisc-2js6n map[pmem-csi.intel.com/node:pmem-csi-pmem-govm-worker2] 30716Mi
csisc-sqdnt map[pmem-csi.intel.com/node:pmem-csi-pmem-govm-worker1] 26620Mi
csisc-ws4bv map[pmem-csi.intel.com/node:pmem-csi-pmem-govm-worker3] 30716Mi

рдпрджрд┐ рдХрд┐рд╕реА рдЕрдиреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ 26620Mi рд╕реЗ рдЕрдзрд┐рдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╢реЗрдбреНрдпреВрд▓рд░ рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗрдЧрд╛ pmem-csi-pmem-govm-worker1 рдХрд┐рд╕реА рднреА рд╕реНрдерд┐рддрд┐ рдореЗрдВред

рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реИ?

рджреЛрдиреЛрдВ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдЕрднреА рднреА рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рд╣реИрдВред рдЕрд▓реНрдлрд╛ рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди рдХрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЦреЛрд▓реЗ рдЧрдПред рд╕реБрдзрд╛рд░ рдкреНрд░рд╕реНрддрд╛рд╡ рдЙрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рд▓рд┐рдВрдХ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдмреАрдЯрд╛ рдЪрд░рдг рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдХрд┐рди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рдкрд╣рд▓реЗ рд╣реА рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ рдФрд░ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ