เปเบเบงเบฑเบเบเบต 29 เบกเบฑเบเบเบญเบ, เบเบฐเบเบฐเบเปเบฒเบกเบฐเบเบฒเบเบเปเบฒเบเบงเบดเบเบฒเบเบฒเบเบเบญเบ CNCF (Cloud Native Computing Foundation), เบญเบปเบเบเบฒเบเบเบฑเบเบเบฑเปเบเบเบตเปเบขเบนเปเปเบเบทเปเบญเบเบซเบฅเบฑเบ Kubernetes, Prometheus เปเบฅเบฐเบเบฐเบฅเบดเบเบเบฐเบเบฑเบ Open Source เบญเบทเปเบเปเบเบฒเบเปเบฅเบเบเบญเบ containers เปเบฅเบฐ cloud native,
Rook เบเบฐเปเบเบเปเบ?
เปเบเบโเบเบฒเบโเบเบฑเปเบโเบเปเบฒเบงโเปเบกเปเบโเบขเบนเปโเปเบโเบเบฑเปเบโเบเบญเบโเบเบญเบโเบเบฒเบโเบญเบฑเบโเบเบฒโเปเบฅเบฐโเบเปเบฝเบงโเบเบฒเบโเปเบโเบเบฒเบโเบเบฑเบโเบงเบฒเบโเบฅเบฐโเบเบปเบโเบเบฒเบโเปเบเบฑเบโเบฎเบฑเบโเบชเบฒโเบเบตเปโเปเบเบโเบขเบฒเบ Ceph เปเบโเบเบธเปเบก Kubernetesโ. เบเบนเปเบเบฝเบเบเบฑเบเบเบฐเบเบฒเบเปเบเบเบเบฒเบเบเบตเปเบเบฐเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบฅเบฐเบเบปเบเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเบญเบทเปเบเป, เปเบเปเบเบตเปเบเบฐเบเปเปเปเบเบตเบเบเบถเปเบเปเบเบเบฒเบเบเปเบญเบเบเปเปเปเบ.
เบญเบปเบเบเบฐเบเบญเบเปเบฅเบฐเบญเบธเบเบฐเบเบญเบเบเปเบฒเบเบงเบดเบเบฒเบเบฒเบ
เบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบญเบ Rook เบเบฒเบเปเบ Kubernetes เปเบกเปเบเบญเบตเบเปเบชเปเบเบนเปเบเบฐเบเบญเบเบเบฒเบเบเบดเปเบชเบ (เบเบงเบเปเบฎเบปเบฒเปเบเปเบเบฝเบเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบ Kubernetes Operators เปเบ
เบเบฑเปเบโเบเบฑเปเบ เบเบนเปเบเบฐเบเบดเบเบฑเบเบเบฒเบ Rook เบเบฐเบเบปเบเบงเปเบฒเปเบเบฑเบเบเบฑเบเบเบฑเบเบเบธเบเบตเปเบเบฑเบเบเบธเบเบธเบเบขเปเบฒเบเบเบตเปเบเปเบฒเปเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบฒเปเบเปเปเบฅเบฐเบเบฒเบเบเปเบฒเบฅเบธเบเบฎเบฑเบเบชเบฒ repository เบเปเปเบกเบฒ. เบเบงเบฒเบกเบฎเบฑเบเบเบดเบเบเบญเบเบเบญเบเบเบนเปเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเบฐเบเบญเบเบกเบต:
- เบเบฒเบเบชเปเบฒเบ DaemonSet เบชเปเบฒเบฅเบฑเบ daemon เบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒ Ceph (
ceph-osd ) เบเบฑเบเบเบธเปเบก RADOS เบเปเบฒเบเบเบฒเบ; - เบเบฒเบเบชเปเบฒเบเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบงเบเบชเบญเบ Ceph (เบเบฒเบ
ceph-mon , เบเบฒเบเบเบงเบเบชเบญเบเบชเบฐเบเบฒเบเบฐเบเบญเบเบเบธเปเบก; เบชเปเบฒเบฅเบฑเบเบเบธเปเบก, เปเบเบเปเบฅเบฐเบเบตเบซเบผเบฒเบเบเบตเปเบชเบธเบ, เบชเบฒเบกเบชเปเบฒเปเบเบปเบฒเบเบทเบเบเปเบฒเปเบเปเบเป, เปเบฅเบฐเบเปเบฒเบญเบฑเบเปเบเบเบปเบเบฅเบปเบ, เบชเบฐเบเบฑเบเปเบซเบกเปเบเบฐเปเบเบตเปเบกเบเบถเปเบ); - เบเบฒเบเบเบธเปเบกเบเบญเบ CRDs (
เบเปเบฒเบเบดเบเบฒเบกเบเบฑเบเบเบฐเบเบฒเบเบญเบเบเบตเปเบเปเบฒเบซเบเบปเบเปเบญเบ ) เบชเปเบฒโเบฅเบฑเบโเบเบปเบโเปเบญเบโเบเบธเปเบก ,เบชเบฐเบฅเบญเบเบเปเบณ ,เบฎเปเบฒเบเบเบฒเบเบงเบฑเบเบเบธ (เบเบธเบเบเบญเบเบเบฑเบเบเบฐเบเบฒเบเบญเบเปเบฅเบฐเบเบฒเบเบเปเบฅเบดเบเบฒเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบฅเบดเบเบฒเบเบเปเบฒเบฎเปเบญเบเบเป HTTP เบเบตเปเบเบฐเบเบดเบเบฑเบ PUT/GET เปเบเบงเบฑเบเบเบธ - เบเบงเบเบกเบฑเบเปเบเบปเปเบฒเบเบฑเบเปเบเปเบเบฑเบ S3 เปเบฅเบฐ Swift API)เปเบฅเบฐเบฅเบฐเบเบปเบเปเบเบฅเป ; - เบเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเบเบฑเบเปเบเบทเปเบญเปเบเบตเบเบเปเบฅเบดเบเบฒเบเบเบตเปเบเปเบฒเปเบเบฑเบเบเบฑเบเปเบปเบ;
- เบเบฒเบเบชเปเบฒเบเบเบปเบงเปเบเบ Rook.
เบเบปเบงเปเบเบเบเบญเบ Rook เบเบทเบเบชเบฐเปเบเบเปเบเบ pods เปเบเบเบเปเบฒเบเบซเบฒเบเบเบตเปเบเบทเบเบเปเบฒเปเบเปเปเบเปเบเปเบฅเบฐเบเปเป Kubernetes. เบเบธเบเบเบฐเบชเบปเบเบเบญเบเบเบปเบงเปเบเบเปเบกเปเบเบเบฒเบเบเบฑเปเบเบเปเบฒ plugin
เบชเบฐเบเบฒเบเบเบตเป เปเบฅเบฐเบเบปเบเบเบฒเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบ Rook เปเบเปเบเบเบเบฒเบเบเบธเปเบก Kubernetes เปเบเบเบฅเบงเบก
Rook เบชเบฐเบซเบเบญเบเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเบชเบฒเบกเบเบฐเปเบเบ:
-
เบเบฑเบ (Block,StorageClass
) โ mounts เบเบฒเบ เปเบเบฑเบ เบฎเบฑเบ เบชเบฒ เปเบเบฑเบ hearth เบเบฝเบง; -
เบงเบฑเบเบเบธ (เบเบธเบเบเบฐเบชเบปเบ,ObjectStore
) - เบกเบตเบขเบนเปเบเบฒเบเปเบ เปเบฅเบฐเบเบญเบเบเบธเปเบก Kubernetes (เบเปเบฒเบ S3 API); -
เบฅเบฐเบเบปเบเปเบเบฅเปเบเบตเปเปเบเปเบเบเบฑเบ (เบฅเบฐเบเบปเบเปเบเบฅเปเบเบตเปเปเบเปเบเบเบฑเบ,Filesystem
) เปเบเบฑเบเบฅเบฐเบเบปเบเปเบเบฅเปเบเบตเปเบชเบฒเบกเบฒเบเบเบดเบเบเบฑเปเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบญเปเบฒเบเปเบฅเบฐเบเบฝเบเบเบฒเบเบซเบผเบฒเบเบเบฑเบ.
เบเบฒเบเปเบเบเบญเบ Rook เบเบฐเบเบญเบเบกเบต:
- Mons โ เบเบฑเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบงเบเบชเบญเบ Ceph (เบเบฑเบ ceph-mon เบเบตเปเปเบเปเบเปเบฒเบงเบกเบฒเปเบฅเปเบง);
- OSDs - เบเบฑเบเบเบตเปเบกเบต daemon ceph-osd (Object Storage Daemons);
- M.G.R. - เบเบฑเบเบเบตเปเบกเบตเบเบต
ceph-mgr (Ceph Manager), เปเบเบดเปเบเบชเบฐเบซเบเบญเบเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบเบดเบเบเบฒเบกเปเบเบตเปเบกเปเบเบตเบกเปเบฅเบฐเบเบฒเบเปเบเปเบเบญเบเบชเปเบฒเบฅเบฑเบเบฅเบฐเบเบปเบเบเบฒเบเบเบญเบ (เบเบฒเบเบเบดเบเบเบฒเบก / เบเบฒเบเบเบงเบเบเบธเบก); - RGW (เบเบฒเบเปเบฅเบทเบญเบ) โ เบเบฑเบเบเบตเปเบกเบตเบเปเบญเบเปเบเบฑเบเบกเปเบฝเบเบงเบฑเบเบเบธ;
- MDS (เบเบฒเบเปเบฅเบทเบญเบ) - เบเบฑเบเบเบตเปเบกเบตเบฅเบฐเบเบปเบเปเบเบฅเปเบเบตเปเปเบเปเบเบเบฑเบ.
Rook daemon เบเบฑเบเปเบปเบ (Mons, OSDs, MGR, RGW, MDS) เบเบทเบเบฅเบงเบเบฅเบงเบกเปเบเบฑเบเบเบนเปเบเบฝเบง (rook
) เปเบฅเปเบเบขเบนเปเปเบเบเบฑเบ.
เบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบฐเบเปเบฒเบชเบฑเปเบเปเบเปเบฝเบงเบเบฑเบเปเบเบเบเบฒเบ Rook, เบชเบฑเปเบเบเบตเป (12 slides) เบญเบฒเบเปเบเบฑเบเบเบฐเปเบซเบเบ.
เบเบฐเบเบดเบเบฑเบเบเบฒเบ 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 operator เปเบฅเบฐเปเบเบตเบเบเบปเบง pods เบเบฑเบเบเบปเบงเปเบเบเบเบญเบเบกเบฑเบ, เบเบฑเบเบซเบกเบปเบเบเบตเปเบเบฑเบเปเบซเบผเบทเบญเปเบกเปเบเบเบฒเบเบชเปเบฒเบเบเบธเปเบก Rook เบเบปเบงเบกเบฑเบเปเบญเบ, เบเบฒเบเบเบฑเปเบเบเปเบฒเบเบตเปเบเปเบฒเบเบเบฒเบเบเบตเปเบชเบธเบเบเบตเปเบกเบตเบฅเบฑเบเบชเบฐเบเบฐเบเบตเป (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
, เบกเบนเบเบเปเบฒเบเบตเปเบเบทเบเบเปเบญเบเบเบตเปเบเปเบฒเปเบเบฑเบเปเบเบทเปเบญเบเบฑเบเบเบถเบเบเบธเปเบกเบซเบผเบฑเบเบเบฒเบ reboots. เบชเปเบฒเบฅเบฑเบเบเปเบฅเบฐเบเบตเบเบตเปเบกเบฑเบเบเบทเบเปเบเปเปเบเบฑเบเบเปเบญเบเปเบเบฑเบเบเปเปเบกเบนเบเบเบฒเบงเบญเบเบชเปเบฒเบฅเบฑเบเบเปเปเบกเบนเบ Rook เปเบ Kubernetes hosts, เบเบนเปเบเบฝเบเปเบเบฐเบเปเบฒเปเบซเปเบกเบตเบเบทเปเบเบเบตเปเบซเบงเปเบฒเบเบขเปเบฒเบเบซเบเปเบญเบ 5 GB เปเบเปเบเปเบฅเบเบฐเบเปเบฅเบตเบเบตเป.
เบเบฑเบเบซเบกเบปเบเบเบตเปเบเบฑเบเปเบซเบผเบทเบญเปเบกเปเบเปเบเบทเปเบญเบชเปเบฒเบเบเบธเปเบกเบขเปเบฒเบเปเบเปเบเบดเบเบเบฒเบเบเบฒเบเบเบฑเปเบเบเปเบฒเปเบฅเบฐเปเบซเปเปเบเปเปเบเบงเปเบฒ pods เบเบทเบเบชเปเบฒเบเบเบถเปเบเปเบเบเบธเปเบก (เปเบ namespace. 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 cluster (เปเบเบดเบเบชเบฐเบเบฑเบเปเบซเบกเป) เปเบกเปเบเบเบฑเปเบเบเบญเบเบเบตเปเปเบเบเบฑเปเบเบเบญเบเบเบตเปเบฎเบฝเบเบฎเปเบญเบเปเบซเปเบกเบตเบเบฒเบเบเบฑเบเบเบธเบเบเบฒเบกเบฅเปเบฒเบเบฑเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบเบเบญเบเบกเบฑเบเบขเบนเปเปเบเบฅเปเบฒเบเบฑเบเบเบตเปเปเบเปเบเบญเบ, เปเบฅเบฐเบเปเบฒเบเบชเบฒเบกเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเบกเบฑเบเปเบเปเบเบฝเบเปเบเปเบซเบผเบฑเบเบเบฒเบเบเบตเปเบเปเบฒเบเบฎเบฑเบเบเบฐเบเบฑเบเบงเปเบฒเบเบฒเบเบเบดเบเบเบฑเปเบ Rook เปเบเบเบฑเบเบเบธเบเบฑเบเบขเบนเปเปเบ "เบชเบธเบเบฐเบเบฒเบ" เบขเปเบฒเบเบชเบปเบกเบเบนเบ. เบฅเบฑเบ. เบเปเบฒเปเบเบฐเบเปเบฒเบเบฑเปเบเบเบญเบเปเบเบเบเบฑเปเบเบเบญเบเบขเปเบฒเบเบฅเบฐเบญเบฝเบเปเบเบเปเบเปเบเบปเบงเบขเปเบฒเบเบเบญเบเบเบฒเบเบเบฑเบเบเบธเบ Rook เบฎเบธเปเบ 0.5.0 เบซเบฒ 0.5.1 เบชเบฒเบกเบฒเบเบเบปเบเปเบเปเปเบ
เปเบเบทเบญเบเบเบฐเบเบดเบเบเบตเปเบเปเบฒเบเบกเบฒเปเบ blog Rook
เบเบงเบฒเบกเบเบฒเบเบซเบงเบฑเบ
เบชเบฐเบเบฒเบเบฐเบเบฑเบเบเบธเบเบฑเบเบเบญเบ Rook เปเบกเปเบ alpha, เปเบฅเบฐเบเบฒเบเปเบเบตเบเบเบปเบงเบเบฑเปเบเปเบซเบเปเบซเบผเปเบฒเบชเบธเบเบกเบฒเบฎเบญเบเบเบฐเบเบธเบเบฑเบเปเบกเปเบ
เบญเบตเบเบเบฒเบกเบเบฒเบ
เปเบญเบปเบฒ Rook เปเบเบปเปเบฒเปเบเปเบเบเปเบฒเบเบงเบ
PS
เบญเปเบฒเบเบเบฑเบเบขเบนเปเปเบ blog เบเบญเบเบเบงเบเปเบฎเบปเบฒ:
- ยซ
เบเบฒเบเบชเปเบฒเบเบเปเบญเบเปเบเบฑเบเบเปเปเบกเบนเบเบเบปเบเบเบตเปเบเปเบงเบเบเบฒเบเบชเบฐเปเบญเบเปเบ Kubernetes เปเบเบเบญเบตเบเปเบชเป Ceph " - ยซ
เบเบนเปเบเบฐเบเบญเบเบเบฒเบเบชเปเบฒเบฅเบฑเบ Kubernetes: เบงเบดเบเบตเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเบเบญเบเบฅเบฑเบ " - ยซ
CoreDNS - เปเบเบตเบเปเบงเบต DNS เบชเปเบฒเบฅเบฑเบเปเบฅเบเบเบทเปเบเปเบกเบทเบญเบเบเบญเบเบเบฅเบฒเบง เปเบฅเบฐเบเบฒเบเบเบปเปเบเบเบปเบเบเปเบฅเบดเบเบฒเบเบชเปเบฒเบฅเบฑเบ Kubernetes " - ยซ
Container Networking Interface (CNI) - เบเบฒเบเปเบเปเบเบญเบเปเบเบทเบญเบเปเบฒเบ เปเบฅเบฐเบกเบฒเบเบเบฐเบเบฒเบเบชเปเบฒเบฅเบฑเบเบเปเบญเบเบเบฑเบเบเบธ Linux " - ยซ
เปเบเบเบชเปเบฒเบเบเบทเปเบเบเบฒเบเบเบตเปเบกเบต Kubernetes เปเบเบฑเบเบเปเบฅเบดเบเบฒเบเบเบตเปเบกเบตเบฅเบฒเบเบฒเบเปเปเปเบเบ ".
เปเบซเบผเปเบเบเปเปเบกเบนเบ: www.habr.com