Solaris Container Manager 3.6.1 설치 및 관리

프로젝트의 프로세스 이동 또는 시작

프로젝트에 의해 관리되는 응용 프로그램에 고유 실행 가능한 이름이 없는 경우, 수동으로 프로젝트로 프로세스를 이동시키고자 합니다. 이 방법으로 원하는 응용 프로그램의 프로세스만 추적할 수 있습니다.

Procedure응용 프로그램 기반 프로젝트에 프로세스 개별 이동

응용 프로그램 기반 프로젝트에 일치식을 제공하지 않았고 프로젝트에 응용 프로그램의 프로세스를 개별적으로 이동시키려는 경우, 이 절차를 사용하십시오.

단계
  1. 응용 프로그램 관리용 응용 프로그램 기반 프로젝트를 작성합니다. 일치식 사용 안 함 확인란을 선택합니다.

    자세한 단계는 응용 프로그램 기반 프로젝트 작성 절을 참조하십시오.

  2. 다음을 입력하여 /etc/project 파일을 검토하여 프로젝트 이름을 결정합니다.


    % cat /etc/project
    

    단계 5에서 이 프로젝트 이름이 필요합니다.

  3. 필요한 경우, 터미널 창에서 응용 프로그램을 시작합니다.

  4. 응용 프로그램에 대응하는 프로세스를 결정합니다.

    예를 들어, 예 4–1, 예 4–2예 4–3을 참조하십시오.

  5. 대응하는 프로세스를 이동시킵니다.

    1. 컨테이너 관리자 GUI에서 탐색 창의 호스트를 누릅니다.

    2. 프로젝트 탭을 누릅니다.

      프로젝트 표가 표시됩니다.

    3. 프로젝트 표에서 프로젝트 이름을 누릅니다. 링크임을 표시하기 위해 프로젝트 이름에 밑줄이 있습니다.

      프로젝트 등록 정보 탭이 표시됩니다.

    4. 프로세스 탭을 누릅니다.

      프로세스 표가 표시됩니다.

    5. 이동할 프로세스를 선택하십시오.

    6. 이동 버튼을 누릅니다.

      프로세스 이동 대화 상자가 나타납니다.

    7. 프로젝트(컨테이너) 목록에서 프로세스에 대한 새 프로젝트(컨테이너)를 선택합니다.

    8. [확인]을 누릅니다.

  6. 모든 프로세스가 이동할 때까지 단계 5를 반복합니다.


예 4–4 ps를 사용하여 프로세스가 프로젝트로 이동했음을 확인

grep 명령과 ps 명령을 함께 사용하여 프로세스가 컨테이너로 이동했는지 확인할 수 있습니다. 다음 예는 개별적으로 이동한 프로세스가 지금은 컨테이너 payroll에 있음을 표시합니다.


% ps -ae -o pid,project,comm | grep payroll
17773    payroll ora_reco_AcctEZ 
17763    payroll ora_pmon_AcctEZ 
17767    payroll ora_lgwr_AcctEZ 


예 4–5 prstat를 사용하여 프로세스가 프로젝트로 이동했는지 확인

프로젝트 이름을 알고 있는 경우, prstat 명령을 사용하여 프로세스가 컨테이너로 이동되었는지 확인할 수 있습니다. 이 예에서, 프로젝트 이름은 payroll입니다.


% prstat -J payroll
   PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP       
 17773 admin     216M  215M cpu2     1    0   0:05:08  29% ora_reco_AcctEZ/1
 17763 admin     834M  782M sleep    1    0   0:35:02   0% ora_pmon_AcctEZ/1
 17767 admin     364M  352M run      1    0   0:22:05  23% ora_lgwr_AcctEZ/1							

Procedure프로젝트에서 응용 프로그램 시작

단계
  1. 응용 프로그램 관리용 응용 프로그램 기반 프로젝트를 작성합니다. 일치식 사용 안 함 확인란을 선택합니다.

    세부 단계는 응용 프로그램 기반 프로젝트 작성을 참조하십시오.

  2. OS 버전에 따라 다음에서 선택합니다.

    • Solaris 8 OS의 경우, 다음을 입력합니다.


      % srmuser 사용자이름 newtask -p 프로젝트이름 응용프로그램이름
      

      여기서, user_name은 UNIX 사용자 이름이고 project_name은 사용자사용자이름이 됩니다. Solaris 8 OS에서 사용자 기반 컨테이너만 지원되기 때문에, user_nameproject_name은 동일합니다.

    • Solaris 9 또는 Solaris 10 OS의 경우, 다음을 입력합니다.


      % newtask -p 프로젝트이름 응용프로그램이름
      

      여기서 프로젝트이름은 컨테이너와 연결된 프로젝트이고 응용프로그램이름은 모든 명령 인수를 포함하여 응용 프로그램을 시작하는 명령입니다.

    응용 프로그램은 컨테이너에서 시작됩니다.


예 4–6 Solaris 9 또는 Solaris 10 OS의 컨테이너에서 응용 프로그램 시작

다음은 music으로 명명된 컨테이너 안에서 tracks 으로 명명된 응용 프로그램이 시작되는 예입니다.


% newtask -p music tracks -z 0 mozart.au

여기서 -z 0 mozart.au는 응용 프로그램 tracks에 대한 명령줄 인수입니다.



예 4–7 응용 프로그램과 프로젝트의 연결 확인

응용 프로그램이 시작된 후 다음을 입력하여 응용 프로그램이 연결된 프로젝트를 확인할 수 있습니다.


% ps -ae -o pid,project,comm

다음은 이 명령으로부터의 출력의 예입니다.


  PID  PROJECT COMMAND
...
17771   default ora_smon_SunMC
16246   system rquotad
26760   group.staff /bin/csh
16266   music	 tracks
17777   default ora_d000_SunMC
17775   default ora_s000_SunMC
17769   default ora_ckpt_SunMC

이 예에서 tracks로 명명된 응용 프로그램에는 PID 16266이 있고 프로젝트는 music이며 실행 파일은 tracks입니다. 이것은 예 4–6에서 시작된 것과 동일한 응용 프로그램입니다.