|
|
| Sun ONE Application Server 7, Update 1 관리자 설명서 |
관리 도메인 구성이 장에서는 Sun ONE Application Server로 관리 도메인을 설정하고 관리하는 방법에 대해 설명합니다.
이 장에서는 다음 내용을 설명합니다.
관리 도메인 정보
관리 도메인은 여러 관리자가 시스템의 특정 응용 프로그램 서버 그룹(도메인)을 관리할 수 있는 기본 보안 구조를 제공합니다. 응용 프로그램 서버 인스턴스를 이렇게 분리하면 같은 시스템을 여러 조직이 공유하고 각 조직마다 관리자를 둘 수 있습니다.
Sun One Application Server 내의 모든 응용 프로그램 서버 인스턴스는 한 도메인의 구성원입니다. 반드시 두 개 이상의 도메인이 있어야 하는 것은 아니지만 필요한 경우 여러 도메인이 지원되는 것은 유용한 기능입니다.
기본 운영 체제의 보안 메커니즘을 사용하여(즉, 파일 사용 권한을 통해) 로컬 명령에 대해 관리 보안이 설정됩니다. 사용자 이름/암호 쌍을 사용하여 특정 Admin Server와 통신함으로써 원격 명령 보안이 설정됩니다. 관리 도메인은 다른 보안 구조를 사용하지 않습니다.
이 절에서는 다음 내용을 설명합니다.
관리 도메인 구현
도메인은 파일, 운영 체제 프로세스 및 포트를 사용하여 구현됩니다. 각 도메인에는 고유한 이름이 있습니다.
디렉토리 구조
설치 내에서 모든 도메인이 공유하는 파일(구성, 실행 파일 등)이 있습니다. 여기에서 중요한 것은 도메인에 고유한 파일들입니다.
도메인에 고유한 파일은 모두 도메인 디렉토리라고 하는 공용 루트 디렉토리를 공유하며 이 디렉토리의 이름은 도메인의 이름과 같습니다. 도메인 디렉토리 아래에는 인스턴스 별로 인스턴스의 이름과 같은 디렉토리가 하나씩 있으며, 이 인스턴스 디렉토리 아래에는 인스턴스 고유 파일이 있습니다.
도메인 디렉토리는 보안 사용 권한 및 기타 운영 체제 수준 제한에 따라 파일 시스템의 어떠한 곳에도 구성될 수 있습니다. 사용자가 다른 방식을 선택한 경우가 아니면 도메인 디렉토리는 기본 디렉토리 아래에 생성됩니다(도메인 디렉토리). 하지만 사용자가 도메인 디렉토리를 다른 위치에 만들 수 있습니다.
프로세스/포트 구조
도메인은 실행 도중 운영 체제 프로세스와 포트를 사용합니다. 특히 도메인 내에서 실행되는 각 인스턴스(도메인의 Admin Server 포함)마다 프로세스와 포트가 있습니다.
도메인 구성
도메인은 각 용도에 맞는 명령을 사용하여 작성, 삭제, 나열, 시작 및 중지할 수 있습니다.
도메인의 작성, 삭제 및 시작은 로컬에서만 수행할 수 있는 반면 나열 및 중지는 로컬과 원격 모두에서 수행할 수 있습니다.
삭제, 시작 및 중지 명령에는 모두 도메인 이름을 지정해야 합니다. 도메인이 하나뿐인 경우 이 이름은 선택 사항입니다. 여러 개의 도메인이 구성된 상태에서 도메인 이름을 지정하지 않으면 오류가 발생합니다.
이 절에서는 다음 내용을 설명합니다.
도메인 작성
도메인은 create-domain 명령을 사용하여 작성합니다. 이 명령은 로컬에서만 실행할 수 있습니다.
개요:
asadmin create-domain [--path domain_path] [--sysuser sys_user] [--passwordfile file_name] --adminport port_number --adminuser admin_user --adminpassword password domain_name
예: 기본 위치에 도메인 작성
$ asadmin create-domain --adminport 123 --adminuser MyAdmin --adminpassword MyPassword MyDomain
이 예는 기본 위치(즉, 도메인 디렉토리)에 MyDomain이라는 도메인을 만듭니다. Administration Server는 포트 123에서 수신하고 관리 사용자 이름은 MyAdmin, 암호는 MyPassword를 사용합니다. 도메인 디렉토리 및 이 디렉토리 아래의 파일은 이 명령을 실행한 운영 체제 사용자가 소유합니다. 또한 운영 체제 프로세스는 이 명령을 실행한 사용자로 실행됩니다.
MyDomain이라는 도메인이 이미 있는 경우 오류 메시지가 반환됩니다.
명령줄에 암호를 사용하면 보안 문제가 발생할 수 있으므로 암호를 파일에 저장한 다음 --passwordfile 옵션을 사용하여 이 파일을 통해 암호를 전달할 수 있습니다.
예: 기본 위치가 아닌 곳에 도메인 작성
$ asadmin create-domain --path $HOME --adminport 123 --adminuser MyAdmin --adminpassword MyPassword MyDomain
이 예는 첫 번째 예와 비슷하며 도메인 디렉토리가 기본 도메인 디렉토리 아래가 아니라 사용자의 $HOME 디렉토리 아래에 위치한다는 점만 다릅니다.
예: 다른 사용자에 대한 도메인 작성(UNIX 전용)
# asadmin create-domain --user AnotherUser --adminport 123 --adminuser MyAdmin --adminpassword MyPassword MyDomain
이 예는 첫 번째 예와 비슷하며 도메인과 그 파일을 AnotherUser라는 사용자가 소유한다는 점만 다릅니다. 이 작업은 운영 체제가 처리합니다.
--sysuser 옵션을 사용하면 다른 사용자가 관리자인 도메인을 생성할 수 있습니다. 이 옵션을 사용하려면 create-domain 명령을 실행하는 사용자가 root여야 합니다.
UNIX 플랫폼의 사용자 권한
root가 아닌 사용자가 관리 도메인을 작성 및 삭제하려면 사용자 ID를 도메인 구성 파일에 대한 쓰기 권한이 있는 UNIX 그룹에 추가해야 합니다.
- 설치 전체에 대한 도메인 구성 파일에 적용되는 그룹이 될 UNIX 그룹을 만듭니다. 예를 들어, asadmin이라는 이름의 UNIX 그룹을 만듭니다.
- /etc/appserver 아래에 있는 설치 전체 도메인 구성 파일을 새로 만든 UNIX 그룹이 소유하도록 설정합니다.
파일의 이름은 domains.bin과 domains.lck입니다. 예를 들어, 다음 파일에 할당된 그룹을 변경합니다.
-rw-r--r-- 1 root asadmin 0 Sep 18 14:34 domains.bin
-rw-r--r-- 1 root asadmin 0 Sep 18 14:34 domains.lck
- 그런 다음 새로 만든 UNIX 그룹의 이 파일에 대한 쓰기 액세스 권한을 활성화합니다. 이 예에서는, 다음과 같은 사용 권한이 설정됩니다.
-rw-rw-r-- 1 root asadmin 0 Sep 18 14:34 domains.bin
-rw-rw-r-- 1 root asadmin 0 Sep 18 14:34 domains.lck
- UNIX 그룹에 사용자 ID를 추가합니다.
또는 root 사용자에게 설치 전체 구성 파일에 쓰기 액세스 권한을 부여하지 않으려면 사용자 대신 관리 도메인을 만들 수 있습니다. 새 관리 도메인을 만드는 도중 --sysuser 및 --path 옵션을 지정하여 도메인의 디렉토리와 파일을 소유할 UNIX 사용자 ID와 관리 도메인이 작성될 위치를 지정합니다. 예를 들어, "예: 다른 사용자에 대한 도메인 작성(UNIX 전용)"을 참조하십시오.
사용자 ID 아래에 관리 도메인을 만들면 사용자는 새 응용 프로그램 서버 인스턴스를 만들고 응용 프로그램 서버 인스턴스에 대해 다양한 관리 작업을 수행할 수 있게 됩니다. 사용자 ID는 관리 도메인 구성 파일에 대해 쓰기 권한을 갖는 UNIX 그룹에 속할 필요가 없습니다. 관리 도메인을 작성 및 삭제할 경우에만 UNIX 그룹의 멤버십이 필요합니다.
도메인 삭제
도메인은 delete-domain 명령을 사용하여 삭제합니다. 도메인을 관리할 수 있는 운영 체제 사용자(또는 root)만 이 명령을 제대로 실행할 수 있습니다. 이 명령은 로컬에서만 실행할 수 있습니다.
개요:
asadmin delete-domain [domain_name]
예: 도메인 삭제
$ asadmin delete-domain MyDomain
이 예는 로컬 시스템에서 MyDomain이라는 도메인을 삭제합니다.
도메인 나열
시스템에 작성된 도메인은 list-domains 명령을 사용하여 찾아볼 수 있습니다.
이 명령은 로컬과 원격 모두에서 사용할 수 있습니다.
개요:
asadmin list-domains [--host host] [--port port] [--password password] [--user user]
예: 로컬 시스템의 도메인 나열
$ asadmin list-domains
domain1 [/opt/ias/build/domains/domain1]
예: remote 옵션을 사용하여 로컬 시스템의 도메인 나열
$ asadmin list-domains --user admin --password password --host localhost --port 4848
domain1 [/opt/ias/build/domains/domain1]
도메인 시작
도메인은 start-domain 명령을 사용하여 시작할 수 있습니다. 그러면 도메인의 Admin Server와 도메인에 있는 기타 모든 인스턴스가 시작됩니다.
이 명령은 로컬에서만 실행할 수 있습니다.
개요:
asadmin start-domain [--domain domain_name]
예: 시스템에 있는 도메인만 시작
$ start-domain
Instance domain1:admin-server started
Instance domain1:server1 started
Domain domain1 Started.
도메인 중지
도메인은 stop-domain 명령을 사용하여 중지시킬 수 있습니다. 사용자는 도메인 내의 모든 인스턴스 또는 Admin Server를 제외한 모든 인스턴스를 중지하여 도메인 원격 관리가 가능하도록 선택할 수 있습니다.
이 명령은 로컬과 원격 모두에서 사용할 수 있습니다.
개요:
asadmin stop-domain [--user admin_user] [--password admin_password] [--host host_name] [--port port_name] [-- local=false] [--domain domain_name] [--adminserv=true] [--passwordfile file_name] [--secure | -s]
예: Admin Server 인스턴스를 제외한 도메인의 모든 인스턴스 중지
$ asadmin asadmin stop-domain --user admin --password password --host localhost --port 4848 --adminserv=false --domain domain1
DomainStoppedRemotely
도메인 레지스트리 재작성
구현 목적상 각 도메인의 세부 사항(이름, 위치, 사용 포트 등)은 도메인 레지스트리 파일에 기록됩니다.
일반적인 작업 조건에서는 도메인 레지스트리를 수정하지 않아야 합니다. 모든 도메인 레지스트리 수정 또는 사용은 시스템 관리에 사용되는 명령으로 캡슐화되기 때문입니다. 하지만 도메인 레지스트리는 파일이기 때문에 손상될 수 있으며(예를 들어, 스크립트가 잘못되었거나 누군가 레지스트리를 실수로 삭제한 경우 등) 이러한 경우 파일을 다시 작성해야 할 수 있습니다.
주 asadmin 명령을 사용하여 명령줄 인터페이스를 통해 도메인 레지스트리에 액세스할 수 있습니다.
레지스트리가 손상된 경우 다음 절차를 수행하여 레지스트리를 다시 작성하십시오.
- 모든 도메인의 목록과 해당 도메인이 위치한 디렉토리(기본값 또는 비기본값)를 얻습니다.
- 각 디렉토리 이름을 변경합니다. 예를 들어, 각 디렉토리 이름에 접미어 ".bak"를 추가합니다.
- 포트, 암호 등에 대한 기본값을 사용하여 각 도메인을 다시 원래 위치에 만듭니다.
- 새 도메인 디렉토리를 삭제하고 원래 디렉토리로 교체합니다.
- 각 도메인에 대해 reconfig 명령을 실행합니다. 그러면 도메인 레지스트리가 기존 도메인의 값으로 업데이트됩니다.