> For the complete documentation index, see [llms.txt](https://docs.tibero.com/tibero-manuals/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tibero.com/tibero-manuals/7.2.6.manuals/active-storage-guide/appendix.md).

# Appendix A. 구성 예제

TAS를 이용해 Tibero를 구성하는 방법을 모범 예제(best practice)를 통해 설명합니다.

예제는 Linux x86\_64를 기준으로 작성되었습니다.

TAS와 Tibero에서 수행하는 SQL 외의 명령은 설치할 운영 체제에 맞게 변경하여 수행해야 합니다.

{% hint style="info" %}
**참고**\
본 장에서 설명하는 예제는 모범 예제(best practice)로, 최소 권장 사양이 아닙니다.\
최소 권장 사양은 "[Tibero 설치 안내서](/tibero-manuals/7.2.6.manuals/installation-guide.md)"를 참고합니다.\
\
또한, 현재 Linux 운영 체제의 설치만 지원하고 있습니다.
{% endhint %}

## 설치 준비 <a href="#a.1.1" id="a.1.1"></a>

본 절에서는 데이터베이스 구성 전에 준비할 사항을 설명합니다.

### 설치 환경

다음은 본 구성 예제에서 사용할 설치 환경을 나타낸 표입니다.

<table><thead><tr><th width="280">항목</th><th>값</th></tr></thead><tbody><tr><td>노드 개수</td><td>2</td></tr><tr><td>노드 내부 IP</td><td>100.100.100.11, 100.100.100.12</td></tr><tr><td>TAS용 PORT</td><td>9620</td></tr><tr><td>TAS용 CM PORT</td><td>20005</td></tr><tr><td>TAS용 LOCAL CLUSTER PORT</td><td>20000</td></tr><tr><td>공유 디스크 개수</td><td>4</td></tr><tr><td>공유 디스크 크기</td><td>각 512GB</td></tr><tr><td>공유 디스크 경로</td><td>/dev/sdc, /dev/sdd, /dev/sde, /dev/sdf</td></tr><tr><td>설치 계정</td><td>dba</td></tr><tr><td>Tibero 설치 경로</td><td>/home/dba/tibero</td></tr></tbody></table>

* 구성에 사용할 바이너리는 이미 해당 경로에 설치되어 있다고 가정합니다.
* 각 노드에서 보이는 공유 디스크 경로는 같다고 가정합니다.

### 디스크 준비

다음은 설치 대상 공유 디스크를 준비하는 과정입니다. 모든 노드에서 동일하게 수행합니다.

각 디스크의 권한 또는 소유권을 변경하여 직접 사용할 수 있습니다. 그러나 재부팅 시 디스크 이름이 변경될 수 있습니다. 이러한 문제를 예방하려면 udev로 디바이스 노드를 구성하는 방법을 권장합니다.

다음 예제는 udev로 구성한 디바이스 노드를 사용하여 TAS를 설치하는 방법을 설명합니다.

아래는 udev를 사용하여 구성된 디바이스 노드의 예제입니다.

```
$ ls -al /dev/disk*
lrwxrwxrwx. 1 root root	        3 Aug 13 19:50	/dev/disk0 -> sdc
lrwxrwxrwx. 1 root root	        3 Aug 13 19:50	/dev/disk1 -> sdd
lrwxrwxrwx. 1 root root	        3 Aug 13 19:50	/dev/disk2 -> sde
lrwxrwxrwx. 1 root root	        3 Aug 13 19:50	/dev/disk3 -> sdf
$ ls -l /dev/sd*
brw-rw----. 1 root disk 8,	0 Jul 13 11:20 /dev/sda
brw-rw----. 1 root disk 8,     16 Jul 13 11:20 /dev/sdb
brw-------. 1 dba disk 8,     32 Jul 13 11:20 /dev/sdc
brw-------. 1 dba disk 8,     48 Jul 13 11:20 /dev/sdd
brw-------. 1 dba disk 8,     64 Jul 13 11:20 /dev/sde
brw-------. 1 dba disk 8,     80 Jul 13 11:20 /dev/sdf
```

위 예제에서 `/dev/disk*`로 표시되는 링크는 udev 규칙에 따라 생성된 심볼릭 링크입니다.

다음은 디바이스 노드를 구성하기 위한 udev 규칙 파일 예제입니다.

```
$ cat /etc/udev/rules.d/as-disk.rules
KERNEL=="sd?", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d %N", 
RESULT=="35000c50087de8480", SYMLINK+="disk0", OWNER="dba", MODE="0600"
KERNEL=="sd?", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d %N", 
RESULT=="35000c50087de8481", SYMLINK+="disk1", OWNER="dba", MODE="0600"
KERNEL=="sd?", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d %N", 
RESULT=="35000c50087de8482", SYMLINK+="disk2", OWNER="dba", MODE="0600"
KERNEL=="sd?", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d %N", 
RESULT=="35000c50087de8483", SYMLINK+="disk3", OWNER="dba", MODE="0600"
```

udev 규칙 파일은 `/etc/udev/rules.d` 디렉터리(Ubuntu 14.04 기준이며 OS마다 경로가 다를 수 있음)에 `.rules` 확장자로 저장해야 합니다.

예제 규칙은 명시한 SCSI\_ID(`RESULT=="SCSI_ID"`)와 일치하는 디바이스를 찾습니다. 이때 `sd?`로 표현되는 커널 이름(`KERNEL=="sd?"`)을 가진 block 디바이스(`SUBSYSTEM=="block"`) 노드에서 찾습니다. 이후 소유자와 권한을 설정하고 지정한 심볼릭 링크를 생성합니다.

디바이스의 SCSI\_ID는 `/lib/udev/scsi_id`를 실행하여 확인할 수 있습니다. 경로는 Ubuntu 14.04 기준이며 OS마다 다를 수 있습니다.

이 프로그램은 관리자 권한으로 실행해야 합니다. 다음은 `scsi_id`를 확인하는 예제입니다.

```
$ /lib/udev/scsi_id -g -u -d /dev/sdc
35000c50087de8480
```

### 커널 파라미터 설정

TAS를 이용해 Tibero를 구성하는 경우 "Tibero 설치 안내서"에 명시된 커널 파라미터 설정에 더하여 추가적인 설정이 필요합니다.

커널 파라미터 설정 파일 위치는 다음과 같습니다. (Linux 기준)

```
/etc/sysctl.conf
```

다음과 같이 커널 파라미터를 설정합니다.

```
fs.aio-max-nr = 4194304
```

AIX 환경에서 커널 파라미터를 설정할 경우 다음 프러시저를 실행합니다.

```
# ioo -p -o posix_aio_maxreqs=131072
```

## **TAS** 인스턴스 설치

두 개의 노드에 TAS 인스턴스를 구성하는 방법에 대해 설명합니다.

### 환경 변수 설정

운영 체제의 각 사용자 계정에 있는 환경 설정 파일(`.bashrc` 등)에 환경 변수를 설정합니다.\
본 예제에서는 다음과 같이 환경 변수를 설정합니다.

모든 노드에서 TAS 인스턴스 바이너리가 설치된 경로를 TB\_HOME 환경 변수로 설정합니다. 각 노드의 TAS 인스턴스를 구분하려면 TB\_SID 환경 변수를 노드별로 다르게 설정합니다.

다음은 첫 번째 노드의 예시입니다. 첫 번째 노드의 TAS 인스턴스에는 TB\_SID 환경 변수를 as0으로 설정합니다. 첫 번째 노드의 클러스터 매니저에는 CM\_SID 환경 변수를 cm0으로 설정합니다.

```
export TB_HOME=/home/dba/tibero 
export TB_SID=as0
export CM_SID=cm0
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib 
export PATH=$PATH:$TB_HOME/bin:$TB_HOME/client/bin
```

\
두 번째 노드의 TAS 인스턴스에는 TB\_SID 환경 변수를 as1로 설정합니다. CM\_SID 환경 변수는 cm1로 설정합니다.

```
[100.100.100.12]$ export TB_SID=as1 
[TB_SID=as1@100.100.100.12]$ export CM_SID=cm1
```

### 초기화 파라미터 설정

TAS 인스턴스의 초기화 파라미터는 기본적으로 Tibero Active Cluster(TAC)의 초기화 파라미터와 같습니다. TAS 인스턴스에서 추가로 설정해야 하는 초기화 파라미터는 다음과 같습니다.

<table><thead><tr><th width="178">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>INSTANCE_TYPE</td><td>Active Storage 인스턴스임을 나타내기 위해 AS로 설정</td></tr><tr><td>AS_DISKSTRING</td><td>사용할 디스크를 찾기 위한 경로 패턴을 설정</td></tr></tbody></table>

다음은 첫 번째 노드의 초기화 파라미터입니다.

```
[100.100.100.11]$ cat /home/dba/tibero/config/as0.tip 
INSTANCE_TYPE=AS
AS_DISKSTRING="/dev/disk*" 
AS_ALLOW_ONLY_RAW_DISKS=N

LISTENER_PORT=9620 
TOTAL_SHM_SIZE=3G 
MEMORY_TARGET=4G

CLUSTER_DATABASE=Y 
LOCAL_CLUSTER_ADDR=100.100.100.11 
LOCAL_CLUSTER_PORT=20000 
CM_CLUSTER_MODE=ACTIVE_SHARED 
CM_PORT=20005

THREAD=0

[100.100.100.11]$ cat /home/dba/tibero/config/cm0.tip 
CM_NAME=cm0
CM_UI_PORT=20005
CM_RESOURCE_FILE=/home/dba/tibero/config/cm0_res.crf
```

\
다음은 두 번째 노드의 초기화 파라미터입니다.

```
[100.100.100.12]$ cat /home/dba/tibero/config/as1.tip 
INSTANCE_TYPE=AS
AS_DISKSTRING="/dev/disk*" 
AS_ALLOW_ONLY_RAW_DISKS=N

LISTENER_PORT=9620 
TOTAL_SHM_SIZE=3G 
MEMORY_TARGET=4G

CLUSTER_DATABASE=Y 
LOCAL_CLUSTER_ADDR=100.100.100.12
LOCAL_CLUSTER_PORT=20000 
CM_CLUSTER_MODE=ACTIVE_SHARED 
CM_PORT=20005

THREAD=1

[100.100.100.11]$ cat /home/dba/tibero/config/cm1.tip 
CM_NAME=cm1
CM_UI_PORT=20005
CM_RESOURCE_FILE=/home/dba/tibero/config/cm1_res.crf
```

{% hint style="warning" %}
**주의**

일반 파일을 디바이스처럼 사용하기 위해서는 AS\_ALLOW\_ONLY\_RAW\_DISKS를 N으로 설정해야 합니다.

또한, AS\_DISKSTRING에 설정한 경로 패턴에 포함되지 않은 디스크는 디스크 스페이스 구성에 사용할 수 없습니다.
{% endhint %}

### 접속 정보 설정

다음은 접속 정보 설정 파일을 설정한 예입니다.

```
$ cat /home/dba/tibero/client/config/tbdsn.tbr 
as0=(
    (INSTANCE=(HOST=100.100.100.11) 
              (PORT=9620)
    )
)
as1=(
          (INSTANCE=(HOST=100.100.100.12) 
                    (PORT=9620)
          )
)
```

### 디스크 스페이스 생성과 기동

다음은 디스크 스페이스를 생성하고 기동하는 과정입니다.

1. 디스크 스페이스를 생성하기 위해서 먼저 첫 번째 노드에서 TAS 인스턴스를 NOMOUNT 모드로 기동합니다.

```
[TB_SID=as0@100.100.100.11]$ tbboot nomount
```

2. 기동한 인스턴스에 접속하여 디스크 스페이스를 생성합니다.\
   \
   RAID와 같은 외부의 데이터 복제 기능을 사용해 데이터의 가용성을 높인 경우, 내부의 데이터 복제 기능을 사용하지 않도록 하기 위해 EXTERNAL REDUNDANCY로 설정합니다.

```
[TB_SID=as0@100.100.100.11]$ tbsql sys/tibero@as0 
SQL> CREATE DISKSPACE ds0
    EXTERNAL REDUNDANCY
    DISK '/dev/disk0' NAME disk0 SIZE 512G, 
         '/dev/disk1' NAME disk1 SIZE 512G, 
         '/dev/disk2' NAME disk2 SIZE 512G, 
         '/dev/disk3' NAME disk3 SIZE 512G;
```

디스크 스페이스 생성이 완료되면 자동으로 인스턴스가 중지되며, NORMAL 모드로 기동할 수 있는 상태가 됩니다.

3. 첫 번째 노드의 클러스터 매니저에서 AS 바이너리를 실행하는 데 필요한 as 리소스용 환경 설정 파일을 미리 생성합니다.

```
[CM_SID=cm0@100.100.100.11]$ cat $TB_HOME/as0.profile 
export TB_SID=as0
```

4. TAS 인스턴스 클러스터링을 위해 클러스터 매니저를 기동하고 리소스를 추가합니다.\
   as 리소스를 추가할 때는 미리 생성한 환경 설정 파일의 경로를 envfile attribute에 지정해야 합니다.

```
[CM_SID=cm0@100.100.100.11]$ tbcm -b
[CM_SID=cm0@100.100.100.11]$ cmrctl add network --name net0 --ipaddr 
100.100.100.11 --portno 20010
[CM_SID=cm0@100.100.100.11]$ cmrctl add cluster --name cls0 --incnet net0
--cfile "+/dev/disk*"
[CM_SID=cm0@100.100.100.11]$ cmrctl start cluster --name cls0 
[CM_SID=cm0@100.100.100.11]$ cmrctl add service --type as --name tas --cname cls0 
[CM_SID=cm0@100.100.100.11]$ cmrctl add as --name as0 --svcname tas --envfile 
"$TB_HOME/as0.profile" --dbhome "$TB_HOME"
```

5. 인스턴스를 NORMAL 모드로 기동합니다.

```
[TB_SID=as0@100.100.100.11]$ tbboot
# 또는 [CM_SID=cm0@100.100.100.11]$ cmrctl start as --name as0
```

6. 기동이 완료되면 인스턴스에 접속하여 두 번째 노드의 TAS 인스턴스에 사용할 THREAD를 추가합니다.

```
[TB_SID=as0@100.100.100.11]$ tbsql sys/tibero@as0 
SQL> ALTER DISKSPACE ds0 ADD THREAD 1;
```

7. 두 번째 노드의 클러스터 매니저에서 AS 바이너리를 실행하는 데 필요한 as 리소스용 환경 설정 파일을 미리 생성합니다.

```
[CM_SID=cm1@100.100.100.12]$ cat $TB_HOME/as1.profile 
export TB_SID=as1
```

8. 두 번째 노드에서 클러스터 매니저를 기동하고 리소스를 추가합니다.

```
[CM_SID=cm1@100.100.100.12]$ tbcm -b
[CM_SID=cm1@100.100.100.12]$ cmrctl add network --name net1 --ipaddr
100.100.100.12 --portno 20010
[CM_SID=cm1@100.100.100.12]$ cmrctl add cluster --name cls0 --incnet net1
--cfile "+/dev/disk*"
[CM_SID=cm1@100.100.100.12]$ cmrctl start cluster --name cls0 
[CM_SID=cm1@100.100.100.12]$ cmrctl add as --name as1 --svcname tas --envfile 
"$TB_HOME/as1.profile" --dbhome "$TB_HOME"
```

9. 두 번째 노드의 TAS 인스턴스를 기동합니다.

```
[TB_SID=as1@100.100.100.12]$ tbboot
# 또는 [CM_SID=cm1@100.100.100.12]$ cmrctl start as --name as1
```

## **Tibero** 인스턴스 설치

Tibero 인스턴스를 설치하고 기동하는 과정은 TAS 인스턴스를 사용하지 않는 경우와 같습니다. 생성할 파일의 경로를 지정하는 방법만 다릅니다.

### 환경 변수 설정

운영 체제의 각 사용자 계정에 있는 환경 설정 파일(`.bashrc` 등)에 환경 변수를 설정합니다.

본 예제에서는 다음과 같이 환경 변수를 설정합니다.

먼저 모든 노드에서 Tibero 인스턴스 바이너리가 설치된 경로를 TB\_HOME 환경 변수로 설정합니다. 각 노드에서 TB\_SID 환경 변수를 설정합니다. 첫 번째 노드의 DB 인스턴스에는 TB\_SID 환경 변수를 tac0으로 설정합니다.

```
export TB_HOME=/home/dba/tibero 
export TB_SID=tac0
export CM_SID=cm0
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib 
export PATH=$PATH:$TB_HOME/bin:$TB_HOME/client/bin
```

두 번째 노드의 DB 인스턴스에는 TB\_SID 환경 변수를 tac1로 설정합니다. CM\_SID가 설정되어 있지 않다면 cm1으로 설정합니다.

```
[100.100.100.12]$ export TB_SID=tac1 
[TB_SID=tac1@100.100.100.12]$ export CM_SID=cm1
```

하나의 서버에 여러 인스턴스를 실행하는 경우 SID가 달라야 합니다. 다른 서버에서 각 인스턴스를 실행하는 경우에는 SID가 같아도 됩니다.

### 초기화 파라미터 설정

TAS 인스턴스를 사용하기 위해서는 다음의 두 가지 파라미터를 설정합니다.

<table><thead><tr><th width="242">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>USE_ACTIVE_STORAGE</td><td>TAS 인스턴스를 사용하려면 Y로 설정</td></tr><tr><td>AS_PORT</td><td>TAS 인스턴스에 접속하려면 TAS 인스턴스의 LISTENER_PORT를 설정</td></tr></tbody></table>

다음은 첫 번째 노드의 초기화 파라미터입니다.

```
[100.100.100.11]$ cat /home/dba/tibero/config/tac0.tip 
DB_NAME=tibero
LISTENER_PORT=8629 
DB_BLOCK_SIZE=32K 
MAX_SESSION_COUNT=300 
TOTAL_SHM_SIZE=70G 
DB_CACHE_SIZE=55G 
MEMORY_TARGET=250G 
CONTROL_FILES="+DS0/c1.ctl"

USE_ACTIVE_STORAGE=Y 
AS_PORT=9620

CLUSTER_DATABASE=Y 
LOCAL_CLUSTER_ADDR=100.100.100.11 
LOCAL_CLUSTER_PORT=21000 
CM_PORT=20005

THREAD=0 
UNDO_TABLESPACE=UNDO00
```

\
다음은 두 번째 노드의 초기화 파라미터입니다.

```
[100.100.100.12]$ cat /home/dba/tibero/config/tac1.tip 
DB_NAME=tibero
LISTENER_PORT=8629 
DB_BLOCK_SIZE=32K 
MAX_SESSION_COUNT=300 
TOTAL_SHM_SIZE=70G 
DB_CACHE_SIZE=55G 
MEMORY_TARGET=250G 
CONTROL_FILES="+DS0/c1.ctl"

USE_ACTIVE_STORAGE=Y 
AS_PORT=9620
CLUSTER_DATABASE=Y 
LOCAL_CLUSTER_ADDR=100.100.100.12 
LOCAL_CLUSTER_PORT=21000 
CM_PORT=20005

THREAD=1
UNDO_TABLESPACE=UNDO01
```

### 접속 정보 설정

다음은 접속 정보 설정 파일을 설정한 예입니다.

```
$ cat /home/dba/tibero/client/config/tbdsn.tbr 
tac0=(
    (INSTANCE=(HOST=100.100.100.11) 
            (PORT=8629)
    )
)
tac1=(
        (INSTANCE=(HOST=100.100.100.12)
                (PORT=8629)
        )
)
```

### 데이터베이스 생성과 기동

다음은 데이터베이스를 생성하고 기동하는 과정입니다.

1. 클러스터 매니저에서 Tibero 바이너리를 실행하는 데 필요한 DB 리소스용 환경 설정 파일을 미리 생성합니다.

```
[CM_SID=cm0@100.100.100.11]$ cat $TB_HOME/tac0.profile 
export TB_SID=tac0
```

```
[CM_SID=cm1@100.100.100.12]$ cat $TB_HOME/tac1.profile 
export TB_SID=tac1
```

2. 먼저 첫 번째 노드에서 TAS 인스턴스를 구성할 때 기동한 클러스터 매니저에 Tibero 클러스터링에 사용할 리소스를 생성합니다.

```
[CM_SID=cm0@100.100.100.11]$ cmrctl add service --type db --name tibero
--cname cls0
[CM_SID=cm0@100.100.100.11]$ cmrctl add db --name tac0 --svcname tibero
--envfile "$TB_HOME/tac0.profile" --dbhome "$TB_HOME"
```

3. 인스턴스를 NOMOUNT 모드로 기동합니다.

```
tbboot -t nomount
```

4. 인스턴스에 접속해 데이터베이스를 생성합니다.

```
[TB_SID=tac0@100.100.100.11]$ tbsql sys/tibero@tac0 
SQL> CREATE DATABASE "tibero"
    USER sys IDENTIFIED BY tibero 
    MAXINSTANCES 32
    MAXDATAFILES 2048 
    CHARACTER SET MSWIN949
    LOGFILE GROUP 1 '+DS0/log001' SIZE 2G, 
            GROUP 2 '+DS0/log002' SIZE 2G, 
            GROUP 3 '+DS0/log003' SIZE 2G
    MAXLOGGROUPS 255
    MAXLOGMEMBERS 8 
    NOARCHIVELOG
    DATAFILE '+DS0/system.tdf' SIZE 4G
            AUTOEXTEND ON NEXT 64M MAXSIZE UNLIMITED 
    SYSSUB DATAFILE '+DS0/syssub.tdf' SIZE 4G
            AUTOEXTEND ON NEXT 64M MAXSIZE UNLIMITED 
    DEFAULT TEMPORARY TABLESPACE temp
            TEMPFILE '+DS0/temp00.tdf' SIZE 32G AUTOEXTEND OFF 
    UNDO TABLESPACE undo00
            DATAFILE '+DS0/undo00.tdf' SIZE 32G AUTOEXTEND OFF 
    DEFAULT TABLESPACE usr DATAFILE '+DS0/usr.tdf' SIZE 4G
            AUTOEXTEND ON NEXT 64m MAXSIZE UNLIMITED;
```

5. 인스턴스를 NORMAL 모드로 재기동한 후 두 번째 노드에서 사용할 UNDO 테이블 스페이스와 REDO THREAD를 생성합니다.

```
[TB_SID=tac0@100.100.100.11]$ tbboot 
[TB_SID=tac0@100.100.100.11]$ tbsql sys/tibero@tac0 
SQL> CREATE UNDO TABLESPACE undo01
            DATAFILE '+DS0/undo01.tdf' size 32G autoextend off;
SQL> ALTER DATABASE ADD LOGFILE THREAD 1 GROUP 4 '+DS0/log004' size 2G; 
SQL> ALTER DATABASE ADD LOGFILE THREAD 1 GROUP 5 '+DS0/log005' size 2G; 
SQL> ALTER DATABASE ADD LOGFILE THREAD 1 GROUP 6 '+DS0/log006' size 2G; 
SQL> ALTER DATABASE ENABLE PUBLIC THREAD 1;
```

6. 두 번째 노드의 클러스터 매니저에 DB 리소스를 추가합니다.

```
[CM_SID=cm1@100.100.100.12]$ cmrctl add db --name tac1 --svcname tibero
--envfile "$TB_HOME/tac1.profile" --dbhome "$TB_HOME"
```

7. 두 번째 노드의 인스턴스를 기동합니다.

```
[TB_SID=tac1@100.100.100.12]$ tbboot
```

## **TAS** 운영 권장사항

TAS를 설치하고 운영하는 데 필요한 권장 사항입니다.

#### **초기화 파라미터 설정**

Active Storage 인스턴스는 데이터베이스 인스턴스보다 더 적은 양의 메모리를 사용합니다.\
원활한 운영을 위해 다음 예와 같이 메모리 파라미터를 설정하는 것이 좋습니다.

<table><thead><tr><th width="262">파라미터</th><th>값</th></tr></thead><tbody><tr><td>TOTAL_SHM_SIZE</td><td>1GB 이상</td></tr><tr><td>MEMORY_TARGET</td><td>2GB 이상</td></tr></tbody></table>

#### **디스크 스페이스 REDUNDANCY 설정**

RAID와 같은 외부 데이터 복제 기능을 사용하는 경우 REDUNDANCY를 EXTERNAL로 설정할 수 있습니다. 그렇지 않은 경우에는 REDUNDANCY를 NORMAL로 설정하는 것이 좋습니다. 성능보다 데이터 가용성이 중요한 경우에는 REDUNDANCY를 HIGH로 설정하는 것이 좋습니다.

#### **디스크 스페이스 실패 그룹 설정**

물리적으로 같은 서버 또는 스위치에 속한 디스크는 같은 실패 그룹으로 설정하는 것이 좋습니다. 스위치나 케이블에 장애가 발생하면 이 디스크에 동시에 접근할 수 없을 가능성이 높기 때문입니다. Active Storage는 다른 실패 그룹에 복사본을 저장하므로 한 실패 그룹에 문제가 생겨도 데이터에 접근할 수 있습니다. 디스크 스페이스의 총 실패 그룹 수는 세 개 이상으로 구성하는 것이 좋습니다.

#### **디스크 스페이스 용량 설정**

디스크 스페이스 용량은 운영할 데이터베이스 용량에 따라 적절히 구성합니다. 한 디스크 스페이스가 가질 수 있는 디스크의 최대 개수는 1,024개이며, 최대 용량은 16 TB입니다.\
디스크 장애가 발생하여 데이터 복사본을 새로 만들어야 하는 경우가 생길 수 있으므로 여유 디스크를 추가할 수 있도록 구성하는 것이 좋습니다.

#### **DBA용 관리 팁**

SYS 사용자는 SQL로 Active Storage 인스턴스에 접속할 수 있습니다. [TAS 정보 조회](/tibero-manuals/7.2.6.manuals/active-storage-guide/tas-information-views.md)에 설명한 뷰를 사용하여 현재 디스크 스페이스와 디스크 상태를 확인할 수 있습니다. 디스크 장애가 발생하면 뷰의 디스크 상태가 FAIL로 변경됩니다.

#### **디스크 속성**

디스크 스페이스를 구성하는 디스크의 속성(크기와 속도)은 비슷한 것이 좋습니다. 디스크의 크기와 속도가 같으면 각 디스크를 같은 비율로 사용하므로 스트라이핑에 효과적입니다.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.tibero.com/tibero-manuals/7.2.6.manuals/active-storage-guide/appendix.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
