이 페이지에서는 Cloud Console 또는 gcloud
도구를 사용하여 Filestore 인스턴스를 만드는 방법을 설명합니다.
인스턴스 만들기 안내
Cloud Console
다음 단계를 수행하여 Cloud Console로 Filestore 인스턴스를 만들 수 있습니다. 대규모 SSD 할당량은 0
에서 시작되므로 대규모 SSD를 만들려면 먼저 대규모 SSD 할당량 증가 요청을 하고 승인받아야 합니다.
Cloud Console에서 Filestore 인스턴스 페이지로 이동합니다.
인스턴스 만들기를 클릭합니다.
이 페이지의 다음 섹션에 있는 안내에 따라 모든 필수 필드와 선택적 필드를 입력합니다.
만들기를 클릭합니다.
gcloud
시작하기 전에
gcloud
도구를 사용하려면 Cloud SDK를 설치하거나 Cloud Console에 내장된 Cloud Shell 를 사용해야 합니다.
Filestore 인스턴스를 만들기 위한 gcloud
gcloud 명령어
instances
create
명령어를 실행하여 Filestore 인스턴스를 만들 수 있습니다. 대규모 SDD 인스턴스를 만들려면 gcloud beta filestore instances create
을 실행해야 합니다. 또한 대규모 SSD 할당량은 0
에서 시작하므로 대규모 등급 인스턴스를 만들려면 먼저 대규모 SSD 할당량 증가 요청을 하고 승인받아야 합니다.
gcloud [beta] filestore instances create instance-id \
--[project=project-id] \
--[zone=zone] \
--tier=tier \
--file-share=name="file-share-name",capacity=file-share-size \
--network=name="vpc-network",[reserved-ip-range="reserved-ip-address"]
--[labels=key=value,[key=value,…]]
각 매개변수는 다음과 같습니다.
- instance-id는 만들려는 Filestore 인스턴스의 인스턴스 ID입니다. 인스턴스 이름 지정을 참조하세요.
project-id는 Filestore 인스턴스가 포함된 Cloud 프로젝트의 프로젝트 ID입니다. Filestore 인스턴스가
gcloud
기본 프로젝트에 있으면 이 플래그를 건너뛸 수 있습니다. 다음을 실행하여 기본 프로젝트를 설정할 수 있습니다.gcloud config set project project-id
zone은 Filestore 인스턴스가 있는 영역입니다. 위치 선택을 참조하세요.
gcloud filestore zones list
명령어를 실행하여 지원되는 영역 목록을 가져옵니다. Filestore 인스턴스가gcloud
기본 영역에 있으면 이 플래그를 건너뛸 수 있습니다. 다음을 실행하여 기본 영역을 설정할 수 있습니다.gcloud config set filestore/zone zone
tier는
BASIC_HDD
,BASIC_SSD
또는HIGH_SCALE_SSD
의 값일 수 있습니다. 명령어에beta
를 지정하지 않으면 'STANDARDfor
BASID_HDDand
PREMIUMfor
BASIC_SSD'를 사용해야 합니다. 자세한 내용은 서비스 등급을 참조하세요.file-share-name은 인스턴스에서 제공하는 NFS 파일 공유에 지정하는 이름입니다. 파일 공유 이름 지정을 참조하세요.
file-share-size는 원하는 파일 공유의 크기입니다. 최소 파일 공유 크기는
BASIC_HDD
등급 인스턴스의 경우 1테라바이트(TB
),BASIC_SSD
등급 인스턴스의 경우 2.5TB
, 대규모 SSD 등급 인스턴스의 경우 60TB
입니다. 용량 증가를 참조하세요.vpc-network는 인스턴스에서 사용할 VPC 네트워크의 이름입니다. 승인된 네트워크 선택을 참조하세요. vpc-network 값에 레거시 네트워크를 지정할 수 없습니다. 필요한 경우 새 자동 모드 VPC 네트워크 만들기의 안내에 따라 사용할 VPC 네트워크를 새로 만드세요.
reserved-ip-address는 Filestore 인스턴스의 IP 주소 범위입니다. 예약된 IP 주소 구성을 참조하세요. Filestore에서 무료 IP 주소 범위를 자동으로 찾아 인스턴스에 할당할 수 있도록 이 플래그를 건너뛰는 것이 좋습니다.
key는 추가할 라벨입니다. Filestore 인스턴스를 만들 때는 라벨을 추가할 필요가 없습니다. 인스턴스를 만든 후 라벨을 추가, 삭제, 업데이트할 수도 있습니다. 자세한 내용은 라벨 관리를 참조하세요.
value는 라벨 값입니다.
예시
다음 명령어는 다음과 같은 특성을 가진 인스턴스를 만듭니다.
- ID는
render1
입니다. - 프로젝트는
myproject
입니다. - 영역은
us-central1-c
입니다. - 계층은
BASIC_HDD
입니다. - 파일 공유 이름은
NFSvol
입니다. - 파일 공유 크기는 2
TB
입니다. - 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": "102400",
"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 인스턴스의 서비스 등급은 인스턴스 유형과 스토리지 유형의 조합입니다. 인스턴스가 생성되면 서비스 등급을 변경할 수 없습니다.
인스턴스 유형
니즈에 가장 잘 맞는 인스턴스 유형을 선택합니다. 인스턴스에 63.9TB
이상의 저장용량이 필요하지 않다고 예상되면 기본을 선택하는 것이 좋습니다. 그러나 대규모 등급은 다중 클라이언트 시나리오에서 전반적으로 뛰어난 성능을 제공합니다. 워크로드가 성능에 중요하고 여러 클라이언트에 분산되어 있는 경우, 성능상의 이점을 위해 대규모 등급 인스턴스를 계속 배포할 수 있습니다. 다음 표는 기본 및 대규모 인스턴스 유형의 차이점을 보여줍니다.
기능 | 기본 | 대규모 |
---|---|---|
용량 | 1-63.9TB |
60-320TB |
확장성 | 용량은 런타임 중에 1GB 단위로 또는 그 배수로 늘릴 수 있습니다. |
용량은 런타임 중에 10TB 단위로 또는 그 배수로 늘리거나 줄일 수 있습니다. |
성능 | 10TB 의 성능 단계가 있는 정적 항목입니다. |
용량에 따라 선형적으로 확장됩니다. |
대규모 SSD 등급 인스턴스는 인스턴스 크기에 따라 15분~1시간이 소요됩니다.
Filestore 할당량은 인스턴스 생성이 시작될 때 사용되지만 이 기간 동안에는 인스턴스에 대한 요금이 청구되지 않습니다.
서비스 등급에 대한 자세한 내용은 서비스 등급 페이지를 참조하세요.
저장소 유형
성능 니즈에 따라 HDD 또는 SSD를 선택합니다. 성능이 중요한 워크로드에는 SSD를 사용하는 것이 좋습니다. 대규모 인스턴스에는 HDD를 사용할 수 없습니다. 다음 표에서는 기본 HDD, 기본 SSD, 대규모 SSD 등급 인스턴스 간의 속도 차이를 강조합니다. 대규모 SSD 등급 인스턴스 성능은 인스턴스 용량에 따라 자동으로 확장됩니다.
사양 | 기본 HDD | 기본 SSD | 대규모 SSD |
---|---|---|---|
읽기 IOPS |
|
60,000 | 90,000-480,000 |
쓰기 IOPS |
|
25,000 | 30,000-160,000 |
읽기 처리량(MB/초) |
|
1,200 | 3,000-16,000 |
쓰기 처리량(MB/초) |
|
350 | 660-3,520 |
성능에 대한 자세한 내용은 성능 페이지를 참조하세요.
용량 할당
Filestore 인스턴스 용량은 런타임에 영향을 주지 않고 확장될 수 있고 인스턴스의 할당된 크기에 따라 비용이 청구되므로 인스턴스를 만들 때 용량을 현재 필요한 양으로 설정할 수 있습니다. 용량 한도에 가까워지면 니즈에 따라 용량을 확장할 수 있습니다. 인스턴스 용량을 모니터링하는 방법은 인스턴스 모니터링을 참조하세요.
GB
또는 TB
를 사용하여 용량을 정수로 지정할 수 있습니다. 기본 단위는 GB
입니다.
다음 표는 각 등급에 사용할 수 있는 인스턴스 크기를 보여줍니다.
등급 | 최소 크기 | 최대 크기 | 최소 증분 |
---|---|---|---|
기본 HDD | 1TB (1024GB ) |
63.9TB (65433GB ) |
1GB |
기본 SSD | 2.5TB (2560GB ) |
63.9TB (65433GB ) |
1GB |
대규모 SSD | 60TB (61440GB ) |
320TB (327680GB ) |
10TB |
기본 등급 인스턴스의 크기는 전체 기비바이트 값이거나 최대 인스턴스 크기와 최소 인스턴스 크기 사이의 테비바이트일 수 있습니다. 대규모 등급 인스턴스의 크기는 10테비바이트 또는 해당 기비바이트의 배수인 최대 인스턴스 크기와 최소 인스턴스 크기 사이의 값일 수 있습니다. 단위에 대한 자세한 내용은 스토리지 크기 단위를 참조하세요.
기본 등급 인스턴스의 크기는 생성된 후 확장만 할 수 있으며, 대규모 등급 인스턴스의 크기는 확장 또는 축소할 수 있습니다. 자세한 내용은 용량 확장을 참조하세요.
총 용량 할당량
모든 프로젝트에는 각 Google Cloud 리전의 기본 및 대규모 인스턴스에 별도의 용량 할당량이 할당됩니다. 할당량 한도에 도달하면 Filestore 인스턴스를 추가로 만들거나 기존 인스턴스의 용량을 늘릴 수 없습니다. 사용 가능한 할당량을 확인하려면 Google Cloud Console에서 할당량 페이지로 이동합니다.
할당량 추가 요청 방법에 대한 자세한 내용은 할당량 증가 요청을 참조하세요.
파일 공유 이름 지정
파일 공유는 모든 공유 파일이 저장된 Filestore 인스턴스의 디렉터리입니다. 클라이언트 VM에서 마운트하거나 매핑하는 항목이기도 합니다.
파일 공유의 이름은 다음을 준수해야 합니다.
- 1~16자(영문 기준)
- 문자로 시작함
- 대문자, 소문자, 숫자, 밑줄로 구성
- 문자 또는 숫자로 끝남
승인된 네트워크 선택
승인된 네트워크는 Filestore 인스턴스가 생성될 때 피어링하는 Cloud 프로젝트의 VPC 네트워크입니다. Compute Engine VM은 인스턴스에 저장된 공유 파일에 액세스하도록 Filestore 인스턴스와 동일한 네트워크에 있어야 합니다. 인스턴스를 만들면 승인된 네트워크를 변경할 수 없습니다.
공유 VPC 서비스 프로젝트를 사용하는 경우 공유 VPC 네트워크에 직접 Filestore 인스턴스를 만들 수 없습니다. 자세한 내용은 알려진 문제를 참조하세요.
이 Filestore 인스턴스와 함께 사용하려는 애플리케이션에서 NFS 파일 잠금이 필요하면 다음 중 하나를 선택합니다.
- 기본 네트워크 이외의 VPC 네트워크
- 방화벽 규칙이 변경된 기본 VPC 네트워크
그런 다음 선택한 네트워크에서 Filestore가 사용하는 포트를 열어야 할 수도 있습니다. 자세한 내용은 방화벽 규칙 구성을 참조하세요.
위치 선택
위치는 Filestore 인스턴스가 있는 리전과 영역을 나타냅니다. 최상의 성능을 제공하고 리전 간 네트워킹 요금을 방지하려면 Filestore 인스턴스가 인스턴스에 액세스해야 하는 Compute Engine VM과 동일한 리전에 있는지 확인합니다.
리전과 영역에 대한 자세한 내용은 위치 및 리전을 참조하세요.
IP 기반 액세스 제어 구성
기본적으로 Filestore 인스턴스는 동일한 Cloud 프로젝트 및 VPC 네트워크를 공유하는 Compute Engine VM 및 GKE 클러스터를 포함한 모든 클라이언트에 루트 수준의 읽기 및 쓰기 액세스 권한을 부여합니다. 액세스를 제한하려면 IP 주소를 기반으로 클라이언트에 특정 액세스 수준을 부여하는 규칙을 만들면 됩니다. 규칙이 추가되면 규칙에 지정되지 않은 모든 IP 주소 및 범위에 대한 액세스가 취소됩니다.
다음 표에서는 각 액세스 수준의 권한을 설명합니다. 이러한 액세스 수준은 Cloud Console에서만 사용됩니다. gcloud
도구와 API에서 규칙 구성을 직접 지정해야 합니다.
액세스 수준 | 규칙 구성 | 설명 |
---|---|---|
관리자 |
|
클라이언트는 모든 파일, 폴더, 메타 데이터를 루트 사용자로 보고 수정할 수 있습니다. 또한 uid 및 gid 를 설정하여 파일 또는 폴더에 대한 소유권을 부여할 수 있으므로 파일 공유에 대한 루트 수준 액세스 권한이 없는 클라이언트에 액세스 권한을 부여할 수 있습니다. |
관리자-뷰어 |
|
클라이언트는 모든 파일, 폴더, 메타 데이터를 루트 사용자로 볼 수 있지만 수정할 수 없습니다. |
편집자 |
|
클라이언트는 할당된 uid 및 gid 에 따라 파일, 폴더, 메타데이터를 보고 수정할 수 있습니다. |
뷰어 |
|
클라이언트는 할당된 uid 및 gid 에 따라 파일, 폴더, 메타데이터를 볼 수 있습니다. |
root-squash
는 uid 0
및 gid 0
의 모든 요청을 각각 anon_uid
및 anon_gid
에 매핑합니다. 이렇게 하면 루트 사용자로 파일 공유에 액세스하려는 클라이언트에서 루트 수준 액세스 권한이 삭제됩니다.
IP 기반 액세스 규칙을 만들 때는 내부 IP 주소 또는 범위와 부여된 액세스 수준을 지정해야 합니다. 인스턴스를 만들 때 규칙 한 개 이상에 admin
액세스 권한을 부여해야 합니다. 이 규칙은 인스턴스가 생성되면 삭제될 수 있습니다. Cloud Console에서 서로 다른 IP 주소 또는 범위를 최대 64개까지 포함하는 규칙을 최대 10개까지 만들 수 있습니다.
gcloud
도구에서 서로 다른 규칙 최대 10개에서 Filestore 인스턴스당 서로 다른 IP 주소 또는 CIDR 블록을 최대 64개까지 구성할 수 있습니다. 규칙은 access-mode
, squash-mode
, anon_uid
/anon_gid
구성의 조합으로 정의됩니다. anon_uid
및 anon_gid
필드의 기본값은 65534
이며 API와 gcloud
도구를 통해서만 구성될 수 있습니다.
예시
다음은 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
도구를 사용하여 IP 기반 액세스 제어 규칙을 만들려면 instances create
또는 instances update
명령어와 함께 --flag-file
플래그를 사용하여 json 구성 파일을 가리킵니다. 예를 들어 json 구성 파일 이름이 nfs-export-options.json이면 플래그는 다음과 같습니다.
--flag-file=nfs-export-options.json
json 구성 파일 예시:
{
"--file-share":
{
"capacity": "102400",
"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 주소 또는 범위를 쉼표로 구분하여 지정할 수 있습니다. 예시:
10.0.1.0
,10.0.2.0
, ... - 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
입니다.
선택 필드
인스턴스 설명 추가
인스턴스 설명을 사용하면 자신과 다른 사용자를 위해 설명, 메모 또는 간단한 안내를 작성할 수 있습니다. 예를 들어 다음과 같은 정보를 포함할 수 있습니다.
- 인스턴스에 저장된 파일의 유형
- 인스턴스에 액세스할 수 있는 사용자
- 인스턴스에 액세스하는 방법 안내
- 인스턴스가 사용되는 대상
인스턴스 설명 길이는 2048자로 제한됩니다. 허용되는 문자에는 제한이 없습니다. Filestore 인스턴스가 생성되면 니즈에 따라 언제든지 인스턴스 설명을 업데이트할 수 있습니다. 인스턴스 설명을 업데이트하는 방법에 대한 자세한 내용은 인스턴스 수정을 참조하세요.
라벨 추가
라벨은 관련된 인스턴스를 그룹화하고 인스턴스에 대한 메타데이터를 저장하는 데 사용할 수 있는 키-값 쌍입니다. 언제든지 라벨을 추가, 삭제 또는 수정할 수 있습니다. 자세한 내용은 라벨 관리를 참조하세요.
예약된 IP 주소 범위 구성
IP 주소 범위는 기본 IP 주소 범위(10.0.0.0/8
, 172.16.0.0/12
, 192.168.0.0/16
) 중 하나의 부분 집합이어야 하며 기본 등급 인스턴스의 블록 크기는 29이고 대규모 등급 인스턴스의 블록 크기는 23이어야 합니다.
선택할 IP 주소 범위는 선택한 VPC 네트워크의 기존 서브넷 또는 해당 네트워크에 있는 기존 Filestore 인스턴스에 예약된 IP 주소 범위와 겹치지 않아야 합니다.
네트워크의 서브넷에 대한 IP 주소 범위는 Google Cloud Console의 VPC 네트워크로 이동하여 확인할 수 있습니다.
Google Cloud Console의 Filestore 인스턴스 페이지에서 모든 Filestore 인스턴스에 대해 예약된 IP 주소 범위를 가져올 수 있습니다.
유효한 Filestore 인스턴스 IP 주소 범위의 예시는 기본 등급 인스턴스의 경우 10.0.0.0/29
이고 대규모 등급 인스턴스의 경우 172.16.1.0/23
입니다.
다음 단계
- 인스턴스 세부정보를 검색하여 인스턴스의 IP 주소를 가져옵니다. 클라이언트에서 Filestore 파일 공유에 액세스하려면 필요합니다.
- Compute Engine VM 인스턴스에서 Filestore 파일 공유 마운트
- Google Kubernetes Engine 클러스터에서 Filestore 파일 공유에 액세스