Sobes.tech
Middle

როგორ ხორციელდება ვერსიების მართვა Helm-ში?

sobes.tech AI

პასუხი AI-სგან

Helm- ში ვერსიების მართვა ორი დონით ხორციელდება:

  1. Chart-ის ვერსია (Chart Version): განსაზღვრავს მთელ Helm Chart-ის ვერსიას. იცვლება ნებისმიერ ცვლილებაზე სქემებში, მნიშვნელობებში ან მეტადატაში. მითითებულია Chart.yaml ფაილში:

  2. აპლიკაციის ვერსია (App Version): განსაზღვრავს იმ აპლიკაციის ვერსიას, რომელიც ამ Chart-ის საშუალებით მიწოდება ხდება. მითითებულია Chart.yaml ფაილში და მხოლოდ ინფორმაციული მნიშვნელობა აქვს საბოლოო მომხმარებლისთვის, არ ახდენს გავლენას Helm-ის მუშაობაზე:

Chart.yaml ფაილი:

# Chart-ის მეტადატა ფაილი
apiVersion: v2       # Helm-ის API ვერსია
name: my-app         # Chart-ის სახელი
description: ჩემი აპლიკაცია # Chart-ის აღწერა
version: 1.2.3       # Chart-ის ვერსია: სასურველია მიყოლა SemVer-ს
appVersion: "2.5.0"  # აპლიკაციის ვერსია: სტრიქონი

ცხოვრების ციკლი და ვერსიების მართვა რელიზებში:

ყოველ ჯერზე, როდესაც თქვენ ახორციელებთ Helm Chart-ის ინსტალაციას ან განახლებას, Helm ქმნის ახალ რელიზს. თითოეულ რელიზს აქვს უნიკალური ვერსიის ნომერი (revision). ეს ნომერი იზრდება ყოველი helm install, helm upgrade ან helm rollback ოპერაციის დროს ერთ და იმ სახელის რელიზისთვის:

რელიზების მაგალითი:

# Chart-ის ინსტალაცია (რელიზი შექმნილია, revision 1)
helm install my-release ./my-chart

# Chart-ის განახლება (ახალი რელიზი, revision 2)
helm upgrade my-release ./my-chart

# წინა ვერსიაზე დაბრუნება (ახალი რელიზი, revision 3)
helm rollback my-release 2

# რელიზების ისტორიის ნახვა
helm history my-release

ვერსიების გამოყენება ინსტალაციის და განახლების დროს:

რელიზის ინსტალაციის ან განახლების დროს, შეგიძლიათ მიუთითოთ კონკრეტული ვერსია --version ფლაგით:

# კონკრეტული ვერსიის ინსტალაცია
helm install my-release my-repo/my-chart --version 1.2.3

# კონკრეტული ვერსიის განახლება
helm upgrade my-release my-repo/my-chart --version 1.3.0

ამგვარად, ვერსიების მართვა Helm-ში მოიცავს როგორც პაკეტს (Chart) და მის შიგთავს, ასევე ამ პაკეტების (რელიზების) განთავსების ისტორიას.