

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

# Amazon EMR 및 애플리케이션 프로세스(대몬(daemon)) 보기 및 다시 시작
<a name="emr-process-restart-stop-view"></a>

클러스터 문제를 해결할 때 필요하다면 실행 중인 프로세스를 나열할 수 있습니다. 프로세스를 중지하거나 다시 시작할 수도 있습니다. 예를 들어, 구성을 변경한 후 프로세스를 다시 시작하거나 로그 파일과 오류 메시지를 분석한 후 특정 프로세스의 문제를 확인할 수 있습니다.

클러스터에서 실행되는 프로세스는 두 가지 유형이 있는데, 하나는 Amazon EMR 프로세스(예: instance-controller 및 로그 푸셔)이며 다른 하나는 클러스터에 설치된 애플리케이션과 연결된 프로세스(예: hadoop-hdfs-namenode 및 hadoop-yarn-resourcemanager)입니다.

클러스터에서 프로세스 작업을 직접 수행하려면 프라이머리 노드에 연결합니다. 자세한 내용은 [Amazon EMR 클러스터에 연결하기](emr-connect-master-node.md) 단원을 참조하십시오.

## 실행 중인 프로세스 보기
<a name="emr-process-view"></a>

클러스터에서 실행 중인 프로세스를 보는 데 사용하는 방법은 사용하는 Amazon EMR 버전에 따라 다릅니다.

------
#### [ EMR 5.30.0 and 6.0.0 and later ]

**Example : 실행 중인 모든 프로세스 나열**  
다음 예제에서는 `systemctl`을 사용하고 `--type`을 지정하여 모든 프로세스를 봅니다.  

```
systemctl --type=service
```

**Example : 특정 프로세스 나열**  
다음 예제에서는 이름에 `hadoop`을 포함하는 모든 프로세스를 나열합니다.  

```
systemctl --type=service | grep -i hadoop
```
출력 예시:  

```
 hadoop-hdfs-namenode.service           loaded active running Hadoop namenode
 hadoop-httpfs.service                  loaded active running Hadoop httpfs
 hadoop-kms.service                     loaded active running Hadoop kms
 hadoop-mapreduce-historyserver.service loaded active running Hadoop historyserver
 hadoop-state-pusher.service            loaded active running Daemon process that processes and serves EMR metrics data.
 hadoop-yarn-proxyserver.service        loaded active running Hadoop proxyserver
 hadoop-yarn-resourcemanager.service    loaded active running Hadoop resourcemanager
 hadoop-yarn-timelineserver.service     loaded active running Hadoop timelineserver
```

**Example : 특정 프로세스에 대한 자세한 상태 보고서 확인**  
다음 예제에서는 `hadoop-hdfs-namenode` 서비스에 대한 자세한 상태 보고서를 표시합니다.  

```
sudo systemctl status hadoop-hdfs-namenode
```
출력 예시:  

```
hadoop-hdfs-namenode.service - Hadoop namenode
   Loaded: loaded (/etc/systemd/system/hadoop-hdfs-namenode.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2021-08-18 21:01:46 UTC; 26min ago
 Main PID: 9733 (java)
    Tasks: 0
   Memory: 1.1M
   CGroup: /system.slice/hadoop-hdfs-namenode.service
           ‣ 9733 /etc/alternatives/jre/bin/java -Dproc_namenode -Xmx1843m -server -XX:OnOutOfMemoryError=kill -9 %p ...

Aug 18 21:01:37 ip-172-31-20-123 systemd[1]: Starting Hadoop namenode...
Aug 18 21:01:37 ip-172-31-20-123 su[9715]: (to hdfs) root on none
Aug 18 21:01:37 ip-172-31-20-123 hadoop-hdfs-namenode[9683]: starting namenode, logging to /var/log/hadoop-hdfs/ha...out
Aug 18 21:01:46 ip-172-31-20-123 hadoop-hdfs-namenode[9683]: Started Hadoop namenode:[  OK  ]
Aug 18 21:01:46 ip-172-31-20-123 systemd[1]: Started Hadoop namenode.
Hint: Some lines were ellipsized, use -l to show in full.
```

------
#### [ EMR 4.x - 5.29.0 ]

**Example : 실행 중인 모든 프로세스 나열**  
다음 예제에서는 실행 중인 모든 프로세스를 나열합니다.  

```
initctl list
```

------
#### [ EMR 2.x - 3.x ]

**Example : 실행 중인 모든 프로세스 나열**  
다음 예제에서는 실행 중인 모든 프로세스를 나열합니다.  

```
ls /etc/init.d/
```

------

## 프로세스 중지 및 다시 시작
<a name="emr-process-restart"></a>

어떤 프로세스가 실행 중인지를 확인한 후 필요하다면 해당 프로세스를 중지했다가 다시 시작할 수 있습니다.

------
#### [ EMR 5.30.0 and 6.0.0 and later ]

**Example : 프로세스 중지**  
다음 예제에서는 `hadoop-hdfs-namenode` 프로세스를 중지합니다.  

```
sudo systemctl stop hadoop-hdfs-namenode
```
`status`를 쿼리하여 프로세스가 중지되었는지 확인할 수 있습니다.  

```
sudo systemctl status hadoop-hdfs-namenode
```
출력 예시:  

```
hadoop-hdfs-namenode.service - Hadoop namenode
  Loaded: loaded (/etc/systemd/system/hadoop-hdfs-namenode.service; enabled; vendor preset: disabled)
  Active: failed (Result: exit-code) since Wed 2021-08-18 21:37:50 UTC; 8s ago
Main PID: 9733 (code=exited, status=143)
```

**Example : 프로세스 시작**  
다음 예제에서는 `hadoop-hdfs-namenode` 프로세스를 시작합니다.  

```
sudo systemctl start hadoop-hdfs-namenode
```
상태를 쿼리하여 프로세스가 실행 중인지 확인할 수 있습니다.  

```
sudo systemctl status hadoop-hdfs-namenode
```
출력 예시:  

```
hadoop-hdfs-namenode.service - Hadoop namenode
   Loaded: loaded (/etc/systemd/system/hadoop-hdfs-namenode.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2021-08-18 21:38:24 UTC; 2s ago
  Process: 13748 ExecStart=/etc/init.d/hadoop-hdfs-namenode start (code=exited, status=0/SUCCESS)
 Main PID: 13800 (java)
    Tasks: 0
   Memory: 1.1M
   CGroup: /system.slice/hadoop-hdfs-namenode.service
           ‣ 13800 /etc/alternatives/jre/bin/java -Dproc_namenode -Xmx1843m -server -XX:OnOutOfMemoryError=kill -9 %p...
```

------
#### [ EMR 4.x - 5.29.0 ]

**Example : 실행 중인 프로세스 중지**  
다음 예제에서는 `hadoop-hdfs-namenode` 서비스를 중지합니다.  

```
sudo stop hadoop-hdfs-namenode
```

**Example : 중지된 프로세스 다시 시작**  
다음 예제에서는 `hadoop-hdfs-namenode` 서비스를 다시 시작합니다. `restart`가 아닌 `start` 명령을 사용해야 합니다.  

```
sudo start hadoop-hdfs-namenode
```

**Example : 프로세스 상태 확인**  
다음에서는 `hadoop-hdfs-namenode`에 대한 상태를 가져옵니다. `status` 명령을 사용하여 프로세스가 중지 또는 시작되었는지 확인할 수 있습니다.  

```
sudo status hadoop-hdfs-namenode
```

------
#### [ EMR 2.x - 3.x ]

**Example : 애플리케이션 프로세스 중지**  
다음 예제에서는 클러스터에 설치된 Amazon EMR 버전과 연결된 `hadoop-hdfs-namenode` 서비스를 중지합니다.  

```
sudo /etc/init.d/hadoop-hdfs-namenode stop
```

**Example : 애플리케이션 프로세스 다시 시작**  
다음 예제 명령은 `hadoop-hdfs-namenode` 프로세스를 다시 시작합니다.  

```
sudo /etc/init.d/hadoop-hdfs-namenode start
```

**Example : Amazon EMR 프로세스 중지**  
다음 예제에서는 클러스터의 Amazon EMR 버전과 연결되지 않은 프로세스(예: instance-controller)를 중지합니다.  

```
sudo /sbin/stop instance-controller
```

**Example : Amazon EMR 프로세스 다시 시작**  
다음 예제에서는 클러스터의 Amazon EMR 버전과 연결되지 않은 프로세스(예: instance-controller)를 다시 시작합니다.  

```
sudo /sbin/start instance-controller
```

**참고**  
`/sbin/start, stop` 및 `restart` 명령은 `/sbin/intictl`에 대한 symlinks입니다. `initctl`에 대한 자세한 내용은 명령 프롬프트에서 `man initctl`을 입력해 initctl man 페이지를 참조하세요.

------