오브젝트 스토리지 서비스 ( swift ) 4. 초기 링 생성 및 배포 > OpenStack 자료실

본문 바로가기
사이트 내 전체검색

OpenStack 자료실

오브젝트 스토리지 서비스 ( swift ) 4. 초기 링 생성 및 배포

페이지 정보

profile_image
작성자 jkchoi
댓글 0건 조회 3,105회 작성일 21-11-26 09:21

본문

오브젝트 스토리지 서비스를 시작하기 전에 초기 계정, 컨테이너 및 오브젝트 링을 생성해야 합니다.

링 빌더는 각 노드가 스토리지 아키텍처를 결정하고 배포하는 데 사용하는 구성 파일을 생성합니다.

단순화를 위해 이 가이드에서는 최대 파티션이 2^10(1024)이고 각 개체의 복제본이 3개 있으며 파티션을 두 번 이상 이동하는 데 최소 1시간의 시간이 있는 영역 1개와 영역 2개를 사용합니다.

오브젝트 스토리지의 경우 파티션은 기존 파티션 테이블이 아닌 스토리지 장치의 디렉토리를 나타냅니다. 자세한 내용은 배포 안내서 를 참조하십시오 .



1. 계정 링 만들기


계정 서버는 계정 링을 사용하여 컨테이너 목록을 유지 관리합니다.


   1) /etc/swift 디렉토리로 변경합니다 .


   2) 기본 account.builder 파일을 만듭니다 .


      # swift-ring-builder account.builder create 10 3 1


   3) 링에 각 스토리지 노드를 추가합니다.


      # swift-ring-builder account.builder \

        add --region 1 --zone 1 --ip STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS --port 6202 \

        --device DEVICE_NAME --weight DEVICE_WEIGHT


      STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS스토리지 노드에 있는 관리 네트워크의 IP 주소로 바꿉니다.

      DEVICE_NAME동일한 스토리지 노드에서 스토리지 디바이스 이름으로 교체하십시오.

      예를 들어 /dev/sdb 저장 장치와 가중치가 100인 저장 장치 노드 설치 및 구성의 첫 번째 저장 장치 노드를 사용합니다.


      # swift-ring-builder account.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6202 --device sdb --weight 100


      각 스토리지 노드의 각 스토리지 장치에 대해 이 명령을 반복합니다. 예제 아키텍처에서 명령을 네 가지 변형으로 사용합니다.


      # swift-ring-builder account.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6202 --device sdb --weight 100

      Device d0r1z1-10.0.0.51:6202R10.0.0.51:6202/sdb_"" with 100.0 weight got id 0

      # swift-ring-builder account.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6202 --device sdc --weight 100

      Device d1r1z2-10.0.0.51:6202R10.0.0.51:6202/sdc_"" with 100.0 weight got id 1

      # swift-ring-builder account.builder add \

        --region 1 --zone 2 --ip 10.0.0.52 --port 6202 --device sdb --weight 100

      Device d2r1z3-10.0.0.52:6202R10.0.0.52:6202/sdb_"" with 100.0 weight got id 2

      # swift-ring-builder account.builder add \

        --region 1 --zone 2 --ip 10.0.0.52 --port 6202 --device sdc --weight 100

      Device d3r1z4-10.0.0.52:6202R10.0.0.52:6202/sdc_"" with 100.0 weight got id 3


   4) 링 내용을 확인합니다.


      # swift-ring-builder account.builder

      account.builder, build version 4

      1024 partitions, 3.000000 replicas, 1 regions, 2 zones, 4 devices, 100.00 balance, 0.00 dispersion

      The minimum number of hours before a partition can be reassigned is 1

      The overload factor is 0.00% (0.000000)

      Devices:    id  region  zone      ip address  port  replication ip  replication port      name weight partitions balance meta

                   0       1     1       10.0.0.51  6202       10.0.0.51              6202      sdb  100.00          0 -100.00

                   1       1     1       10.0.0.51  6202       10.0.0.51              6202      sdc  100.00          0 -100.00

                   2       1     2       10.0.0.52  6202       10.0.0.52              6202      sdb  100.00          0 -100.00

                   3       1     2       10.0.0.52  6202       10.0.0.52              6202      sdc  100.00          0 -100.00


   5) 링 균형 재조정:


      # swift-ring-builder account.builder rebalance

      Reassigned 1024 (100.00%) partitions. Balance is now 0.00.  Dispersion is now 0.00



2. 컨테이너 링 생성



컨테이너 서버는 컨테이너 링을 사용하여 개체 목록을 유지 관리합니다. 그러나 개체 위치는 추적하지 않습니다.


   1) /etc/swift디렉토리로 변경합니다 .


   2) 기본 container.builder파일을 만듭니다 .


      # swift-ring-builder container.builder create 10 3 1


   3) 링에 각 스토리지 노드를 추가합니다.


      # swift-ring-builder container.builder \

        add --region 1 --zone 1 --ip STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS --port 6201 \

        --device DEVICE_NAME --weight DEVICE_WEIGHT


      STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS를 스토리지 노드에 있는 관리 네트워크의 IP 주소로 바꿉니다.

      DEVICE_NAME을 동일한 스토리지 노드의 스토리지 디바이스 이름으로 바꿉니다.

      예를 들어 /dev/sdb 저장 장치와 가중치가 100인 저장 장치 노드 설치 및 구성의 첫 번째 저장 장치 노드를 사용합니다.


      # swift-ring-builder container.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6201 --device sdb --weight 100


      각 스토리지 노드의 각 스토리지 장치에 대해 이 명령을 반복합니다. 예제 아키텍처에서 명령을 네 가지 변형으로 사용합니다.


      # swift-ring-builder container.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6201 --device sdb --weight 100

      Device d0r1z1-10.0.0.51:6201R10.0.0.51:6201/sdb_"" with 100.0 weight got id 0

      # swift-ring-builder container.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6201 --device sdc --weight 100

      Device d1r1z2-10.0.0.51:6201R10.0.0.51:6201/sdc_"" with 100.0 weight got id 1

      # swift-ring-builder container.builder add \

        --region 1 --zone 2 --ip 10.0.0.52 --port 6201 --device sdb --weight 100

      Device d2r1z3-10.0.0.52:6201R10.0.0.52:6201/sdb_"" with 100.0 weight got id 2

      # swift-ring-builder container.builder add \

        --region 1 --zone 2 --ip 10.0.0.52 --port 6201 --device sdc --weight 100

      Device d3r1z4-10.0.0.52:6201R10.0.0.52:6201/sdc_"" with 100.0 weight got id 3


   4) 링 내용을 확인합니다.


      # swift-ring-builder container.builder

      container.builder, build version 4

      1024 partitions, 3.000000 replicas, 1 regions, 2 zones, 4 devices, 100.00 balance, 0.00 dispersion

      The minimum number of hours before a partition can be reassigned is 1

      The overload factor is 0.00% (0.000000)

      Devices:    id  region  zone      ip address  port  replication ip  replication port      name weight partitions balance meta

                   0       1     1       10.0.0.51  6201       10.0.0.51              6201      sdb  100.00          0 -100.00

                   1       1     1       10.0.0.51  6201       10.0.0.51              6201      sdc  100.00          0 -100.00

                   2       1     2       10.0.0.52  6201       10.0.0.52              6201      sdb  100.00          0 -100.00

                   3       1     2       10.0.0.52  6201       10.0.0.52              6201      sdc  100.00          0 -100.00


   5) 링 균형 재조정:


      # swift-ring-builder container.builder rebalance

      Reassigned 1024 (100.00%) partitions. Balance is now 0.00.  Dispersion is now 0.00



3. 객체 링 생성


개체 서버는 개체 링을 사용하여 로컬 장치의 개체 위치 목록을 유지 관리합니다.


   1) /etc/swift 디렉토리로 변경합니다.


   2) 기본 object.builder파일을 만듭니다.


      # swift-ring-builder object.builder create 10 3 1


   3) 링에 각 스토리지 노드를 추가합니다.


      # swift-ring-builder object.builder \

        add --region 1 --zone 1 --ip STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS --port 6200 \

        --device DEVICE_NAME --weight DEVICE_WEIGHT


      STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS를 스토리지 노드에 있는 관리 네트워크의 IP 주소로 바꿉니다.

      DEVICE_NAME을 동일한 스토리지 노드의 스토리지 디바이스 이름으로 바꿉니다.

      예를 들어 /dev/sdb 저장 장치와 가중치가 100인 저장 장치 노드 설치 및 구성의 첫 번째 저장 장치 노드를 사용합니다.


      # swift-ring-builder object.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6200 --device sdb --weight 100


      각 스토리지 노드의 각 스토리지 장치에 대해 이 명령을 반복합니다. 예제 아키텍처에서 명령을 네 가지 변형으로 사용합니다.


      # swift-ring-builder object.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6200 --device sdb --weight 100

      Device d0r1z1-10.0.0.51:6200R10.0.0.51:6200/sdb_"" with 100.0 weight got id 0

      # swift-ring-builder object.builder add \

        --region 1 --zone 1 --ip 10.0.0.51 --port 6200 --device sdc --weight 100

      Device d1r1z2-10.0.0.51:6200R10.0.0.51:6200/sdc_"" with 100.0 weight got id 1

      # swift-ring-builder object.builder add \

        --region 1 --zone 2 --ip 10.0.0.52 --port 6200 --device sdb --weight 100

      Device d2r1z3-10.0.0.52:6200R10.0.0.52:6200/sdb_"" with 100.0 weight got id 2

      # swift-ring-builder object.builder add \

        --region 1 --zone 2 --ip 10.0.0.52 --port 6200 --device sdc --weight 100

      Device d3r1z4-10.0.0.52:6200R10.0.0.52:6200/sdc_"" with 100.0 weight got id 3


   4) 링 내용을 확인합니다.


      # swift-ring-builder object.builder

      object.builder, build version 4

      1024 partitions, 3.000000 replicas, 1 regions, 2 zones, 4 devices, 100.00 balance, 0.00 dispersion

      The minimum number of hours before a partition can be reassigned is 1

      The overload factor is 0.00% (0.000000)

      Devices:    id  region  zone      ip address  port  replication ip  replication port      name weight partitions balance meta

                   0       1     1       10.0.0.51  6200       10.0.0.51              6200      sdb  100.00          0 -100.00

                   1       1     1       10.0.0.51  6200       10.0.0.51              6200      sdc  100.00          0 -100.00

                   2       1     2       10.0.0.52  6200       10.0.0.52              6200      sdb  100.00          0 -100.00

                   3       1     2       10.0.0.52  6200       10.0.0.52              6200      sdc  100.00          0 -100.00


   5) 링 균형 재조정


      # swift-ring-builder object.builder rebalance

      Reassigned 1024 (100.00%) partitions. Balance is now 0.00.  Dispersion is now 0.00



4. 링 구성 파일 배포


account.ring.gz, container.ring.gz 및 object.ring.gz 파일을 각 스토리지 노드 및 프록시 서비스를 실행하는 추가 노드의 /etc/swift 디렉토리에 복사합니다.



댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

사이트 정보

회사명 : (주)리눅스데이타시스템 / 대표 : 정정모
서울본사 : 서울특별시 강남구 봉은사로 114길 40 홍선빌딩 2층 / tel : 02-6207-1160
대전지사 : 대전광역시 유성구 노은로174 도원프라자 5층 / tel : 042-331-1161

접속자집계

오늘
331
어제
1,598
최대
3,935
전체
803,078
Copyright © www.linuxdata.org All rights reserved.