

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 스페이스 생성 및 관리
<a name="create-manage-spaces"></a>

데이터 과학자는를 나열하여 액세스할 수 있는 모든 스페이스를 보고, 템플릿 중 하나를 사용하여 스페이스를 생성하고, 스페이스를 업데이트하여 이미지, 파일 시스템 및 기타 스페이스 구성 속성을 업데이트하고, 스페이스를 삭제할 수 있습니다. 사전 조건으로 고객은 HyperPod CLI를 설치하거나 kubectl을 사용하여 스페이스를 생성하고 관리해야 합니다. HyperPod CLI에 대한 자세한 내용은 [이](https://github.com/aws/sagemaker-hyperpod-cli/blob/main/README.md#space) 섹션을 참조하세요. kubectl 명령을 사용하려면 [이 가이드를](https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html) 참조하여 kubectl을 설치합니다.

## 스페이스 생성
<a name="create-manage-spaces-create"></a>

**HyperPod CLI**

Jupyter 스페이스 생성

```
hyp create hyp-space \ 
    --name myspace \ 
    --display-name "My Space" \ 
    --memory 8Gi \ 
    --template-ref name=sagemaker-jupyter-template,namespace=jupyter-k8s-system
```

코드 편집기 공간 생성

```
hyp create hyp-space \ 
    --name myspace \ 
    --display-name "My Space" \ 
    --memory 8Gi \ 
    --template-ref name=sagemaker-code-editor-template,namespace=jupyter-k8s-system
```

**kubectl**

```
kubectl apply -f - <<EOF
apiVersion: workspace.jupyter.org/v1alpha1
kind: Workspace
metadata:
  name: my-space
spec:
  displayName: my-space
  desiredStatus: Running
EOF
```

또는 단순히 yaml 파일을 적용할 수 있습니다.

```
kubectl apply -f my-workspace.yaml
```

## 공백 나열
<a name="create-manage-spaces-list"></a>

**HyperPod CLI**

```
hyp list hyp-space
```

**kubectl**

```
kubectl get workspaces -n <workspace-namespace> 
```

## 스페이스 설명
<a name="create-manage-spaces-describe"></a>

**HyperPod CLI**

```
hyp describe hyp-space --name myspace
```

**kubectl**

```
# Basic Status reporting
kubectl get workspace my-workspace -n <workspace-namespace>

# Enhanced Workspace Information Retrieval 
kubectl get workspace my-workspace -n <workspace-namespace> -o wide

# Complete Workspace Information Retrieval
kubectl get workspace my-workspace -n <workspace-namespace> -o json
kubectl get workspace my-workspace -n <workspace-namespace> -o yaml
```

## 스페이스 업데이트
<a name="create-manage-spaces-update"></a>

**HyperPod CLI**

```
hyp update hyp-space \
    --name myspace \
    --display-name "Updated My Space"
```

**kubectl**

필요에 따라 원본 워크스페이스 YAML 파일을 업데이트한 다음 다시 적용합니다. 메타데이터 이름이 수정되지 않았는지 확인합니다. 이 kubectl 명령을 사용하여 전체 워크스페이스 yaml을 다시 적용하지 않고 필드를 수정할 수도 있습니다.

```
# Open a Terminal IDE and modify the Workspace
kubectl edit workspace -n <workspace-namespace>

# Patch a Workspace
kubectl patch workspace <workspace-name> --type='merge' -p \
    '{"spec":{"<field name>":"<desired value>"}}' -n <workspace-namespace>
```

## 스페이스 시작/중지
<a name="create-manage-spaces-stop"></a>

**HyperPod CLI**

```
hyp start hyp-space --name myspace
hyp stop hyp-space --name myspace
```

**kubectl**

Workspace에서 원하는 상태 필드를 업데이트하여 스페이스를 시작/중지할 수 있습니다.

```
# Start a Workspace
kubectl patch workspace <workspace-name> --type='merge' -p \
    '{"spec":{"desiredStatus":"Running"}}' -n <workspace-namespace>
    
# Stop a Workspace
kubectl patch workspace <workspace-name> --type='merge' -p \
    '{"spec":{"desiredStatus":"Stopped"}}' -n <workspace-namespace>
```

## 로그 가져오기
<a name="create-manage-spaces-log"></a>

**HyperPod CLI**

```
hyp get-logs hyp-space --name myspace
```

**kubectl**

```
# Check Pod Logs
kubectl logs -l workspace.jupyter.org/workspace-name=<workspace-metadata-name>

# Check Pod Events
kubectl describe pod -l workspace.jupyter.org/workspace-name=<workspace-metadata-name>

# Check Operator Logs
kubectl logs -n jupyter-k8s-system deployment/jupyter-k8s-controller-manager
```

## 스페이스 삭제
<a name="create-manage-spaces-delete"></a>

**HyperPod CLI**

```
hyp delete hyp-space --name myspace
```

**kubectl**

```
# Delete a Workspace
kubectl delete workspace <workspace-name> -n <namespace>
```