Kubernetes 1.17: د اصلي نوښتونو عمومي کتنه

پرون د ډسمبر ۹ مه ترسره شو د Kubernetes راتلونکی خپرونه - 1.17. د هغه دود له مخې چې زموږ د بلاګ لپاره یې وده کړې، موږ په نوي نسخه کې د خورا مهم بدلونونو په اړه خبرې کوو.

Kubernetes 1.17: د اصلي نوښتونو عمومي کتنه

هغه معلومات چې د دې موادو چمتو کولو لپاره کارول کیږي د رسمي اعلان څخه اخیستل شوي، د Kubernetes د پرمختګ تعقیب میزونه, بدلون-1.17 او اړوند مسایل، د پلولو غوښتنې، او د کوبرنیټس د لوړولو وړاندیزونه (KEP). نو، نو څه شی دی؟ ...

د توپولوژي پوهه لاره

د کبرنیټس ټولنه له ډیرې مودې راهیسې دې فیچر ته انتظار باسي - د ټوپولوژي پوهه خدماتو روټینګ. که CAP دا د اکتوبر په 2018 کې پیل کیږي، او رسمي وده - دوه کاله دمخه، معمول مسلې (لکه دا) - او څو کاله نور...

عمومي نظر دا دی چې په کوبرنیټس کې د استوګنې خدماتو لپاره د "محلي" روټینګ پلي کولو وړتیا چمتو کړي. په دې قضیه کې "مقامیت" معنی لري "د ورته سطحي کچه" (توپولوژي کچه)، کوم چې ممکن وي:

  • د خدماتو لپاره ورته نوډ،
  • ورته سرور ریک،
  • ورته سیمه
  • ورته بادل چمتو کونکی،
  • ...

د دې خصوصیت کارولو مثالونه:

  • د ډیری موجودیت زونونو (ملټي-AZ) سره په بادل تاسیساتو کې د ترافیک سپمونه - وګورئ. تازه انځور د ورته سیمې څخه د ترافیک مثال کارول ، مګر په AWS کې مختلف AZs؛
  • د ټیټ فعالیت ځنډ / ښه انډول؛
  • یو شارډ شوی خدمت چې په هر شارډ کې د نوډ په اړه محلي معلومات لري؛
  • په ورته نوډ کې د روانی (یا انلاګونو) ځای په ځای کول د غوښتنلیکونو سره چې لاګونه راټول شوي؛
  • ...

دا ډول روټینګ، کوم چې د ټوپولوژي په اړه "پوهیږي" د شبکې تړاو هم ویل کیږي - سره د مشابهت له مخې نوډ تړاو, د پوډ تړاو / ضد تړاو یا ښکاره شوه ډیر وخت مخکې نه توپولوژي - خبرتیا حجم مهالویش (او د حجم چمتو کول). د تطبیق اوسنۍ کچه ServiceTopology په Kubernetes کې - الفا نسخه.

د توضیحاتو لپاره چې دا فیچر څنګه کار کوي او تاسو څنګه کولی شئ دمخه یې وکاروئ ، ولولئ دا مقاله د یو لیکوال څخه.

IPv4 / IPv6 دوه ګونی سټیک ملاتړ

د پام وړ پرمختګ ثابت د بلې شبکې ځانګړتیا کې: د دوه IP سټیکونو لپاره یوځل ملاتړ ، کوم چې لومړی په کې معرفي شوی و K8s 1.16. په ځانګړې توګه، نوې خپرونه لاندې بدلونونه راوړي:

  • په kube-proxy کې پلي شوي په دواړو حالتونو کې د یوځل عملیاتو امکان (IPv4 او IPv6)؛
  • в Pod.Status.PodIPs ښکاره شوه د ښکته API لپاره ملاتړ (په ورته وخت کې لکه څنګه چې in /etc/hosts اوس دوی کوربه ته اړتیا لري چې د IPv6 پته اضافه کړي؛
  • دوه ګونی سټک ملاتړ KIND (Kubernetes IN Docker) او kubeadm;
  • د e2e ازموینې تازه شوي.

Kubernetes 1.17: د اصلي نوښتونو عمومي کتنه
بیلګه په ډول کې دوه ګونی سټیک IPV4/IPv6 کارول

په CSI کې پرمختګ

باثباته اعلان شو د توپولوژي ملاتړ د CSI پر بنسټ ذخیره کولو لپاره، لومړی په کې معرفي شو K8s 1.12.

لپاره نوښت CSI ته د حجم پلگ انونو مهاجرت - د CSI مهاجرت - د بیټا نسخه ته رسیدلی. دا خصوصیت د موجوده ذخیره کولو پلگ انونو ژباړلو لپاره خورا مهم دی (په ونه کې) عصري انٹرفیس ته (CSI، د ونې څخه بهر) د Kubernetes پای کاروونکو ته د نه لیدو وړ. د کلستر مدیران به یوازې د CSI مهاجرت فعالولو ته اړتیا ولري، وروسته له دې چې موجوده دولتي سرچینې او کاري بار به "یوازې کار" ته دوام ورکړي ... مګر د کوبرنیټس کور کې شامل شوي زاړه شوي پر ځای د وروستي CSI ډرایورونو کارول.

اوس مهال، د AWS EBS ډرایورانو لپاره مهاجرت په بیټا نسخه کې چمتو دی (kubernetes.io/aws-ebs) او GCE PD (kubernetes.io/gce-pd). د نورو ذخیره کولو تاسیساتو وړاندوینې په لاندې ډول دي:

Kubernetes 1.17: د اصلي نوښتونو عمومي کتنه

موږ په دې اړه خبرې وکړې چې څنګه په K8s کې د "دودیز" ذخیره کولو ملاتړ CSI ته راغی دا مقاله. او د بیټا حالت ته د CSI مهاجرت لیږد ته وقف شوی دی جلا خپرونه د پروژې بلاګ کې.

برسېره پردې، د CSI په شرایطو کې یو بل د پام وړ فعالیت، چې په K1.17s 8 کې (الفا تطبیق) پیل کیږي، د بیټا حالت ته رسیدلی (د بیلګې په توګه په ډیفالټ فعال شوی) د Kubernetes 1.12 ریلیز کې - د عکسونو جوړول او له هغوی څخه رغونه. د بیټا خوشې کیدو په لاره کې د کبرنیټس حجم سنیپ شاټ کې رامینځته شوي بدلونونو کې:

  • د CSI خارجي سنیپ شاټر سایډ کار په دوه کنټرولرونو ویشل،
  • د حذف کولو لپاره راز اضافه شوی (د ړنګولو راز) د حجم سنیپ شاټ مینځپانګې ته د تشریح په توګه ،
  • نوی وروستی کوونکی (نهايي کوونکی) د دې لپاره چې د سنیپ شاټ API څیز د حذف کیدو مخه ونیسي که چیرې پاتې اړیکې شتون ولري.

د 1.17 د خوشې کولو په وخت کې، فیچر د دریو CSI ډرایورانو لخوا ملاتړ کیږي: د GCE پرسسټنټ ډیسک CSI ډرایور، Portworx CSI ډرایور او د NetApp Trident CSI ډرایور. د هغې د پلي کولو او کارولو په اړه نور توضیحات په کې موندل کیدی شي دا خپرونه په بلاګ کې

د کلاوډ چمتو کونکي لیبلونه

لیبل چې په اتوماتيک ډول جوړ شوي نوډونو او حجمونو ته ټاکل شوي د بادل چمتو کونکي پورې اړه لري چې کارول کیږي، د ډیر وخت لپاره د بیټا نسخه په توګه په کبرنیټس کې شتون لري - د K8s 1.2 خوشې کیدو راهیسې (اپریل 2016!). د دومره اوږدې مودې لپاره د دوی پراخه کارونې ته په پام سره ، پراختیا کونکي پریکړه وکړه، چې دا وخت دی چې د فیچر مستحکم اعلان کړئ (GA).

له همدې امله، دوی ټول د دې مطابق نومول شوي (د ټوپولوژي لخوا):

  • beta.kubernetes.io/instance-typenode.kubernetes.io/instance-type
  • failure-domain.beta.kubernetes.io/zonetopology.kubernetes.io/zone
  • failure-domain.beta.kubernetes.io/regiontopology.kubernetes.io/region

... مګر لاهم د دوی پخوانیو نومونو لاندې شتون لري (د شاته مطابقت لپاره). په هرصورت، ټولو مدیرانو ته سپارښتنه کیږي چې اوسني لیبلونو ته لاړ شي. اړونده اسناد K8s تازه شوی.

د kubeadm جوړښت شوی محصول

د لومړي ځل لپاره په الفا نسخه کې وړاندې شو د kubeadm کارونې لپاره جوړښت شوی محصول. ملاتړ شوي فارمیټونه: JSON، YAML، Go ټیمپلیټ.

د دې خصوصیت پلي کولو لپاره هڅونه (په وینا CAP) دی:

پداسې حال کې چې Kubernetes په لاسي ډول ځای پرځای کیدی شي، د دې عملیاتو لپاره اصلي (که نه وي) معیار د کیوبیډم کارول دي. د مشهور سیسټم مدیریت وسیلې لکه Terraform د Kubernetes ګمارنې لپاره په kubeadm تکیه کوي. په کلستر API کې پلان شوي پرمختګونه د kubeadm او cloud-init سره د Kubernetes بوټسټریپ کولو لپاره د کمپوز وړ کڅوړه شامله ده.

د جوړښت شوي محصول پرته، حتی په لومړي نظر کې خورا بې ګناه بدلونونه کولی شي Terraform، Cluster API او نور سافټویر مات کړي چې د kubeadm پایلې کاروي.

زموږ په سمدستي پلانونو کې د لاندې kubeadm کمانډونو لپاره ملاتړ (د جوړښت شوي محصول په شکل کې) شامل دي:

  • alpha certs
  • config images list
  • init
  • token create
  • token list
  • upgrade plan
  • version

قوماندې ته د JSON ځواب بیلګه kubeadm init -o json:

{
  "node0": "192.168.20.51:443",
  "caCrt": "sha256:1f40ff4bd1b854fb4a5cf5d2f38267a5ce5f89e34d34b0f62bf335d74eef91a3",
  "token": {
    "id":          "5ndzuu.ngie1sxkgielfpb1",
    "ttl":         "23h",
    "expires":     "2019-05-08T18:58:07Z",
    "usages":      [
      "authentication",
      "signing"
    ],
    "description": "The default bootstrap token generated by 'kubeadm init'.",
    "extraGroups": [
      "system:bootstrappers:kubeadm:default-node-token"
    ]
  },
  "raw": "Rm9yIHRoZSBhY3R1YWwgb3V0cHV0IG9mIHRoZSAia3ViZWFkbSBpbml0IiBjb21tYW5kLCBwbGVhc2Ugc2VlIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2FrdXR6LzdhNjg2ZGU1N2JmNDMzZjkyZjcxYjZmYjc3ZDRkOWJhI2ZpbGUta3ViZWFkbS1pbml0LW91dHB1dC1sb2c="
}

د نورو نوښتونو ثبات

په عموم کې، د کبرنیټس 1.17 خوشې کول د شعار لاندې ترسره شوي "ثبات" دا د دې حقیقت له مخې اسانه شوی چې په دې کې ډیری ځانګړتیاوې (د دوی ټول شمیر دی 14) د GA حیثیت ترلاسه کړ. د هغو په منځ کې:

نور بدلونونه

په Kubernetes 1.17 کې د نوښتونو بشپړ لیست، البته، پورته لیست شوي پورې محدود ندي. دلته ځینې نور دي (او د بشپړ لیست لپاره، وګورئ بدلول):

  • په وروستي ریلیز کې وړاندې شوي فیچر د بیټا نسخه ته رسیدلی RunAsUserName د کړکیو لپاره;
  • ورته بدلون پېښ شول د EndpointSlice API (د K8s 1.16 څخه هم)، په هرصورت، د اوس لپاره دا حل د پای ټکی API د فعالیت / توزیع کولو ښه کولو لپاره د ډیفالټ لخوا فعال شوی ندی؛
  • پوډونه اوس د کلستر عملیاتو لپاره مهم دي رامینځته کیدی شي نه یوازې په نوم ځایونو کې kube-system (د جزیاتو لپاره، د اسنادو لپاره وګورئ د لومړیتوب ټولګي مصرف محدود کړئ);
  • د کبلیټ لپاره نوی اختیار - --reserved-cpus - تاسو ته اجازه درکوي په ښکاره ډول د سیسټم لپاره د CPUs لیست تعریف کړئ؛
  • لپاره kubectl logs وړاندې شوی نوی بیرغ --prefixد لاګ هرې کرښې ته د پوډ نوم او سرچینې کانټینر اضافه کول؛
  • в label.Selector زیاته کړه RequiresExactMatch;
  • ټول کانټینرونه په kube-dns کې اوس روان دي د لږو امتیازاتو سره؛
  • هایپرکیوب په جلا GitHub ذخیره کې جلا شوی او نور به د Kubernetes ریلیزونو کې شامل نشي؛
  • څومره ښه فعالیت کیوب پراکسي د غیر UDP بندرونو لپاره.

د انحصار بدلونونه:

  • د CoreDNS نسخه په kubeadm کې شامله ده 1.6.5؛
  • crictl نسخه v1.16.1 ته تازه شوه؛
  • CSI 1.2.0;
  • etcd 3.4.3;
  • وروستی ازمول شوی ډاکر نسخه 19.03 ته لوړ شوی؛
  • د Kubernetes 1.17 جوړولو لپاره لږترلږه Go نسخه اړینه ده 1.13.4.

PS

زموږ په بلاګ کې هم ولولئ:

سرچینه: www.habr.com

Add a comment