27장. 언더클라우드 및 오버클라우드 서비스 관련 팁

이 섹션에서는 언더클라우드의 특정 OpenStack 서비스 조정 및 관리와 관련된 조언을 제공합니다.

27.1. 데이터베이스 플러시 간격 검토

일부 서비스는 cron 컨테이너를 사용하여 데이터베이스에서 오래된 콘텐츠를 플러시합니다.

  • OpenStack Identity(keystone): 만료된 토큰을 플러시합니다.
  • OpenStack Orchestration(heat): 만료된 삭제된 템플릿 데이터를 플러시합니다.
  • OpenStack Compute(nova): 만료된 삭제된 인스턴스 데이터를 플러시합니다.

각 서비스의 기본 플러시 기간은 다음 표에 나와 있습니다.

서비스플러시되는 데이터베이스 콘텐츠기본 플러시 간격

OpenStack Identity(keystone)

만료된 토큰

1 시간 마다

OpenStack Orchestration(heat)

만료된 후 30일이 지난 삭제된 템플릿 데이터

매일

OpenStack Compute(nova)

삭제된 아카이브 인스턴스 데이터

매일

OpenStack Compute(nova)

14일이 지난 아카이브된 데이터 플러시

매일

다음 표에는 이러한 cron 작업을 제어하는 데 사용할 수 있는 매개변수가 요약되어 있습니다.

표 27.1. OpenStack Identity(keystone) cron 매개변수

매개변수설명

KeystoneCronTokenFlushMinute

만료된 토큰을 제거하기 위한 Cron 작업 - 분. 기본값은 1입니다.

KeystoneCronTokenFlushHour

만료된 토큰을 제거하기 위한 Cron 작업 - 시간. 기본값은 *입니다.

KeystoneCronTokenFlushMonthday

만료된 토큰을 제거하기 위한 Cron 작업 - 날짜. 기본값은 *입니다.

KeystoneCronTokenFlushMonth

만료된 토큰을 제거하기 위한 Cron 작업 - 월. 기본값은 *입니다.

KeystoneCronTokenFlushWeekday

만료된 토큰을 제거하기 위한 Cron 작업 - 요일. 기본값은 *입니다.

표 27.2. OpenStack Orchestration(heat) cron 매개변수

매개변수설명

HeatCronPurgeDeletedAge

삭제된 것으로 표시되었고 $age가 지난 데이터베이스 항목을 제거하기 위한 Cron 작업 - 기간(Age). 기본값은 30입니다.

HeatCronPurgeDeletedAgeType

삭제된 것으로 표시되었고 $age가 지난 데이터베이스 항목을 제거하기 위한 Cron 작업 - 기간(Age) 유형. 기본값은 days입니다.

HeatCronPurgeDeletedMinute

삭제된 것으로 표시되었고 $age가 지난 데이터베이스 항목을 제거하기 위한 Cron 작업 - 분. 기본값은 1입니다.

HeatCronPurgeDeletedHour

삭제된 것으로 표시되었고 $age가 지난 데이터베이스 항목을 제거하기 위한 Cron 작업 - 시간. 기본값은 0입니다.

HeatCronPurgeDeletedMonthday

삭제된 것으로 표시되었고 $age가 지난 데이터베이스 항목을 제거하기 위한 Cron 작업 - 날짜. 기본값은 *입니다.

HeatCronPurgeDeletedMonth

삭제된 것으로 표시되었고 $age가 지난 데이터베이스 항목을 제거하기 위한 Cron 작업 - 월. 기본값은 *입니다.

HeatCronPurgeDeletedWeekday

삭제된 것으로 표시되었고 $age가 지난 데이터베이스 항목을 제거하기 위한 Cron 작업 - 요일. 기본값은 *입니다.

표 27.3. OpenStack Compute(nova) cron 매개변수

매개변수

설명

NovaCronArchiveDeleteRowsMaxRows

삭제된 인스턴스를 다른 테이블로 이동하기 위한 Cron 작업 - 최대 행 수. 기본값은 100입니다.

NovaCronArchiveDeleteRowsPurge

예약된 아카이브 후 즉시 새도우 테이블을 제거합니다. 기본값은 False입니다.

NovaCronArchiveDeleteRowsMinute

삭제된 인스턴스를 다른 테이블로 이동하기 위한 Cron 작업 - 분. 기본값은 1입니다.

NovaCronArchiveDeleteRowsHour

삭제된 인스턴스를 다른 테이블로 이동하기 위한 Cron 작업 - 시간. 기본값은 0입니다.

NovaCronArchiveDeleteRowsMonthday

삭제된 인스턴스를 다른 테이블로 이동하기 위한 Cron 작업 - 날짜. 기본값은 *입니다.

NovaCronArchiveDeleteRowsMonth

삭제된 인스턴스를 다른 테이블로 이동하기 위한 Cron 작업 - 월. 기본값은 *입니다.

NovaCronArchiveDeleteRowsWeekday

삭제된 인스턴스를 다른 테이블로 이동하기 위한 Cron 작업 - 요일. 기본값은 *입니다.

NovaCronArchiveDeleteRowsUntilComplete

삭제된 인스턴스를 다른 테이블로 이동하기 위한 Cron 작업 - 완료 시까지. 기본값은 True입니다.

NovaCronPurgeShadowTablesAge

새도우 테이블을 제거하기 위한 Cron 작업 - 기간(Age). 이 매개변수는 새도우 테이블 제거 시의 보존 정책을 날짜 단위로 정의합니다. 값이 0이면 새도우 테이블에서 오늘 이전의 데이터가 제거됩니다. 기본값은 14입니다.

NovaCronPurgeShadowTablesMinute

섀도우 테이블을 제거하기 위한 Cron 작업 - 분. 기본값은 0입니다.

NovaCronPurgeShadowTablesHour

섀도우 테이블을 제거하기 위한 Cron 작업 - 시간. 기본값은 5입니다.

NovaCronPurgeShadowTablesMonthday

섀도우 테이블을 제거하기 위한 Cron 작업 - 날짜. 기본값은 *입니다.

NovaCronPurgeShadowTablesMonth

섀도우 테이블을 제거하기 위한 Cron 작업 - 월. 기본값은 *입니다.

NovaCronPurgeShadowTablesWeekday

섀도우 테이블을 제거하기 위한 Cron 작업 - 요일. 기본값은 *`입니다.

이러한 간격을 조정하려면 해당 서비스에 대한 토큰 플러시 간격을 포함하는 환경 파일을 생성하고, undercloud.conf 파일의 custom_env_files 매개변수에 이 파일을 추가합니다. 예를 들어 OpenStack Identity(keystone) 토큰 플러시를 30분으로 변경하려면 다음 스니펫을 사용합니다.

keystone-cron.yaml

parameter_defaults:
  KeystoneCronTokenFlushMinute: '0/30'

undercloud.yaml

custom_env_files: keystone-cron.yaml

그런 다음, openstack undercloud install 명령을 재실행합니다.

$ openstack undercloud install
참고

이 매개변수를 오버클라우드에 사용할 수도 있습니다. 자세한 내용은 Overcloud Parameters 가이드를 참조하십시오.