Sobes.tech
Middle

რა არის Persistent Volume (PV) და Persistent Volume Claim (PVC)?

sobes.tech AI

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

პერსისტენტული მოცულობა (PV) — ეს არის კუბერნეტესში აბსტრაქცია, რომელიც წარმოადგენს საცავ ნაწილს, რომელიც სპეციალურად მომზადებულია ადმინისტრატორის მიერ. PV არის კლასტერის რესურსი და არსებობს დამოუკიდებლად პოდის ციკლიდან.

პერსისტენტული მოცულობის მოთხოვნა (PVC) — ეს არის პოდის მოთხოვნა გარკვეული მოცულობის საცავის გამოყენებაზე, გარკვეული წვდომის რეჟიმებით (მოდებით) და შესრულების დონით. PVC უკავშირდება PV-ს, რომელიც აკმაყოფილებს მის მოთხოვნებს.

ძირითადი მახასიათებლები:

  • PV: კლასტერის რესურსი, რომელსაც მართავს ადმინისტრატორი. აღწერს ფიზიკურ ან ქსელურ საცავს (NFS, iSCSI, ღრუბლოვანი საცავი და ა.შ.). აქვს ციკლი, რომელიც არ არის დაკავშირებული პოდებთან.
  • PVC: მომხმარებლის (განვითარებლის) მოთხოვნა საჭირო მოცულობის საცავის შესახებ. უკავშირდება ხელმისაწვდომ PV-ს. აღნიშნავს მოთხოვნებს (ზომა, წვდომის უფლებები).

PV/PVC-ის ციკლი:

  1. Provisioning (მიწოდება): ადმინისტრატორი ქმნის PV-ს ან Kubernetes ქმნის მას ავტომატურად StorageClass-ის საფუძველზე.
  2. Binding (შეკვრა): PVC ეძებს შესაბამის PV-ს მოთხოვნების მიხედვით (ზომა, წვდომის რეჟიმები). თუ პოულობს, ხდება დაკავშირება.
  3. Using (გამოყენება): პოდი იყენებს PVC-ს, მონტაჟის გზით.
  4. Releasing (გამოშვება): PVC წაიშლება. PV შეიძლება იყოს გათავისუფლებული ან დარჩეს შენახული (პოლიტიკის მიხედვით).
  5. Recycling (განახლება)/Deleting (წაშლა)/Retaining (შენახვა): PV-ის სისუფთავის პოლიტიკა PVC-ს გათავისუფლების შემდეგ.

PV-ის მაგალითი:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs-pv
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: nfs.example.com
    path: "/exported/path"

PVC-ის მაგალითი:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-app-pvc
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 5Gi

გამოყენება: პოდი მიმართავს PVC-ს თავისი სპეციფიკაციით, რათა მონტაჟოს ტომი.