분산 컨테이너에 저장된 Longhorn을 시도하려고 했지만 제대로 진행되지 않았습니다.
5769 단어 Dockerkubernetes
찾아봤는데 Rancher의 Longhorn을 사용하면 분포식 용기 저장소를 만들 수 있기 때문에 Nutanix와 같은 초중합은 스스로 만들 수 있지 않나요???그래서 IT 활동 달력 소재로 도전했습니다.
하지만 순조롭지 못하다
어쨌든 순조롭지 못한 부분을 써 보았다.
k8s의 준비
Longhorn은 k8s가 필요합니다.그러고 보면 Rancher 2.0은 k8s의 기초입니다. 같은 회사이기 때문에 순조롭게 진행되겠죠?해봤지만 베타 때문인지 제 docker-toolbox 환경에서 Rancher 2.0에 많은 오류가 생겨서 일찌감치 먹구름이 끼었습니다.
당분간 GKE 사용을 포기하기로 했습니다.GKE의 준비는 다음과 같다.
$ gcloud components install kubectl
$ gcloud container clusters create "cluster-1" --image-type "UBUNTU"
$ kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user="<your mail address>"
clusterrolebinding "cluster-admin-binding" created
참고rancher/longhorn 기본적으로 image-type을 만드는 대신 Ubuntu를 사용합니다.역할 생성 권한이 필요합니다
create clusterrolebinding
.장기 호스트 배포
다음은 Longhorn의 배치입니다.
rancher/longhorn
로부터 YAML 취득 및 실행$ git clone https://github.com/rancher/longhorn.git
$ cd longhorn
$ kubectl create -f deploy\example.yaml
clusterrolebinding "longhorn-bind" created
clusterrole "longhorn-role" created
serviceaccount "longhorn-service-account" created
daemonset "longhorn-manager" created
service "longhorn-backend" created
deployment "longhorn-ui" created
service "longhorn-frontend" created
daemonset "longhorn-driver" created
입구점을 검사하고longhorn-ui에 연결을 시도합니다.kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.31.240.1 <none> 443/TCP 8m
longhorn-backend ClusterIP 10.31.246.205 <none> 9500/TCP 2m
longhorn-frontend LoadBalancer 10.31.250.26 xxx.xxx.xxx.xxx 80:32039/TCP 2m
위 상황에서 브라우저를 통해 다음 내용에 접근http://xxx.xxx.xxx.xxx/dashboard
여기까지는 비교적 순조롭다.
Longhorn을 사용하여 컨테이너 만들기
이어서 Longhorn을 사용하여 용기를 만듭니다.
volumes:
- name: vol
flexVolume:
driver: "rancher.io/longhorn"
fsType: "ext4"
options:
size: "2G"
numberOfReplicas: "2"
staleReplicaTimeout: "20"
fromBackup: ""
이렇게 지정한 것 같습니다.flex Volume는 사실 잘 알려지지 않았지만 옵션 내용상 실행 시 동적 제작 영역의 기능으로 추정된다.example.yaml
다 된 것 같아서 배치해 봤어요.$ kubectl create -f examples\example.yaml
pod "volume-test" created
언뜻 보기에는 성공했지만 k8s의 UI 측면에서 다음과 같은 오류가 있습니다Unable to mount volumes for pod "volume-test_default(fc0bd9e1-e4c1-11e7-bf33-42010a800176)": timeout expired waiting for volumes to attach/mount for pod "default"/"volume-test". list of unattached/unmounted volumes=[voll]
보아하니 구역의 부착이 실패한 것 같다.먼저 수동으로 만들어야 하지 않을까 해서longhorn-ui에서 저장소를 만들어 보았지만 순조롭지 못했습니다...초보적인 일에 걸려서 넘어진 것 같지만 이번에는 여기서 시간이 없어요orz
총결산
이번에는 롱혼을 해보고 싶은데 결과가 좋지 않아요.공부도 모자라서 복수자야...
그러나 분포식 용기 저장이 순조롭게 진행되면 용기의 운용에 큰 진전이 있을 것이기 때문에 성능 측정 등을 포함해 다시 도전하고 싶습니다.
그럼, Happy Hacking!
참고 자료
Reference
이 문제에 관하여(분산 컨테이너에 저장된 Longhorn을 시도하려고 했지만 제대로 진행되지 않았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/koduki/items/47c8c6b0c8bd056b47ca텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)