이 페이지에서는 Google Cloud 콘솔 또는 gcloud CLI를 사용하여 Filestore 인스턴스를 만드는 방법을 설명합니다.
인스턴스 만들기 안내
Google Cloud Console
Google Cloud 콘솔에서 Filestore 인스턴스 페이지로 이동합니다.
인스턴스 만들기를 클릭합니다.
이 페이지의 다음 섹션에 있는 안내에 따라 모든 필수 필드와 선택적 필드를 입력합니다.
만들기를 클릭합니다.
gcloud
시작하기 전에
gcloud CLI를 사용하려면 gcloud CLI를 설치하거나 Google Cloud 콘솔에서 기본 제공되는 Cloud Shell을 사용해야 합니다.
Filestore 인스턴스 만들기를 위한 gcloud
명령어
filestore
instances create
명령어를 실행하여 Filestore 인스턴스를 만들 수 있습니다. 대규모 SSD 인스턴스를 만들려면 gcloud beta filestore instances create
를 실행해야 하며, 대규모 SSD 할당량은 0
부터 시작되므로 먼저 할당량 상향 요청을 수행해야 합니다.
gcloud [beta] filestore instances create instance-id \
[--project=project-id] \
[--location=location] \
--tier=tier \
--file-share=name="file-share-name",capacity=file-share-size \
--network=name="vpc-network",[connect-mode=connect-mode],[reserved-ip-range="reserved-ip-address"]
[--labels=key=value,[key=value,…]]
[--kms-key=kms-key]
다음을 바꿉니다.
- instance-id는 만들려는 Filestore 인스턴스의 인스턴스 ID입니다. 인스턴스 이름 지정을 참조하세요.
project-id는 Filestore 인스턴스가 포함된 Cloud 프로젝트의 프로젝트 ID입니다. Filestore 인스턴스가
gcloud
기본 프로젝트에 있으면 이 플래그를 건너뛸 수 있습니다. 다음을 실행하여 기본 프로젝트를 설정할 수 있습니다.gcloud config set project project-id
location을 Filestore 인스턴스를 저장할 위치로 지정합니다. 위치 선택을 참조하세요. Filestore 인스턴스가
gcloud
기본 위치에 있으면 이 플래그를 건너뛸 수 있습니다. 다음을 실행하여 기본 위치를 설정할 수 있습니다.gcloud config set filestore/zone zone
또는 엔터프라이즈 등급인 경우:
gcloud config set filestore/region region
사용할 서비스 등급을 포함하는 tier.
file-share-name은 인스턴스에서 제공하는 NFS 파일 공유에 지정하는 이름입니다. 파일 공유 이름 지정을 참조하세요.
file-share-size는 원하는 파일 공유의 크기입니다. 용량 할당을 참조하세요.
vpc-network는 인스턴스에서 사용할 VPC 네트워크의 이름입니다. VPC 네트워크 선택을 참조하세요. 서비스 프로젝트에서 공유 VPC를 지정하려면
projects/HOST_PROJECT_ID/global/networks/SHARED_VPC_NAME
형식의 정규화된 네트워크 이름을 지정해야 하며connect-mode=PRIVATE_SERVICE_ACCESS
를 지정해야 합니다. 예를 들면 다음과 같습니다.--network=name=projects/host/global/networks/shared-vpc-1,connect-mode=PRIVATE_SERVICE_ACCESS
vpc-network 값에 레거시 네트워크를 지정할 수 없습니다. 필요한 경우 새 자동 모드 VPC 네트워크 만들기의 안내에 따라 사용할 VPC 네트워크를 새로 만드세요.
DIRECT_PEERING
또는PRIVATE_SERVICE_ACCESS
로 connect-mode. 공유 VPC를 네트워크로 지정하는 경우PRIVATE_SERVICE_ACCESS
를 연결 모드로 지정해야 합니다.reserved-ip-address는 Filestore 인스턴스의 IP 주소 범위입니다.
connect-mode=PRIVATE_SERVICE_ACCESS
를 지정하고 예약된 IP 주소 범위를 사용하려면 CIDR 범위가 아닌 할당된 주소 범위의 이름을 지정해야 합니다. 예약된 IP 주소 구성을 참조하세요. Filestore에서 무료 IP 주소 범위를 자동으로 찾아 인스턴스에 할당할 수 있도록 이 플래그를 건너뛰는 것이 좋습니다.key는 추가할 라벨입니다. Filestore 인스턴스를 만들 때는 라벨을 추가할 필요가 없습니다. 인스턴스를 만든 후 라벨을 추가, 삭제, 업데이트할 수도 있습니다. 자세한 내용은 라벨 관리를 참조하세요.
라벨의 값이 포함된 value.
kms-key는 자체 데이터 암호화를 관리하려는 경우에 사용할 Cloud KMS 암호화 키의 정규화된 이름입니다. 형식은 다음과 같습니다.
projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY
예
다음 명령어는 다음과 같은 특성을 가진 인스턴스를 만듭니다.
- ID는
render1
입니다. - 프로젝트는
myproject
입니다. - 영역은
us-central1-c
입니다. - 계층은
BASIC_HDD
입니다. - 파일 공유 이름은
my_vol
입니다. - 파일 공유 크기는 2TiB입니다.
- VPC 네트워크는
default
입니다. - 예약된 IP 주소 범위는
10.0.7.0/29
입니다. - IP 주소가
10.0.2.0
인 클라이언트에 루트 스쿼시된 읽기 및 쓰기 액세스 권한을 부여합니다.
gcloud beta filestore instances create render1 \
--project=myproject \
--zone=us-central1-c \
--tier=BASIC_HDD \
--network=name="default",reserved-ip-range="10.0.7.0/29"
--flags-file=nfs-export-options.json
nfs-export-options.json
파일 내용:
{
"--file-share":
{
"capacity": "2048",
"name": "my_vol",
"nfs-export-options": [
{
"access-mode": "READ_WRITE",
"ip-ranges": [
"10.0.0.0/29",
"10.2.0.0/29"
],
"squash-mode": "ROOT_SQUASH",
"anon_uid": 1003,
"anon_gid": 1003
},
{
"access-mode": "READ_ONLY",
"ip-ranges": [
"192.168.0.0/24"
],
"squash-mode": "NO_ROOT_SQUASH"
}
]
}
}
인스턴스 이름 지정
Filestore 인스턴스 이름 또는 인스턴스 ID가 인스턴스를 식별하는 데 사용되며 gcloud
명령어에 사용됩니다. 인스턴스 ID는 RFC 1035의 <label> 요소를 준수해야 합니다.
특히 다음 사항을 준수해야 합니다.
- 1~63자(영문 기준)
- 소문자로 시작함
- 대시, 소문자 또는 숫자로 구성됨
- 소문자 또는 숫자로 끝남
인스턴스 ID는 Cloud 프로젝트와 인스턴스가 있는 영역에서 고유해야 합니다. 인스턴스가 생성되면 인스턴스 ID를 변경할 수 없습니다.
서비스 등급 선택
Filestore 인스턴스의 서비스 등급은 인스턴스 유형과 스토리지 유형의 조합입니다. 인스턴스가 생성되면 서비스 등급을 변경할 수 없습니다.
인스턴스 유형
니즈에 가장 잘 맞는 인스턴스 유형을 선택합니다. 다음 표에서는 기본, 대규모 및 엔터프라이즈 인스턴스 유형의 차이점을 보여줍니다.
특성 | 기본 | 대규모 | 엔터프라이즈 |
---|---|---|---|
용량 | 1~63.9TiB | 10~100TiB | 1~10TiB |
확장성 | 1GiB 단위 또는 그 배수로 증가합니다. | 2.5TiB 단위로 또는 그 배수로 증가/감소합니다. | 256GiB 또는 그 배수로 증가/감소합니다. |
성능 |
|
용량에 따라 선형적으로 확장됩니다. | 용량에 따라 선형적으로 확장됩니다. |
대규모 SSD 및 엔터프라이즈 등급 인스턴스는 인스턴스 크기에 따라 15분~1시간이 소요됩니다.
Filestore 할당량은 인스턴스 생성이 시작될 때 사용되지만 이 기간 동안에는 인스턴스에 대한 요금이 청구되지 않습니다.
서비스 등급에 대한 자세한 내용은 서비스 등급 페이지를 참조하세요.
스토리지 유형
기본 등급의 경우 성능 요구에 맞게 HDD 또는 SSD를 선택합니다. 성능이 중요한 워크로드에는 SSD를 사용하는 것이 좋습니다. 대규모 또는 엔터프라이즈 인스턴스에는 HDD를 사용할 수 없습니다. 다음 표에서는 기본 HDD, 기본 SSD, 대규모 SSD, 엔터프라이즈 등급 인스턴스 간의 성능 차이를 강조표시합니다. 대규모 SSD 등급 인스턴스 성능은 인스턴스 용량에 따라 자동으로 확장됩니다.
사양 | 기본 HDD | 기본 SSD | 대규모 SSD | 엔터프라이즈 |
---|---|---|---|---|
읽기 IOPS |
|
60,000 | 90,000~480,000 | 12,000~120,000 |
쓰기 IOPS |
|
25,000 | 30,000~160,000 | 4,000~40,000 |
읽기 처리량(MB/초) |
|
1,200 | 3,000~16,000 | 120~1,200 |
쓰기 처리량(MB/초) |
|
350 | 660~3,520 | 100~1,000 |
성능에 대한 자세한 내용은 성능 페이지를 참조하세요.
용량 할당
인스턴스를 생성할 때 필요한 양에 용량을 할당합니다. 용량 한도에 가까워지면 런타임에 영향을 주지 않고 필요에 따라 용량을 확장할 수 있습니다. 인스턴스 용량을 모니터링하는 방법은 인스턴스 모니터링을 참조하세요.
gcloud CLI에서 GiB
또는 TiB
를 사용하여 용량을 정수로 지정할 수 있습니다. 기본 단위는 GiB
입니다.
다음 표는 각 등급에 사용할 수 있는 인스턴스 크기를 보여줍니다.
등급 | 최소 크기 | 최대 크기 | 최소 단계 크기 |
---|---|---|---|
기본 HDD | 1TiB | 63.9TiB | 1GiB |
기본 SSD | 2.5TiB | 63.9TiB | 1GiB |
대규모 SSD | 10TiB | 100TiB | 2.5TiB |
엔터프라이즈 | 1TiB | 10TiB | 256GiB |
인스턴스 크기는 전체 기비바이트 값이거나 최소 인스턴스 크기와 최대 인스턴스 크기 사이인 해당 테비바이트 값일 수 있으며 최소 단계 크기로 나눌 수 있습니다. 예를 들어 유효한 대규모 SSD 인스턴스 크기에는 10TiB, 12.5TiB, 15TiB가 포함됩니다.
기본 등급 인스턴스의 크기는 생성된 후 확장만 할 수 있으며, 엔터프라이즈 및 대규모 등급 인스턴스의 크기는 확장 또는 축소할 수 있습니다. 자세한 내용은 용량 확장을 참조하세요.
총 용량 할당량
모든 프로젝트에는 각 리전의 기본, 엔터프라이즈, 대규모 인스턴스에 별도의 용량 할당량이 할당됩니다. 할당량 한도에 도달하면 Filestore 인스턴스를 추가로 만들거나 기존 인스턴스의 용량을 늘릴 수 없습니다. 사용 가능한 할당량을 보려면 Google Cloud 콘솔에서 할당량 페이지로 이동합니다.
할당량 추가 요청 방법에 대한 자세한 내용은 할당량 상향 조정 요청을 참조하세요.
파일 공유 이름 지정
파일 공유는 모든 공유 파일이 저장된 Filestore 인스턴스의 디렉터리입니다. 클라이언트 VM에서 마운트하거나 매핑하는 항목이기도 합니다.
파일 공유의 이름은 다음을 준수해야 합니다.
- 대규모 SSD 및 엔터프라이즈 등급은 영문 기준 1~32자, 기본 HDD 및 기본 SSD 등급은 영문 기준 1~16자입니다.
- 문자로 시작함
- 대문자, 소문자, 숫자, 밑줄로 구성
- 문자 또는 숫자로 끝나야 합니다.
VPC 네트워크 선택
Filestore와 함께 사용하도록 선택한 네트워크는 표준 VPC 네트워크 또는 공유 VPC 네트워크일 수 있습니다. 두 경우 모두 선택한 네트워크에 Filestore 인스턴스에 사용할 수 있는 충분한 IP 리소스가 있어야 합니다. 그렇지 않으면 인스턴스가 생성되지 않습니다.
클라이언트에서 해당 인스턴스에 저장된 파일에 액세스하려면 클라이언트는 Filestore 인스턴스와 동일한 네트워크에 있어야 합니다. 인스턴스가 생성되면 이 네트워크 선택 항목을 변경할 수 없습니다.
공유된 VPC 네트워크
서비스 프로젝트에서 공유 VPC 네트워크에 인스턴스를 만들려면 먼저 네트워크 관리자가 공유 VPC 네트워크에 대해 비공개 서비스 액세스를 사용 설정해야 합니다. 호스트 프로젝트에서 인스턴스를 만드는 경우 비공개 서비스 액세스가 필요하지 않습니다.
공유 VPC 네트워크는 Google Cloud 콘솔에 다음 형식으로 표시됩니다.
projects/HOST_PROJECT_ID/global/networks/SHARED_VPC_NAME
자세한 내용은 공유 VPC 네트워크에서 인스턴스 만들기를 참조하세요.
NFS 파일 잠금
이 Filestore 인스턴스와 함께 사용하려는 애플리케이션에서 NFS 파일 잠금이 필요하면 다음 중 하나를 선택합니다.
- 기본 네트워크 이외의 VPC 네트워크
- 방화벽 규칙이 변경된 기본 VPC 네트워크
그런 다음 선택한 네트워크에서 Filestore가 사용하는 포트를 열어야 할 수도 있습니다. 자세한 내용은 방화벽 규칙 구성을 참조하세요.
위치 선택
위치는 Filestore 인스턴스가 있는 리전과 영역을 나타냅니다. 최상의 성능을 제공하고 리전 간 네트워킹 요금을 방지하려면 Filestore 인스턴스가 인스턴스에 액세스해야 하는 Compute Engine VM과 동일한 리전에 있는지 확인합니다.
리전과 영역에 대한 자세한 내용은 위치 및 리전을 참조하세요.
IP 기반 액세스 제어 구성
기본적으로 Filestore 인스턴스는 동일한 Cloud 프로젝트 및 VPC 네트워크를 공유하는 Compute Engine VM 및 GKE 클러스터를 포함한 모든 클라이언트에 루트 수준의 읽기 및 쓰기 액세스 권한을 부여합니다. 액세스를 제한하려면 IP 주소를 기반으로 클라이언트에 특정 액세스 수준을 부여하는 규칙을 만들면 됩니다. 규칙이 추가되면 규칙에 지정되지 않은 모든 IP 주소 및 범위에 대한 액세스가 취소됩니다.
다음 표에서는 각 액세스 수준의 권한을 설명합니다. 이러한 액세스 수준은 Google Cloud 콘솔에서만 사용됩니다. gcloud CLI와 API에서 규칙 구성을 직접 지정해야 합니다.
액세스 수준 | 규칙 구성 | 설명 |
---|---|---|
관리자 |
|
클라이언트는 모든 파일, 폴더, 메타데이터를 루트 사용자로 보고 수정할 수 있습니다. 또한 uid 및 gid 를 설정하여 파일 또는 폴더에 소유권을 부여할 수 있고, 이렇게 함으로써 파일 공유에 대해 루트 수준 액세스 권한이 없는 클라이언트에 액세스 권한을 부여할 수 있습니다. |
관리자-뷰어 |
|
클라이언트는 모든 파일, 폴더, 메타데이터를 루트 사용자로 볼 수 있지만 수정할 수 없습니다. |
편집자 |
|
클라이언트는 할당된 uid 및 gid 에 따라 파일, 폴더, 메타데이터를 보고 수정할 수 있습니다. |
뷰어 |
|
클라이언트는 할당된 uid 및 gid 에 따라 파일, 폴더, 메타데이터를 볼 수 있습니다. |
root-squash
는 uid 0
및 gid 0
의 모든 요청을 각각 anon_uid
및 anon_gid
에 매핑합니다. 이 구성을 사용하면 루트 사용자로 파일 공유에 액세스하려는 클라이언트에서 루트 수준 액세스 권한이 삭제됩니다.
IP 기반 액세스 규칙을 만드는 경우:
- 내부 IP 주소 또는 범위와 부여되는 액세스 수준을 지정해야 합니다.
- 전체 구성에서 IP 주소 또는 범위가 겹칠 수 없습니다.
- 인스턴스 생성 시 하나 이상의 규칙에서
admin
액세스 권한을 부여해야 합니다. 이 규칙은 인스턴스가 생성되면 삭제될 수 있습니다.
Google Cloud 콘솔에서는 최대 64개의 서로 다른 IP 주소 또는 범위와 관련된 최대 4개의 규칙(관리자, 관리자-뷰어, 편집자, 뷰어)을 만들 수 있습니다.
gcloud CLI에서 서로 다른 규칙 최대 10개에서 Filestore 인스턴스당 서로 다른 IP 주소 또는 CIDR 블록을 최대 64개까지 구성할 수 있습니다. 규칙은 access-mode
, squash-mode
, anon_uid
/anon_gid
구성의 조합으로 정의됩니다. anon_uid
및 anon_gid
필드의 기본값은 65534
이며 API와 gcloud CLI를 통해서만 구성될 수 있습니다.
예
다음은 3가지 IP 기반 액세스 규칙의 예시입니다.
access-mode=READ_ONLY
,squash-mode=ROOT_SQUASH
,anon_uid=10000
access-mode=READ_WRITE
,squash-mode=ROOT_SQUASH
,anon_gid=150
access-mode=READ_WRITE
,squash-mode=NO_ROOT_SQUASH
.
gcloud CLI를 사용하여 IP 기반 액세스 제어 규칙을 만들려면 instances create
또는 instances update
명령어와 함께 --flag-file
플래그를 사용하여 json 구성 파일을 가리킵니다. 예를 들어 json 구성 파일 이름이 nfs-export-options.json이면 플래그는 다음과 같습니다.
--flag-file=nfs-export-options.json
json 구성 파일 예시:
{
"--file-share":
{
"capacity": "2048",
"name": "my_vol",
"nfs-export-options": [
{
"access-mode": "READ_WRITE",
"ip-ranges": [
"10.0.0.0/29",
"10.2.0.0/29"
],
"squash-mode": "ROOT_SQUASH",
"anon_uid": 1003,
"anon_gid": 1003
},
{
"access-mode": "READ_ONLY",
"ip-ranges": [
"192.168.0.0/24"
],
"squash-mode": "NO_ROOT_SQUASH"
}
]
}
}
- ip-ranges는 액세스 권한을 부여할 IP 주소 또는 범위입니다. 여러 IP 주소 또는 범위를 쉼표로 구분하여 지정할 수 있습니다. 구성에서 IP 주소 또는 범위가 겹칠 수 없습니다.
- access-mode는 IP 주소가 ip-range 내에 있는 클라이언트에 부여하는 액세스 수준입니다. 값은
READ_WRITE
또는READ_ONLY
일 수 있습니다. 기본값은READ_WRITE
입니다. - squash-mode는 값이
ROOT_SQUASH
또는NO_ROOT_SQUASH
일 수 있습니다.ROOT_SQUASH
는 IP 주소가 ip-range 내에 있는 클라이언트에 대한 루트 수준 액세스 권한을 삭제하고,NO_ROOT_SQUASH
는 루트 액세스를 사용 설정합니다. 기본값은NO_ROOT_SQUASH
입니다. - anon_uid는
anon_uid
에 매핑할 사용자 ID 값입니다. 기본값은65534
입니다. - anon_gid는
anon_gid
에 매핑할 그룹 ID 값입니다. 기본값은65534
입니다.
RFC 1918 이외 범위의 클라이언트
RFC 1918 이외의 클라이언트를 Filestore 인스턴스에 연결하려면 IP- 기반 액세스 제어를 사용하여 Filestore 인스턴스에 대한 액세스 권한을 명시적으로 부여해야 합니다.
선택사항 입력란
인스턴스 설명 추가
인스턴스 설명을 사용하면 자신과 다른 사용자를 위해 설명, 메모 또는 간단한 안내를 작성할 수 있습니다. 예를 들어 다음과 같은 정보를 포함할 수 있습니다.
- 인스턴스에 저장된 파일의 유형
- 인스턴스에 액세스할 수 있는 사용자
- 인스턴스에 액세스하는 방법 안내
- 인스턴스가 사용되는 대상
인스턴스 설명 길이는 2048자로 제한됩니다. 허용되는 문자에는 제한이 없습니다. Filestore 인스턴스가 생성되면 요구에 따라 언제든지 인스턴스 설명을 업데이트할 수 있습니다. 인스턴스 설명을 업데이트하는 방법에 대한 자세한 내용은 인스턴스 수정을 참조하세요.
라벨 추가
라벨은 관련된 인스턴스를 그룹화하고 인스턴스에 대한 메타데이터를 저장하는 데 사용할 수 있는 키-값 쌍입니다. 언제든지 라벨을 추가, 삭제 또는 수정할 수 있습니다. 자세한 내용은 라벨 관리를 참조하세요.
예약된 IP 주소 범위 구성
IP 주소 범위는 내부 IP 주소 범위(10.0.0.0/8
, 172.16.0.0/12
, 192.168.0.0/16
) 중 하나의 하위 집합이어야 합니다. 기본 등급 인스턴스는 블록 크기가 29여야 하고, 엔터프라이즈 및 대규모 등급 인스턴스는 블록 크기가 24여야 합니다. 선택한 IP 주소 범위는 다음 항목과 겹치지 않아야 합니다.
- 선택한 VPC 네트워크의 기존 서브넷
- 선택한 VPC 네트워크에서 기존 Filestore 인스턴스의 예약된 IP 주소 범위
기본 SSD 또는 기본 HDD 인스턴스를 만드는 경우 IP 주소는 172.17.0.0/16 범위와 겹칠 수 없습니다. 이 범위는 내부 구성요소용으로 예약되어 있기 때문입니다.
네트워크의 서브넷에 대한 IP 주소 범위는 Google Cloud Console의 VPC 네트워크 페이지로 이동하여 확인할 수 있습니다.
Google Cloud 콘솔의 Filestore 인스턴스 페이지에서 모든 Filestore 인스턴스에 대해 예약된 IP 주소 범위를 가져올 수 있습니다.
유효한 Filestore 인스턴스 IP 주소 범위의 예시는 기본 등급 인스턴스의 경우 10.0.0.0/29
, 대규모 등급 인스턴스의 경우 172.16.1.0/24
, 엔터프라이즈 등급 인스턴스의 경우 192.168.0.0/26
입니다.
비공개 서비스 액세스를 사용하고 예약된 IP 주소 범위를 지정하려면 연결에 대해 할당된 주소 범위의 이름을 지정해야 합니다. 범위 이름을 지정하지 않으면 Filestore가 비공개 서비스 액세스 연결과 연결된 할당 범위를 자동으로 사용합니다.
고객 관리 암호화 키 사용
기본적으로 Google Cloud는 Google에서 관리하는 암호화 키를 사용하여 자동으로 저장 데이터를 암호화합니다. 데이터를 보호하는 키를 더 세밀하게 제어해야 하는 경우 Filestore용 고객 관리 암호화 키(CMEK)를 사용할 수 있습니다. 자세한 내용은 고객 관리 암호화 키로 데이터 암호화를 참조하세요.
다음 단계
- 인스턴스 세부정보를 검색하여 인스턴스의 IP 주소를 가져옵니다. 클라이언트에서 Filestore 파일 공유에 액세스하려면 인스턴스 IP 주소가 필요합니다.
- Compute Engine VM 인스턴스에서 Filestore 파일 공유 마운트
- Google Kubernetes Engine 클러스터에서 Filestore 파일 공유에 액세스
- Filestore와 관련된 인스턴스 생성 문제 해결