рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдВ рд╡реЙрд▓реНрдпреВрдо рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдкрд░рд┐рдЪрдп



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

Kubernetes v1.12 рдиреЗ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХрд╛ рдПрдХ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдкреЗрд╢ рдХрд┐рдпрд╛ред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЖрдкрдХреЛ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдиреЗ рдФрд░ рд╣рдЯрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд┐рд╕реНрдЯрдо рдХреЗ "рджреЗрд╢реА" рд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реЗ рдирдП рд╡реЙрд▓реНрдпреВрдо рднреА рдмрдирд╛рддреА рд╣реИ - рдХреБрдмреЗрд░рдиреЗрдЯ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред

рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреНрдпрд╛ рд╣реИ?


рдХрдИ рд╕реНрдЯреЛрд░реЗрдЬ рд╕рд┐рд╕реНрдЯрдо (рдЬреИрд╕реЗ Google рдХреНрд▓рд╛рдЙрдб рдкрд░рд╕реЗрдВрдЯ рдбрд┐рд╕реНрдХ, рдЕрдореЗрдЬрди рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рдмреНрд▓реЙрдХ рд╕реНрдЯреЛрд░реЗрдЬ, рдФрд░ рдХрдИ рдСрди-рдкреНрд░рд┐рдорд╛рдЗрд╕реЗрд╕ рд╕реНрдЯреЛрд░реЗрдЬ рд╕рд┐рд╕реНрдЯрдо) рдПрдХ рд╕реНрдерд╛рдпреА рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рд╕реНрдиреИрдкрд╢реЙрдЯ ("рд╕реНрдиреИрдкрд╢реЙрдЯ") рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕рдордп рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдмрд┐рдВрджреБ рдкрд░ рд╡реЙрд▓реНрдпреВрдо рдХреА рдПрдХ рдкреНрд░рддрд┐ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдирдпрд╛ рд╡реЙрд▓реНрдпреВрдо рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реЗ рдбреЗрдЯрд╛ рд╕реЗ рднрд░рд╛ рд╣реБрдЖ) рдпрд╛ рдореМрдЬреВрджрд╛ рд╡реЙрд▓реНрдпреВрдо рдХреЛ рдкрд┐рдЫрд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ (рдЬреЛ рд╕реНрдиреИрдкрд╢реЙрдЯ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред

рдХреНрдпреВрдмрд░реНрдиреЗрдЯреНрд╕ рдореЗрдВ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреНрдпреЛрдВ рдЬреЛрдбрд╝реЗрдВ?


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

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

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

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

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпреЗ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЖрджрд┐рдо рдмреБрдирд┐рдпрд╛рджреА рдирд┐рд░реНрдорд╛рдг рдмреНрд▓реЙрдХреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ, рднрдВрдбрд╛рд░рдг рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рдЙрджреНрдпрдо рд╕реНрддрд░ рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддрд╛ рдЦреЛрд▓рддреЗ рд╣реИрдВ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрд░рдХреНрд╖рдг, рдкреНрд░рддрд┐рдХреГрддрд┐ рдФрд░ рдбреЗрдЯрд╛ рдкреНрд░рд╡рд╛рд╕ рдХреЗ рд▓рд┐рдПред

Kubernetes рдореЗрдВ рдХреМрди рд╕реЗ рд╡реЙрд▓реНрдпреВрдо рдкреНрд▓рдЧ рдЗрди рд╕реНрдиреИрдкрд╢реЙрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ?


рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рддреАрди рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡реЙрд▓реНрдпреВрдо рдкреНрд▓рдЧ рдЗрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ: рдЗрди-рдЯреНрд░реА, рдлреНрд▓реЗрдХреНрд╕ рдФрд░ рд╕реАрдПрд╕рдЖрдИред рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╡реЙрд▓реНрдпреВрдо рдкреНрд▓рдЧрд┐рди FAQ рджреЗрдЦреЗрдВред

рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗрд╡рд▓ CSI рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ (рд╡реЗ рдЗрди-рдЯреНрд░реА рдпрд╛ рдлреНрд▓реЗрдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВ)ред рдЗрд╕ рдЕрд╡рд╕рд░ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕рдкреЛрд░реНрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ CSI рдбреНрд░рд╛рдЗрд╡рд░ рдХреБрдмреЗрд░рдиреЗрдЯ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рддреИрдирд╛рдд рд╣реИред

рдЗрд╕ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдХреЗ рд╕рдордп рддрдХ (9 рдЕрдХреНрдЯреВрдмрд░, 2018 - рд▓рдЧрднрдЧ рдЕрдиреБрд╡рд╛рджред ) , рд╕реНрдиреИрдкрд╢реЙрдЯреНрд╕ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрдИрдЖрдИрдЖрдИ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:


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

рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рд▓рд┐рдП рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдПрдкреАрдЖрдИ


рд╕реНрдиреИрдкрд╢реЙрдЯреНрд╕ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╡реЙрд▓реНрдпреВрдо рд╕реНрдиреИрдкрд╢реЙрдЯреНрд╕ рддреАрди рдирдП рдПрдкреАрдЖрдИ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЙрд╕реА рддрд░рд╣ рдкреЗрд╢ рдХрд░рддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдкрд░реНрд╕реЗрдВрдЯреЗрдЬ рд╡реЙрд▓реНрдпреВрдо рдПрдкреАрдЖрдИ рдореЗрдВ:

  • VolumeSnapshot
    • рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рд╕реНрдиреИрдкрд╢реЙрдЯ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ред рдЗрд╕рдореЗрдВ рд╕реНрдиреИрдкрд╢реЙрдЯ рдСрдкрд░реЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдФрд░ рдХреНрдпрд╛ рдпрд╣ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред
    • PersistentVolumeClaim рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рддрд░рд╣, рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдмрдирд╛рдирд╛ рдФрд░ рд╣рдЯрд╛рдирд╛ рдХреНрд▓рд╕реНрдЯрд░ рд╕рдВрд╕рд╛рдзрди (рд╕реНрдиреИрдкрд╢реЙрдЯ) рдмрдирд╛рдиреЗ рдпрд╛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЗрдЪреНрдЫрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
  • VolumeSnapshotContent
    • рдЬрдм рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ CSI рдбреНрд░рд╛рдЗрд╡рд░ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕рдореЗрдВ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕рдХреА рдЖрдИрдбреА рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ
    • PersistentVolume рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рддрд░рд╣, рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреНрд▓рд╕реНрдЯрд░ (рд╕реНрдиреИрдкрд╢реЙрдЯ) рджреНрд╡рд╛рд░рд╛ рд╕реЗрд╡рд┐рдд рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
    • PersistentVolumeClaim рдФрд░ PersistentVolume рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреА рддрд░рд╣, рдЬрдм рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ VolumeSnapshotContent рдСрдмреНрдЬреЗрдХреНрдЯ VolumeSnapshotContent рдЬреБрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИ VolumeSnapshot рд▓рд┐рдП рдЗрд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдПрдХ-рд╕реЗ-рдПрдХ рдореИрдкрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред
  • VolumeSnapshotClass
    • рдХреНрд▓рд╕реНрдЯрд░ рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдпрд╣ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдХрд┐ рдХреМрди рд╕реЗ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдбреНрд░рд╛рдЗрд╡рд░ рдЬрд╛рдирдХрд╛рд░реА, рд╕реНрдиреИрдкрд╢реЙрдЯ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рд╕реНрдп рдЖрджрд┐ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

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

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

рдЗрди рдирдИ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореМрдЬреВрджрд╛ PersistentVolumeClaim рдПрдХ рдирдпрд╛ PersistentVolumeClaim рд╕реНрд░реЛрдд рдлрд╝реАрд▓реНрдб рд╣реИ:

 type PersistentVolumeClaimSpec struct { AccessModes []PersistentVolumeAccessMode Selector *metav1.LabelSelector Resources ResourceRequirements VolumeName string StorageClassName *string VolumeMode *PersistentVolumeMode DataSource *TypedLocalObjectReference } 

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

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╕реНрдиреИрдкрд╢реЙрдЯ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ


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

  • рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ CSI рдбреНрд░рд╛рдЗрд╡рд░ рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рддреИрдирд╛рдд рдФрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИ;
  • рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╡реЙрд▓реНрдпреВрдо рд╕реНрдиреИрдкрд╢реЙрдЯрд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирдП рдлрд╝реАрдЪрд░ рдЧреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ (рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЕрдХреНрд╖рдо):
    • API рд╕рд░реНрд╡рд░ --feature-gates=VolumeSnapshotDataSource=true рд▓рд┐рдП рдирд┐рдореНрди рдзреНрд╡рдЬ рд╕реЗрдЯ рдХрд░реЗрдВ: --feature-gates=VolumeSnapshotDataSource=true

рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдпрд╣ рднреА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХрд┐рд╕ CSI рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЬреЛ рдПрдХ VolumeSnapshotClass рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдХрд░ рдФрд░ snapshotter рдХреНрд╖реЗрддреНрд░ рдореЗрдВ CSI рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдиреАрдЪреЗ VolumeSnapshotClass рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпрд╣ рдбреНрд░рд╛рдЗрд╡рд░ com.example.csi-driver ред рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдПрдХ VolumeSnapshotClass рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдкреНрд░рддреНрдпреЗрдХ CSI рдбреНрд░рд╛рдпрд╡рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ VolumeSnapshotClass рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИ - рдпрд╣ snapshot.storage.kubernetes.io/is-default-class: "true" VolumeSnapshotClass рдХреЛ рд╕реЗрдЯ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ snapshot.storage.kubernetes.io/is-default-class: "true" рд╡рд░реНрдЧ рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ snapshot.storage.kubernetes.io/is-default-class: "true" рдПрдиреЛрдЯреЗрд╢рди:

 apiVersion: snapshot.storage.k8s.io/v1alpha1 kind: VolumeSnapshotClass metadata: name: default-snapclass annotations: snapshot.storage.kubernetes.io/is-default-class: "true" snapshotter: com.example.csi-driver apiVersion: snapshot.storage.k8s.io/v1alpha1 kind: VolumeSnapshotClass metadata: name: csi-snapclass snapshotter: com.example.csi-driver parameters: fakeSnapshotOption: foo csiSnapshotterSecretName: csi-secret csiSnapshotterSecretNamespace: csi-namespace 

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

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

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдВ рдПрдХ рдирдпрд╛ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдирд╛


рдПрдХ рдмрд╛рд░ VolumeSnapshotClass рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реЛ VolumeSnapshotClass рд╣реИ рдФрд░ рд╡рд╣ рд╡реЙрд▓реНрдпреВрдо рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдЖрдк рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЛ рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЖрдк VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдХрд░ рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреЛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реНрдиреИрдкрд╢реЙрдЯ рдХрд╛ рд╕реНрд░реЛрдд рджреЛ рдорд╛рдкрджрдВрдбреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

  • kind - PersistentVolumeClaim рдпрд╣рд╛рдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ;
  • name - рдкреАрд╡реАрд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдирд╛рдоред

рдпрд╣ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реНрдиреИрдкрд╢реЙрдЯ рдЬрд┐рд╕ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрд╕рдХреЗ рдирд╛рдорд╕реНрдерд╛рди рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдирд╛рдорд╕реНрдерд╛рди рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ VolumeSnapshot рд╣реИред

 apiVersion: snapshot.storage.k8s.io/v1alpha1 kind: VolumeSnapshot metadata: name: new-snapshot-demo namespace: demo-namespace spec: snapshotClassName: csi-snapclass source: name: mypvc kind: PersistentVolumeClaim 

VolumeSnapshot рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдПрдХ VolumeSnapshotClass рдХреЛ VolumeSnapshot рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП CSI рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдЧреАред рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж VolumeSnapshot fakeSnapshotOption: foo рдкреИрд░рд╛рдореАрдЯрд░ рдФрд░ рд╕рднреА рдЙрд▓реНрд▓рд┐рдЦрд┐рдд VolumeSnapshotClass рд░рд╣рд╕реНрдп CSI рдкреНрд▓рдЧрдЗрди com.example.csi-driver CreateSnapshot рдХреЛ CreateSnapshot рдХреЙрд▓ рдореЗрдВ рджрд┐рдП CreateSnapshot рд╣реИрдВред

рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ, CSI рдбреНрд░рд╛рдЗрд╡рд░ рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рд╕реНрдиреИрдкрд╢реЙрдЯ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ VolumeSnapshotContent рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдирдП рд╕реНрдиреИрдкрд╢реЙрдЯ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ VolumeSnapshot рд╕реЗ VolumeSnapshot , рдЬреЛ рдЗрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ CSI рдбреНрд░рд╛рдпрд╡рд░ рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИ, рддреЛ рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреА рд░рд┐рдкреЛрд░реНрдЯ VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдирдП рдкреНрд░рдпрд╛рд╕ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ Kubernetes рдХреЗ рдЕрдиреНрдп рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реИ - рдЗрд╕реЗ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╕рдордп рдкрд░ рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд╣реАрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) ред

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

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

рдпрд╣ VolumeSnapshot рдХрд░рдиреЗ рдХреЗ VolumeSnapshot рдХрд┐ VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ VolumeSnapshot рд╣реИ рдФрд░ VolumeSnapshotContent рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рдЖрдк kubectl describe volumesnapshot рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • Ready Status рдореЗрдВ true рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдЧрд╛ рдХрд┐ рд╡реЙрд▓реНрдпреВрдо рд╕реНрдиреИрдкрд╢реЙрдЯ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред
  • Creation Time рдлрд╝реАрд▓реНрдб рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдм рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
  • Restore Size рдлрд╝реАрд▓реНрдб рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреНрдпреВрдирддрдо рд╡реЙрд▓реНрдпреВрдо рдЖрдХрд╛рд░ рд╣реИред
  • рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ Snapshot Content Name рдлрд╝реАрд▓реНрдб рдЗрд╕ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рдЧрдП VolumeSnapshotContent рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ VolumeSnapshotContent рдХрд░рддрд╛ рд╣реИред

рдХреБрдмреЗрд░рдиреЗрдЯ рдореЗрдВ рдПрдХ рдореМрдЬреВрджрд╛ рд╕реНрдиреИрдкрд╢реЙрдЯ рдЖрдпрд╛рдд рдХрд░реЗрдВ


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

рдЬрдм VolumeSnapshotContent рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ VolumeSnapshotContent рд╣реИ, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ - VolumeSnapshot - рдЬреЛ рдЗрд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдЧрд╛ред рдмрд╛рд╣рд░реА-рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЛ VolumeSnapshot рдФрд░ VolumeSnapshotContent рдмреАрдЪ рдХрдиреЗрдХреНрд╢рди рдХреА рдореМрдЬреВрджрдЧреА рдФрд░ рд╢реБрджреНрдзрддрд╛ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХреЗ рдмрд╛рдж рддреИрдпрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдЧрд╛ред рдЬрдм рдпрд╣ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ Kubernetes рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред

VolumeSnapshotContent рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдкреВрд░реНрд╡-рдкреНрд░рд╛рд╡рдзрд╛рдирд┐рдд рд╕реНрдиреИрдкрд╢реЙрдЯ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:

  • csiVolumeSnapshotSource - рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЬрд╛рдирдХрд╛рд░реА:
    • snapshotHandle - snapshotHandle рдирд╛рдо / рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ред рдЕрдирд┐рд╡рд╛рд░реНрдп рдХреНрд╖реЗрддреНрд░;
    • driver - CSI рдбреНрд░рд╛рдЗрд╡рд░ рдЗрд╕ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рдерд╛ред рдЕрдирд┐рд╡рд╛рд░реНрдп рдХреНрд╖реЗрддреНрд░ред рдирд┐рдпрдВрддреНрд░рдХ (рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ) рдореЗрдВ snapshotter рдХреЗ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП;
    • creationTime restoreSize рдФрд░ restoreSize - рдкреВрд░реНрд╡-рдЙрдкрдмрдВрдзрд┐рдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдпреЗ рдХреНрд╖реЗрддреНрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИрдВред рдмрд╛рд╣рд░реА-рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдЧрд╛ред
  • volumeSnapshotRef - VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдкреЙрдЗрдВрдЯрд░, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯ (рдпрд╛рдиреА VolumeSnapshotContent ) рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
    • name рдФрд░ namespace - VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдФрд░ рдирд╛рдорд╕реНрдерд╛рди рдЬрд┐рд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдмрд╛рдзреНрдп рд╣реИ;
    • UID - рд╡реИрдХрд▓реНрдкрд┐рдХ (рдкреВрд░реНрд╡-рддреИрдпрд╛рд░ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓рд┐рдП) рдлрд╝реАрд▓реНрдбред рдмрд╛рд╣рд░реА-рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдмрд╛рдж рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рдпреВрдЖрдИрдбреА рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдРрд╕рд╛ рдХреЛрдИ рдкрддреНрд░рд╛рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИ, рддреЛ рд╕рд╛рдордЧреНрд░реА рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ (рдЕрдирд╛рде-рд╡рд╕реНрддреБ) рдорд╛рдиреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдирд┐рдпрдВрддреНрд░рдХ рдЗрд╕реЗ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рд╕реНрдиреИрдкрд╢реЙрдЯ рджреЛрдиреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ред
  • snapshotClassName рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдлрд╝реАрд▓реНрдб рд╣реИред рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдмрд╛рдж рдмрд╛рд╣рд░реА-рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░ рджреЗрдЧрд╛ред

 apiVersion: snapshot.storage.k8s.io/v1alpha1 kind: VolumeSnapshotContent metadata: name: static-snapshot-content spec: csiVolumeSnapshotSource: driver: com.example.csi-driver snapshotHandle: snapshotcontent-example-id volumeSnapshotRef: kind: VolumeSnapshot name: static-snapshot-demo namespace: demo-namespace 

рдПрдХ VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХреЗред рдЗрд╕рдореЗрдВ:

  • snapshotClassName - рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдоред рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреНрд╖реЗрддреНрд░ред рдпрджрд┐ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ snapshotter рд╡рд░реНрдЧ рдореЗрдВ snapshotter рдлрд╝реАрд▓реНрдб рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдирд┐рдпрдВрддреНрд░рдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╡рд░реНрдЧ рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдЧрд╛;
  • snapshotContentName - рд╕реНрдиреИрдкрд╢реЙрдЯ рд╡реЙрд▓реНрдпреВрдо рдХреА рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдирд╛рдоред рдкреВрд░реНрд╡-рддреИрдпрд╛рд░ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдирд┐рд╡рд╛рд░реНрдп рдХреНрд╖реЗрддреНрд░ред

 apiVersion: snapshot.storage.k8s.io/v1alpha1 kind: VolumeSnapshot metadata: name: static-snapshot-demo namespace: demo-namespace spec: snapshotClassName: csi-snapclass snapshotContentName: static-snapshot-content 

рдЬрдм рдпреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдпрдВрддреНрд░рдХ рдЙрдиреНрд╣реЗрдВ рдмрд╛рдБрдз рджреЗрдЧрд╛, Ready рдлрд╝реАрд▓реНрдб ( Status ) рдХреЛ True рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реНрдиреИрдкрд╢реЙрдЯ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдВ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реЗ рдПрдХ рдирдпрд╛ рд╡реЙрд▓реНрдпреВрдо рддреИрдпрд╛рд░ рдХрд░рдирд╛


рд╕реНрдиреИрдкрд╢реЙрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдкреВрд░реНрд╡-рдкреЙрдкреНрдпреБрд▓реЗрдЯ рдХреА рдЧрдИ рдирдИ рд╡реЙрд▓реНрдпреВрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, PersistentVolumeClaim рдореЗрдВ рдирдП dataSource рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЗрд╕рдХреЗ рддреАрди рдорд╛рдкрджрдВрдб рд╣реИрдВ:

  • name - рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реНрд░реЛрдд рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ VolumeSnapshot рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо;
  • kind - VolumeSnapshot рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП;
  • apiGroup - apiGroup рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реНрд░реЛрдд рдХреЗ рдирд╛рдорд╕реНрдерд╛рди - VolumeSnapshot - VolumeSnapshot рдХреЗ рдирд╛рдорд╕реНрдерд╛рди рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВред

 apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-restore Namespace: demo-namespace spec: storageClassName: csi-storageclass dataSource: name: new-snapshot-demo kind: VolumeSnapshot apiGroup: snapshot.storage.k8s.io accessModes: - ReadWriteOnce resources: requests: storage: 1Gi 

рдЬрдм PersistentVolumeClaim рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдкрд╣рд▓реЗ рд╕реЗ рдЖрдмрд╛рдж рдирдИ рдорд╛рддреНрд░рд╛ рдХреЗ рдкреНрд░рд╛рд╡рдзрд╛рди рдХреЛ рдмреБрд▓рд╛рдПрдЧрд╛ред

рдЕрдЧрд░ рдореИрдВ рд╕реНрдЯреЛрд░реЗрдЬ рдбреЗрд╡рд▓рдкрд░ рд╣реВрдВ рддреЛ рдЕрдкрдиреЗ CSI рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕рдорд░реНрдерди рдХреИрд╕реЗ рдЬреЛрдбрд╝реВрдВ?


рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрддрд┐рд░рд┐рдХреНрдд рдирд┐рдпрдВрддреНрд░рдХ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ CSI рдбреНрд░рд╛рдЗрд╡рд░ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП: CREATE_DELETE_SNAPSHOT рдФрд░ LIST_SNAPSHOTS , рд╕рд╛рде рд╣реА рдЕрддрд┐рд░рд┐рдХреНрдд RPC рдирд┐рдпрдВрддреНрд░рдХ: CreateSnapshot , DeleteSnapshot , ListSnapshots ред рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рд╕реАрдПрд╕рдЖрдИ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рджреЗрдЦреЗрдВред

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

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

рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдПрдХреНрд╕рдЯрд░реНрдирд▓-рд╕реНрдиреИрдкрд╢реЙрдЯ CSI рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдХреЗ рд▓рд┐рдП CreateSnapshot рдФрд░ DeleteSnapshot рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ CreateSnapshot , API рд╕рд░реНрд╡рд░ рдореЗрдВ VolumeSnapshot рдФрд░ VolumeSnapshotContent рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреА рдирд┐рдЧрд░рд╛рдиреА VolumeSnapshot ред CSI рдмрд╛рд╣рд░реА- dataSource рд╕рд╛рде рд╕рд╛рдЗрдбрдХрд╛рд░ рдХрдВрдЯреЗрдирд░ рдХреЛ рдирдП рдкреАрд╡реАрд╕реА dataSource рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реЗ рд╡реЙрд▓реНрдпреВрдо рд░рд┐рдХрд╡рд░реА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

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



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

рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреА рд╕реАрдорд╛рдПрдБ рдХреНрдпрд╛ рд╣реИрдВ?


рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдВ рд╕реНрдиреИрдкрд╢реЙрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реАрдорд╛рдПрдБ рд╣реИрдВ:

  • рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдП рдЧрдП рдкрд┐рдЫрд▓реЗ рд╡реЙрд▓реНрдпреВрдо рдореЗрдВ рдореМрдЬреВрджрд╛ рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рд░реЛрд▓рдмреИрдХ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ (рдХреЗрд╡рд▓ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реЗ рдирдИ рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рдкреНрд░рд╛рд╡рдзрд╛рди рд╕рдорд░реНрдерд┐рдд рд╣реИ)ред
  • рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реЗ рдореМрдЬреВрджрд╛ PersistentVolumeClaim рд▓рд┐рдП рдЗрди-рдкреНрд▓реЗрд╕ рдкреБрдирд░реНрд╕реНрдерд╛рдкрдирд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ: i.e. рд╕реНрдиреИрдкрд╢реЙрдЯ рдХрд╛рд░реНрдпреЛрдВ рд╕реЗ рдПрдХ рдирдИ рдорд╛рддреНрд░рд╛ рдХрд╛ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд░рдирд╛, рд▓реЗрдХрд┐рди рдореМрдЬреВрджрд╛ PersistentVolumeClaim рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рддрд╛рдХрд┐ рдпрд╣ рдПрдХ рдирдП рд╡реЙрд▓реНрдпреВрдо рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреАрд╡реАрд╕реА рдкрд╣рд▓реЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИ (рдХреЗрд╡рд▓ рдПрдХ рдирдП PV / PVC рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕реЗ рдмрдирд╛рдП рдЧрдП рдирдП рд╡реЙрд▓реНрдпреВрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред
  • рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рд▓рд┐рдП рдЧрд╛рд░рдВрдЯреА рд╕реНрдЯреЛрд░реЗрдЬ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдЧрд╛рд░рдВрдЯреА рд╕реЗ рдкрд░реЗ рдирд╣реАрдВ рдЬрд╛рддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдЦрдВрдбрддрд╛ рдЧрд┐рд░рд╛рдП рдЬрд╛рдиреЗ рдкрд░)ред

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


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

рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ?


K8s.io/docs/congets/storage/volume-snapshots рдФрд░ kubernetes-csi.imtqy.com/docs рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдиреИрдкрд╢реЙрдЯ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВред

рдЕрдиреБрд╡рд╛рджрдХ рд╕реЗ рдкреА.рдПрд╕.


рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдЧ рдореЗрдВ рднреА рдкрдврд╝реЗрдВ:

Source: https://habr.com/ru/post/hi426133/


All Articles