Kubernetes 1.18 релизи, обочолонгон контейнерлердин кластерин башкаруу системасы

жарыяланган контейнер оркестринин платформасын чыгаруу Кубернеттер 1.18, бул бүтүндөй обочолонгон контейнерлердин кластерин башкарууга мүмкүндүк берет жана контейнерлерде иштеген тиркемелерди жайылтуу, тейлөө жана масштабдоо механизмдерин камсыз кылат. Долбоор башында Google тарабынан түзүлгөн, бирок андан кийин Linux Foundation тарабынан көзөмөлдөнгөн көз карандысыз сайтка өткөрүлүп берилген. Платформа жамаат тарабынан иштелип чыккан универсалдуу чечим катары жайгаштырылган, жеке тутумдарга байланышпаган жана каалаган булут чөйрөсүндө каалаган тиркеме менен иштөөгө жөндөмдүү. Kubernetes коду Go жана жазылган жайылуу Apache 2.0 астында лицензияланган.

DNS маалымат базасын тейлөө, жүктү теңдөө,
кластердик түйүндөр арасында контейнерлерди бөлүштүрүү (жүктүн жана тейлөө муктаждыктарынын өзгөрүшүнө жараша контейнерлердин миграциясы), колдонмо деңгээлинде ден соолукту текшерүү, эсепти башкаруу, иштеп жаткан кластерди жаңыртуу жана динамикалык масштабдоо, аны токтотпостон. Бир эле учурда бүткүл топ үчүн жаңыртуу жана жокко чыгаруу операциялары менен контейнерлердин топторун жайгаштырууга болот, ошондой эле ресурстарды бөлүштүрүү менен кластерди логикалык бөлүктөргө бөлүүгө болот. Колдонмолордун динамикалык миграциясын колдоо бар, аларды маалыматтарды сактоо үчүн локалдык сактоо жана тармактык сактоо тутумдары колдонулушу мүмкүн.

Kubernetes 1.18 релизинде 38 өзгөртүүлөр жана жакшыртуулар камтылган, анын ичинен 15и туруктуу статуска жана 11и бета статусуна жылдырылды. Альфа статусуна 12 жаңы өзгөртүү сунушталууда. Жаңы версияны даярдоодо бирдей күч-аракет ар кандай функцияларды тактоо жана эксперименталдык мүмкүнчүлүктөрдү турукташтыруу, ошондой эле жаңы иштеп чыгууларды кошууга багытталган. Негизги өзгөрүүлөр:

  • Kubectl
    • Кошулган "kubectl debug" буйругунун альфа версиясы, ал мүчүлүштүктөрдү оңдоо куралдары менен эфемердик контейнерлерди ишке киргизүү менен подкасттарда мүчүлүштүктөрдү оңдоону жөнөкөйлөтүүгө мүмкүндүк берет.
    • Туруктуу деп жарыяланды манифестти колдонсоңуз, кластерде эмне өзгөрөрүн көрүүгө мүмкүндүк берген "kubectl diff" буйругу.
    • Өчүрүлдү "kubectl run" командасынын бардык генераторлору, бир поддонду иштетүү үчүн генератордон башка.
    • Өзгөрүлдү желекчеси "--dry-run", анын маанисине жараша (кардар, сервер жана эч ким), буйруктун сынамык аткарылышы кардар же сервер тарабында аткарылат.
    • kubectl коду баса белгилеген өзүнчө репозиторийге. Бул kubectl ички kubernetes көз карандылыктан ажыратууга мүмкүндүк берди жана кодду үчүнчү тараптын долбоорлоруна импорттоону жеңилдетти.
  • өтүшү
    • башталды Ingress үчүн API тобун networking.v1beta1ге өзгөртүү.
    • Кошулган жаңы талаалар:
      • pathType, бул суроо-талаптагы жолдун салыштырылышын көрсөтүүгө мүмкүндүк берет
      • IngressClassName - эскирген деп жарыяланган kubernetes.io/ingress.class аннотациясынын ордуна. Бул талаа InresClass атайын объектинин атын аныктайт
    • Кошулган кириш контролерунун атын, анын кошумча параметрлерин жана демейки боюнча аны колдонуу белгисин көрсөткөн IngressClass объекти
  • кызмат
    • жүктөдү AppProtocol талаасы, анда колдонмо кайсы протоколду колдоноорун көрсөтө аласыз
    • Которулган бета абалында жана демейки EndpointSlicesAPI боюнча иштетилген, бул кадимки Endpoints үчүн көбүрөөк функционалдык алмаштыруу.
  • тармак
    • колдоо IPv6 бета статусуна жылдырылды.
  • Туруктуу дисктер. Төмөнкү функция туруктуу деп жарыяланды:
  • Колдонмонун конфигурациясы
    • ConfigMap жана жашыруун объекттерге кошулду жаңы талаа "өзгөрбөс". Талаанын маанисин чындыкка коюу объектти өзгөртүүгө жол бербейт.
  • Пландаштыруучу
    • Кошулган кубе-график үчүн кошумча профилдерди түзүү мүмкүнчүлүгү. Эгерде мурда стандарттуу эмес подкаст бөлүштүрүү алгоритмдерин ишке ашыруу үчүн кошумча өзүнчө пландаштыргычтарды иштетүү керек болсо, эми стандарттуу пландаштыргыч үчүн орнотуулардын кошумча топтомун түзүүгө жана ошол эле подкаст талаасында анын атын көрсөтүүгө болот ".spec.schedulerName". Статус - альфа.
    • Taint негизинде чыгаруу туруктуу деп жарыяланды
  • Масштабдоо
    • Кошулган HPAда агрессивдүүлүктүн даражасын көрсөтүү мүмкүнчүлүгү иштеп жаткан поддондордун санын өзгөртүүдө, башкача айтканда, жүк көбөйгөндө, бир эле учурда N эсе көп инстанцияларды ишке киргизиңиз.
  • Кубелет
    • Топология менеджери бета статусун алды. Функция NUMA бөлүштүрүүгө мүмкүндүк берет, бул көп розеткалуу системаларда иштөөнүн начарлашынан сактайт.
    • Бета абалы Мен алган PodOverhead функциясы, RuntimeClassта подкусту иштетүү үчүн зарыл болгон ресурстардын кошумча көлөмүн көрсөтүүгө мүмкүндүк берет.
    • Кеңейтилген HugePages үчүн колдоо, альфа статусунда контейнер деңгээлиндеги изоляция жана бир нече чоң барактардын өлчөмүн колдоо.
    • Жок кылынды метрика үчүн акыркы чекит /metrics/resource/v1alpha1, /metrics/resource ордуна колдонулат
  • API
    • Акыры Эскирген API тобу колдонмолорун/v1beta1 жана кеңейтүүлөрүн/v1beta1 колдонуу мүмкүнчүлүгү алынып салынды.
    • ServerSide Колдонуу бета2 статусуна жаңыртылган. Бул жакшыртуу объект менен иштөөнү kubectlден API серверине жылдырат. Өркүндөтүүнүн авторлору бул азыркы кырдаалда оңдоого мүмкүн болбогон көптөгөн каталарды оңдойт деп ырасташат. Алар ошондой эле ".metadata.managedFields" бөлүмүн кошушту, анда алар объектинин өзгөрүү тарыхын сактоону сунуштап, ким, качан жана эмнени так өзгөрткөн.
    • Жарыяланган туруктуу CertificateSigningRequest API.
  • Windows платформасын колдоо.

Source: opennet.ru

Комментарий кошуу