> For the complete documentation index, see [llms.txt](https://ia-cloud.gitbook.io/cloudia-manual/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ia-cloud.gitbook.io/cloudia-manual/administrator/host-machine/machine-group.md).

# 노드 그룹

**노드 그룹** 기능을 통해 물리 머신들을 그룹으로 묶어 관리할 수 있습니다.

***

## 노드 그룹 목록

**노드 그룹 목록** 화면에서는 정의된 모든 노드 그룹을 조회하고 관리 작업을 수행할 수 있습니다.

### 주요 작업

* **`생성`**: 새로운 노드 그룹을 생성합니다. 버튼을 클릭하면 **노드 그룹 생성** 화면으로 이동하여 그룹 정보를 입력합니다.
* **`편집`**: 선택한 노드 그룹의 정보를 수정합니다. 그룹을 한 개 선택했을 때 활성화되며, 클릭 시 **노드 그룹 편집** 화면으로 이동합니다.
* **`삭제`**: 선택한 노드 그룹을 삭제합니다. 그룹을 선택하면 활성화되며, 클릭 시 확인 메시지 후 그룹이 삭제됩니다.

> 💡 **참고:** 노드 그룹을 삭제하더라도 **해당 그룹에 속한 노드들은 삭제되지 않으며**, 그룹에서만 제외됩니다.

### 테이블 컬럼

노드 그룹 목록은 아래 컬럼들로 구성된 표로 표시됩니다.

| 컬럼        | 설명                                                                          |
| --------- | --------------------------------------------------------------------------- |
| **이름**    | 노드 그룹의 이름입니다. 클릭하면 해당 그룹의 **상세 화면**으로 이동합니다.                                |
| **노드 수**  | 그룹에 속한 노드의 수입니다.                                                            |
| **타입**    | 노드 그룹의 종류를 나타냅니다. 현재는 **"사용자"** 그룹만 생성할 수 있으며 사용자 정의 그룹은 "user" 타입으로 표시됩니다. |
| **설명**    | 그룹에 대한 설명입니다.                                                               |
| **생성 일시** | 노드 그룹이 생성된 날짜와 시간입니다.                                                       |

***

## 노드 그룹 상세

노드 그룹 상세 화면에서는 해당 그룹의 정보와 그룹에 속한 노드들을 확인할 수 있습니다. 상단에는 그룹의 **기본 정보 요약**이, 하단에는 그룹 **멤버 노드 목록**이 제공됩니다.

### 상세 정보

선택된 노드 그룹의 주요 정보를 다음과 같이 표시합니다.

| 항목        | 설명                                                                          |
| --------- | --------------------------------------------------------------------------- |
| **이름**    | 노드 그룹의 이름입니다. 클릭하면 해당 그룹의 **상세 화면**으로 이동합니다.                                |
| **노드 수**  | 그룹에 속한 노드의 수입니다.                                                            |
| **타입**    | 노드 그룹의 종류를 나타냅니다. 현재는 **"사용자"** 그룹만 생성할 수 있으며 사용자 정의 그룹은 "user" 타입으로 표시됩니다. |
| **설명**    | 그룹에 대한 설명입니다.                                                               |
| **생성 일시** | 노드 그룹이 생성된 날짜와 시간입니다.                                                       |

### 노드

그룹에 포함된 **노드 목록**이 하단에 표시됩니다. 이 표에서는 해당 그룹에 속한 각 노드의 **이름**, **ID**, **설명**, **생성 일시**를 확인할 수 있습니다.

그룹 멤버 관리 작업을 위해 노드 목록 상단에는 **`편집`** 버튼이 제공됩니다. **`편집`** 버튼을 누르면 **노드 그룹 멤버 편집** 화면으로 전환되어, 해당 그룹의 노드 구성을 변경할 수 있습니다.

### 노드 그룹 멤버 편집

노드 그룹 멤버 편집 화면에서는 현재 그룹에 포함된 노드들을 관리할 수 있습니다. 기존 멤버 목록이 표로 표시되며, 사용자는 다음 작업을 수행할 수 있습니다.

> 💡 **참고:** 시스템에서 정의한 master, compute, network, storage 그룹은 편집할 수 없습니다.

* **추가**: 상단의 **`추가`** 버튼을 클릭하면 **노드 선택** 창이 열립니다. 이 창에서 현재 등록된 모든 물리 머신 목록이 표시되며, 이 중 그룹에 새로 추가하고자 하는 노드를 선택할 수 있습니다. 원하는 노드를 체크한 뒤 **`추가`** 버튼을 누르면 선택된 노드들이 그룹 멤버 목록에 포함됩니다.
* **삭제**: 멤버 목록에서 그룹에서 제외하려는 노드를 선택한 후 **`삭제`** 버튼을 클릭하면 선택된 노드들이 그룹에서 삭제됩니다.

멤버 추가/삭제 작업을 완료한 후 하단의 **`저장`** 버튼을 누르면 그룹 구성원 변경 내용이 저장되고 그룹 상세 화면으로 돌아갑니다. **`취소`** 버튼을 누르면 변경 사항 없이 그룹 상세 화면으로 돌아갑니다.

> 💡 **참고:** 노드 그룹 편집 화면(이름/설명/타입 변경)에서는 **그룹 멤버 구성은 수정하지 않습니다**. 노드 그룹의 구성원은 반드시 **그룹 상세 화면의 `편집` 기능**을 통해서만 추가하거나 제거할 수 있습니다. 또한 하나의 노드는 **여러 그룹에 중복으로 포함**될 수도 있습니다.

***

## 노드 그룹 생성

노드 그룹 생성 시에는 그룹의 기본 정보를 입력하고, 그룹에 포함할 노드를 바로 지정할 수 있습니다.

### 기본 정보

* **이름**: 노드 그룹의 이름을 지정합니다. 다른 그룹과 중복되지 않도록 설정합니다.
* **타입**: 그룹의 타입을 선택합니다. 현재는 **"user"** 그룹만 선택 가능합니다. *(시스템에서 자동 생성되는 그룹은 UI에서 생성할 수 없습니다.)*
* **설명**: 그룹에 대한 설명이나 메모를 입력합니다.

### 노드 추가

* 하단의 **물리 머신** 목록에서 `추가` 버튼을 클릭하여 그룹에 포함할 노드를 선택할 수 있습니다.
* 원하는 노드를 선택 후 `추가` 버튼을 누르면 노드가 목록에 추가됩니다.
* 원하는 노드를 선택 후 `삭제` 버튼을 누르면 노드가 목록에서 삭제됩니다.
* 동일한 노드 그룹에는 동일한 노드를 중복으로 포함할 수 없습니다. 단, 하나의 노드는 여러 노드 그룹에 동시에 포함될 수 있습니다.

### 유효성 검증 규칙

| 필드     | 허용 값 및 길이                                                   | 검증 규칙             | 비고    |
| ------ | ----------------------------------------------------------- | ----------------- | ----- |
| **이름** | <p>영문, 숫자, <code>-</code>, <code>\_</code> 조합<br>최대 20자</p> | 허용 문자 외 입력 불가     | 필수 입력 |
| **타입** | 고정 값 "user"                                                 | 현재 선택 옵션 이외 입력 불가 | 필수 입력 |
| **설명** | <p>모든 문자<br>최대 200자</p>                                     | 특별한 제약 없음         | 선택 입력 |

***

## 노드 그룹 편집

기존 노드 그룹 편집 시에는 그룹의 이름, 타입, 설명만 수정할 수 있으며, 그룹 멤버는 수정할 수 없습니다. 구성원 변경은 노드 그룹 상세 - 편집 기능을 통해 가능합니다.

### 편집 절차

* 기존 정보가 입력된 상태로 화면이 표시되며, 사용자는 필요한 항목만 수정합니다.
* 편집 가능 항목: **이름**, **타입**, **설명**

### 유효성 검증 규칙

| 필드     | 허용 값 및 길이                                                   | 검증 규칙          | 비고            |
| ------ | ----------------------------------------------------------- | -------------- | ------------- |
| **이름** | <p>영문, 숫자, <code>-</code>, <code>\_</code> 조합<br>최대 20자</p> | 허용 문자 외 입력 불가  | 필수 입력, 유일해야 함 |
| **타입** | 고정 값 "user"                                                 | 선택 옵션 이외 입력 불가 | 필수 입력         |
| **설명** | <p>모든 문자<br>최대 200자</p>                                     | 특별한 제약 없음      | 선택 입력         |

변경 사항을 모두 입력한 후 `저장` 버튼을 클릭해야 적용되며, `취소` 버튼을 누르면 변경 사항 없이 목록 화면으로 돌아갑니다.

***

## 노드 그룹 삭제

노드 그룹 삭제는 그룹 목록에서 원하는 그룹을 선택한 뒤 `삭제` 버튼을 클릭하여 진행합니다.

### 삭제 조건 및 절차

* 노드 그룹은 **하나씩만 선택 가능**하며, 선택된 그룹에 대해서만 삭제 버튼이 활성화됩니다.
* `삭제` 버튼 클릭 시 **확인 메시지 창**이 표시되며, 사용자가 확인을 누르면 해당 그룹이 삭제됩니다.
* 삭제된 그룹에 속해 있던 노드들은 그대로 유지되며, 다른 그룹에 영향을 주지 않습니다.
