ජනවාරි 29 වෙනිදා, CNCF (Cloud Native Computing Foundation) හි තාක්ෂණික කමිටුව, Kubernetes, Prometheus සහ අනෙකුත් විවෘත මූලාශ්ර නිෂ්පාදන ලෝකයේ බහාලුම් සහ ක්ලවුඩ් ස්වදේශික නිෂ්පාදන පිටුපස,
මොන වගේ Rook ද?
ව්යාපෘතිය ඇල්ෆා මට්ටමේ පවතින අතර කුබර්නෙටස් පොකුරුවල සීෆ් බෙදා හරින ලද ගබඩා පද්ධතිය සංවිධානය කිරීම සඳහා විශේෂීකරණය වේ. කතුවරුන් වෙනත් ගබඩා පද්ධති සඳහා සහය දැක්වීමේ සැලසුම් ද නිවේදනය කරයි, නමුත් මෙය ඊළඟ නිකුතු වලදී සිදු නොවනු ඇත.
සංරචක සහ තාක්ෂණික උපාංගය
කුබර්නෙටස් තුළ රූක්ගේ වැඩ කටයුතු විශේෂ ක්රියාකරුවෙකු මත පදනම් වේ (අපි Kubernetes Operators ගැන වැඩි විස්තර ලිව්වා
එසේ නම්, Rook ක්රියාකරු ගබඩාව යෙදවීමට සහ පසුව නඩත්තු කිරීමට අවශ්ය සියල්ල අඩංගු බහාලුමක් ලෙස පෙනේ. ක්රියාකරුගේ වගකීම්වලට ඇතුළත් වන්නේ:
- Ceph ගබඩා ඩීමන් සඳහා DaemonSet නිර්මාණය කිරීම (
ceph-osd ) සරල RADOS පොකුරක් සමඟ; - Ceph අධීක්ෂණය සඳහා කරල් නිර්මාණය කිරීම (සිට
ceph-mon , පොකුරේ තත්ත්වය පරීක්ෂා කිරීම; ගණපූරණය සඳහා, බොහෝ අවස්ථාවලදී පිටපත් තුනක් යොදවා ඇති අතර, ඒවායින් එකක් වැටුණහොත්, අලුත් එකක් ඉහළ යයි); - CRDs කළමනාකරණය (
අභිරුචි සම්පත් අර්ථ දැක්වීම් ) තමා වෙනුවෙන්පොකුර ,ගබඩා තටාක ,වස්තු ගබඩා (වස්තු මත PUT/GET ඉටු කරන HTTP ඉල්ලීම් සඳහා වන සම්පත් සහ සේවා කට්ටල - ඒවා S3 සහ Swift API සමඟ අනුකූල වේ), මෙන්මගොනු පද්ධති ; - අවශ්ය සියලුම සේවාවන් දියත් කිරීම සඳහා කරල් ආරම්භ කිරීම;
- Rook නියෝජිතයන් නිර්මාණය කිරීම.
රූක්ගේ නියෝජිතයන් එක් එක් කුබර්නෙට්ස් නෝඩය මත යොදවා ඇති වෙනම කරල් මගින් නිරූපණය කෙරේ. නියෝජිතයාගේ අරමුණ ප්ලගින වින්යාසයයි
සමස්ත Kubernetes පොකුරු යෝජනා ක්රමය තුළ Rook සංරචකවල ස්ථානය සහ භූමිකාව
Rook ගබඩා වර්ග තුනක් ඉදිරිපත් කරයි:
-
අවහිර කරන්න (බ්ලොක්,StorageClass
) - ගබඩාව තනි උදුනකට සවි කරයි; -
වස්තුව (වස්තුව,ObjectStore
) - Kubernetes පොකුර ඇතුළත සහ පිටත ලබා ගත හැකිය (S3 API හරහා); -
හවුල් ගොනු පද්ධතිය (හවුල් ගොනු පද්ධතිය,Filesystem
) යනු පොඩ් කිහිපයකින් කියවීමට සහ ලිවීමට සවි කළ හැකි ගොනු පද්ධතියකි.
Rook හි අභ්යන්තර කොටස් වලට ඇතුළත් වන්නේ:
- මොන්ස් - Ceph අධීක්ෂණය සඳහා කරල් (දැනටමත් සඳහන් කර ඇති ceph-mon සමඟ);
- OSDs - ceph-osd ඩීමන් සහිත කරල් (Object Storage Daemons);
- එම්.ජී.ආර් - යක්ෂයෙකු සමඟ කරල්
ceph-mgr (Ceph Manager), බාහිර පද්ධති සඳහා අමතර අධීක්ෂණ හැකියාවන් සහ අතුරු මුහුණත් සපයන (නිරීක්ෂණය/පාලනය); - ආර්.ජී.ඩබ්ලිව් (විකල්ප) - වස්තු ගබඩා සහිත කරල්;
- MDS (විකල්ප) - හවුල් ගොනු පද්ධතියක් සහිත කරල්.
සියලුම රූක් ඩීමන් (Mons, OSDs, MGR, RGW, MDS) තනි ද්විමයයකට සම්පාදනය කර ඇත (rook
) කන්ටේනරයක ධාවනය.
Rook ව්යාපෘතිය පිළිබඳ කෙටි හැඳින්වීමක් සඳහා, මෙම කෙටි (12 විනිවිදක) ද ප්රයෝජනවත් විය හැකිය.
Rook ක්රියාත්මක කිරීම
Rook ක්රියාකරු Kubernetes අනුවාදය 1.6 සහ ඊට වැඩි ඒවා සඳහා පූර්ණ සහය දක්වයි (සහ, අර්ධ වශයෙන්, පැරණි K8s නිකුතුව - 1.5.2). ඔහුගේ ස්ථාපන в
cd cluster/examples/kubernetes
kubectl create -f rook-operator.yaml
kubectl create -f rook-cluster.yaml
මීට අමතරව, Rook ක්රියාකරු සූදානම් වේ
helm repo add rook-alpha https://charts.rook.io/alpha
helm install rook-alpha/rook
කුඩා ප්රමාණයක් ලබා ගත හැක helm install
පරාමිතිය හරහා --set key=value[,key=value]
(හෝ වෙනම YAML ගොනුවක ගබඩා කර සම්ප්රේෂණය කරන්න -f values.yaml
).
රූක් ක්රියාකරු ස්ථාපනය කර එහි නියෝජිතයන් සමඟ කරල් දියත් කිරීමෙන් පසු ඉතිරිව ඇත්තේ රූක් පොකුර නිර්මාණය කිරීම පමණි, එහි සරලම වින්යාසය මේ ආකාරයෙන් පෙනේ (rook-cluster.yaml
):
apiVersion: v1
kind: Namespace
metadata:
name: rook
---
apiVersion: rook.io/v1alpha1
kind: Cluster
metadata:
name: rook
namespace: rook
spec:
dataDirHostPath: /var/lib/rook
storage:
useAllNodes: true
useAllDevices: false
storeConfig:
storeType: bluestore
databaseSizeMB: 1024
journalSizeMB: 1024
අදහස් දැක්වීම්: විශේෂ අවධානය යොමු කළ යුතු ගුණාංගය වෙත ගෙවිය යුතුය dataDirHostPath
, නැවත පණගැන්වීමෙන් පසු පොකුර සුරැකීමට අවශ්ය වන නිවැරදි අගය. එය Kubernetes ධාරකවල Rook දත්ත සඳහා ස්ථිර ගබඩා ස්ථානයක් ලෙස භාවිතා කරන අවස්ථා සඳහා, කතුවරුන් මෙම නාමාවලියෙහි අවම වශයෙන් 5 GB නිදහස් තැටි ඉඩක් තිබීම නිර්දේශ කරයි.
ඉතිරිව ඇත්තේ වින්යාසයෙන් පොකුර සෑදීම සහ පොකුරේ (නාම අවකාශයේ) කරල් නිර්මාණය කර ඇති බවට වග බලා ගැනීමයි. rook
):
kubectl create -f rook-cluster.yaml
kubectl -n rook get pod
NAME READY STATUS RESTARTS AGE
rook-api-1511082791-7qs0m 1/1 Running 0 5m
rook-ceph-mgr0-1279756402-wc4vt 1/1 Running 0 5m
rook-ceph-mon0-jflt5 1/1 Running 0 6m
rook-ceph-mon1-wkc8p 1/1 Running 0 6m
rook-ceph-mon2-p31dj 1/1 Running 0 6m
rook-ceph-osd-0h6nb 1/1 Running 0 5m
උත්ශ්රේණි කරන්න රූක් පොකුර (නව අනුවාදයක් දක්වා) යනු මෙම අදියරේදී එහි සියලුම සංරචක යම් අනුපිළිවෙලකට අනුක්රමික යාවත්කාලීන කිරීම අවශ්ය වන ක්රියා පටිපාටියක් වන අතර ඔබට එය ආරම්භ කළ හැක්කේ වත්මන් රූක් ස්ථාපනය සම්පූර්ණයෙන්ම “සෞඛ්ය සම්පන්න” බව සහතික කිරීමෙන් පසුව පමණි. රජයේ. Rook අනුවාදය 0.5.0 සිට 0.5.1 දක්වා යාවත්කාලීන කිරීමේ උදාහරණය භාවිතා කරමින් සවිස්තරාත්මක පියවරෙන් පියවර උපදෙස් සොයාගත හැකිය
පසුගිය නොවැම්බර් මාසයේ Rook බ්ලොග් අඩවියේ
අනාගත බලාපොරොත්තු
රූක්ගේ වර්තමාන තත්ත්වය ඇල්ෆා වන අතර, අද දක්වා ඇති නවතම ප්රධාන නිකුතුව වේ
අනුව
රූක් අංකයට ගැනීම
ප්රාදේශීය සභා
අපගේ බ්ලොග් අඩවියේ ද කියවන්න:
- «
Ceph මත පදනම්ව Kubernetes හි ප්රතිපාදන සමඟ ස්ථීර ගබඩාවක් නිර්මාණය කිරීම »; - «
Kubernetes සඳහා ක්රියාකරුවන්: ප්රකාශිත යෙදුම් ධාවනය කරන්නේ කෙසේද »; - «
CoreDNS - වලාකුළු ස්වදේශික ලෝකය සඳහා DNS සේවාදායකය සහ Kubernetes සඳහා සේවා සොයාගැනීම »; - «
බහාලුම් ජාලකරණ අතුරුමුහුණත (CNI) - ජාල අතුරුමුහුණත සහ ලිනක්ස් බහාලුම් සඳහා සම්මත »; - «
දැරිය හැකි සේවාවක් ලෙස Kubernetes සමඟ යටිතල පහසුකම් ".
මූලාශ්රය: www.habr.com