JAVA_ARGS는 자바 환경변수를 정의합니다. 명령 인수 XMS는 초기 메모리 할당 크기, XMX는 최대 메모리 할당 크기를 결정합니다. 기본적으로 둘 다 2GB로 지정되어 있습니다. 퍼팻 서버가 제공해야 할 카탈로그 정보의 크기가 너무 크거나 관리해야 할 노드가 많다면 퍼팻 서버가 사용할 메모리를 늘려야 합니다. 퍼팻 서버뿐만 아니라 게이트웨이 장치로 다양한 서비스를 제공해야 하므로, 여기에서는 512MB만 할당하도록 합니다.
# Modify this if you'd like to change the memory allocation, enable JMX, etc
#JAVA_ARGS="-Xms2g -Xmx2g -Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger"
JAVA_ARGS="-Xms512m -Xmx512m -Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger"
변경한 설정 내용을 반영하려고 퍼팻 서버를 다시 시작합니다.
administrator@vmgate:~$ sudo systemctl restart puppetserver
퍼팻 서버가 메모리를 많이 차지하기 때문에 시작하는 데 다소 시간이 걸립니다. 실제로 실습해 보면 퍼팻 에이전트가 통신을 시도했지만 퍼팻 서버를 사용할 수 있는 상태가 아니라서 오류가 발생하는 경우를 종종 볼 수 있습니다. 그럴 때마다 systemctl status 명령으로 퍼팻 서버의 상태를 점검해야 합니다.
administrator@vmgate:~$ systemctl status puppetserver
* puppetserver.service - puppetserver Service
Loaded: loaded (/lib/systemd/system/puppetserver.service; disabled; vendor preset: enabled)
Active: active (running) since Wed 2019-10-09 12:14:15 KST; 4s ago
Process: 17464 ExecStart=/opt/puppetlabs/server/apps/puppetserver/bin/puppetserver start (code=exited, status=0/SUCCESS)
Main PID: 17473 (java)
Tasks: 40 (limit: 4915)
CGroup: /system.slice/puppetserver.service
`-17473 /usr/bin/java -Xms512m -Xmx512m -Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger -XX:OnOutOfMemoryError=ki
Oct 09 12:13:33 vmgate systemd[1]: Starting puppetserver Service...
Oct 09 12:14:15 vmgate systemd[1]: Started puppetserver Service.