U4 Compute Engine 인스턴스의 정확한 시간 구성
이 페이지에서는 U4 Compute Engine 인스턴스의 정확한 시간을 구성하는 방법과 시간 동기화의 정확성을 확인할 수 있도록 모니터링을 구성하는 방법을 설명합니다.
작동 방식
Google Cloud 초저지연 시간 (ULL) 솔루션은 Firefly 시계 동기화 프로토콜을 사용하여 나노초 수준의 동기화를 제공합니다. Firefly는 다음을 자동으로 실행합니다.
- 모든 U4 인스턴스 호스트 서버의 실제 네트워크 인터페이스 (NIC) 시계를 서로 동기화하기 위해 내부 동기화를 실행합니다.
- 모든 U4 인스턴스 호스트 서버의 실제 네트워크 인터페이스 카드 시계를 협정 세계시 (UTC)에 동기화하기 위해 외부 동기화를 실행합니다.
U4 인스턴스를 실행하는 호스트 서버의 실제 NIC 시계는 Firefly에 의해 자동으로 동기화되므로 인스턴스의 시스템 시계를 호스트 서버의 실제 NIC 시계와 동기화하여 인스턴스의 정확한 시간을 구성할 수 있습니다.
Firefly에 대한 자세한 내용은 Google Cloud 블로그 게시물 Understanding the Firefly clock synchronization protocol을 참고하세요.
시작하기 전에
U4 Compute Engine 인스턴스의 정확한 시간을 구성하기 전에 다음 섹션을 참고하세요.
필요한 이미지를 사용하여 U4 인스턴스 만들기
테스트를 위해 Google에서 제공하는 이미지를 사용하여 U4 Compute Engine 인스턴스를 만듭니다. 사용 사례에 해당하는 절차를 참고하세요.
- U4P 또는 U4C 인스턴스를 만들려면 ULL Compute Engine 인스턴스 만들기를 참고하세요.
- U4S 인스턴스를 만들려면 보조 워크로드용 비ULL Compute Engine 인스턴스 만들기를 참고하세요.
다른 시계 동기화 서비스가 실행되고 있지 않은지 확인
이 페이지의 절차에서는 권장되는 시계 동기화 클라이언트로 chrony을 사용합니다. 시작하기 전에 인스턴스에서 ntpd, systemd-timesyncd, phc2sys와 같은 다른 시계 동기화 서비스가 실행되고 있지 않은지 확인합니다. 이러한 서비스와의 예기치 않은 상호작용으로 인해 chrony 구성에 오류가 발생할 수 있습니다.
chrony 버전 4.7 이상에서는 다음 명령어를 실행하여 다른 시계 동기화 서비스의 chronyd 경고 로그를 확인할 수 있습니다.
journalctl -u chronyd
다른 시계 동기화 서비스가 실행 중이면 출력에 System clock interference detected (another NTP client?)와 같은 경고 메시지가 포함됩니다.
네트워크 드라이버가 안정된 후에만 로드되도록 chrony 구성
경우에 따라 systemd가 네트워크 인터페이스 드라이버가 초기화를 완료하기 전에 chrony를 로드할 수 있으며, 이로 인해 PTP 하드웨어 시계 (PHC) 기기를 초기화할 수 없어 chrony가 시작되지 않을 수 있습니다.
위의 문제를 방지하려면 PHC 기기가 준비될 때까지 기다리도록 chrony의 systemd 단위 파일을 재정의하세요.
다음과 같이 수정 명령어를 실행합니다.
systemctl edit chronyd
인스턴스 유형에 해당하는 재정의를 추가합니다.
U4P 및 U4C 인스턴스의 경우:
[Unit] After=dev-ptp0.device dev-ptp1.device dev-ptp2.device Requires=dev-ptp0.device dev-ptp1.device dev-ptp2.device
U4S 인스턴스의 경우:
[Unit] After=dev-ptp0.device Requires=dev-ptp0.device
서비스를 다시 시작합니다. 이전에 실행한
systemctl edit명령어가 데몬을 자동으로 다시 로드했지만, 변경 후chrony가 실행되고 있는지 확인하려면 다음 명령어를 실행하는 것이 좋습니다.systemctl restart chronyd
Firefly와 동기화된 실제 NIC 시계를 사용하도록 chrony 구성
이 섹션에서는 chrony를 구성하여 인스턴스의 시스템 시계를 Firefly에 의해 이미 동기화된 인스턴스의 호스트 서버에 있는 실제 NIC 시계와 동기화하는 방법을 설명합니다.
게스트 OS (예: eth0)에 표시된 U4 인스턴스의 가상 네트워크 인터페이스(vNIC)는 인스턴스의 호스트 서버에 있는 실제 NIC에 매핑됩니다. 지정된 vNIC는 해당 PTP 하드웨어 시계 (PHC) 기기를 사용하여 실제 NIC 시계에 액세스할 수 있습니다.
Linux의 PHC 기기 이름은
/dev/ptpNUMBER형식입니다. 여기서NUMBER는 기기 초기화 순서에 따라 Linux 커널에 의해 결정됩니다. 예를 들어/dev/ptp0,/dev/ptp1,/dev/ptp2와 같은 PHC 기기 이름을 참고하세요.동기화 소스로 실제 NIC 클럭을 지정하려면
chrony구성이 해당 PHC 기기를 사용하거나 해당 PHC 기기로 확인되어야 합니다.
다음 각 섹션에서는 앞의 요구사항에 따라 chrony를 구성하는 방법을 보여주는 예를 제공합니다. 인스턴스 유형 및 chrony 버전에 해당하는 섹션을 참고하세요.
U4P 및 U4C 인스턴스에서 chrony 4.7 이상 구성
chrony 버전 4.7 이상에서는 eth0과 같은 vNIC 이름을 클럭 소스로 지정하는 것을 지원하며 물리적 NIC 클럭을 나타내는 해당 PTP 하드웨어 클럭(PHC) 기기로 자동 확인합니다.
U4P 또는 U4C 인스턴스에서 chrony 버전 4.7 이상을 구성하려면 다음을 실행하세요.
chrony구성 파일(/etc/chrony.conf)에 다음을 추가합니다. 파일에는 다음 구성만 포함되어야 합니다. 파일의 기존 콘텐츠를 삭제하거나 덮어쓰세요.# Record the rate at which the system clock gains/loses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 micro-second. makestep 0.0000001 3 # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. log measurements statistics tracking refclocks # U4 Compute Engine instance clocks are 200ppb accurate maxclockerror 0.2 # Configure all clocks for tracking, but select only one of them as source. refclock PHC eth0:nocrossts poll -1 noselect refclock PHC eth1:nocrossts poll -1 refclock PHC eth2:nocrossts poll -1 noselect # The following lines opportunistically enable Precision Time Measurement (PTM) based clock synchronization. # Note that PTM can potentially result in a (constant) clock skew of up to 700 nanoseconds # which is not accounted for in chrony's accuracy metrics. refclock PHC eth0 poll -1 noselect refclock PHC eth1 poll -1 noselect refclock PHC eth2 poll -1 noselect
구성을 적용하려면 다음 명령어를 실행하여
chrony를 다시 시작합니다.systemctl restart chronyd
chrony는eth1의 PTP 하드웨어 시계를 시간 소스로 사용하여/var/log/chrony/tracking.log에 시계 동기화 통계를 기록합니다.
U4P 및 U4C 인스턴스에서 chrony 4.6.1 이하 구성
chrony 버전 4.6.1 이하에서는 구성 파일에 PTP 하드웨어 클럭 (PHC) 기기 이름을 수동으로 지정해야 합니다.
U4P 또는 U4C 인스턴스에서 chrony 버전 4.6.1 이하를 구성하려면 다음 단계를 따르세요.
vNIC와 연결된 PHC 기기의 색인 번호를 가져옵니다. 다음 예시는
eth0를 사용합니다.ethtool -T eth0
PTP Hardware Clock:NUMBER의 출력을 검토합니다.이 예시 출력은
/dev/ptp1에 해당하는PTP Hardware Clock: 1을 보여줍니다.Time stamping parameters for eth0: Capabilities: hardware-receive software-receive software-system-clock hardware-raw-clock PTP Hardware Clock: 1 Hardware Transmit Timestamp Modes: off Hardware Receive Filter Modes: none all
chrony구성 파일(/etc/chrony.conf)에 다음을 추가합니다. 파일에는 다음 구성만 포함되어야 합니다. 파일의 기존 콘텐츠를 삭제하거나 덮어쓰세요.이전 단계의
ethtool출력에 따르면eth0는/dev/ptp1을 사용합니다. 다음 예에서는refclock PHC /dev/ptp1:nocrossts poll -1를 지정하여eth0의 시스템 시계를 해당 실제 NIC 시계와 동기화합니다.# Record the rate at which the system clock gains/loses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 micro-second. makestep 0.0000001 3 # Enable kernel synchronization of the real-time clock (RTC). rtcsync # Save NTS keys and cookies. ntsdumpdir /var/lib/chrony # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. log measurements statistics tracking refclocks # U4 Compute Engine instance clocks are 200ppb accurate maxclockerror 0.2 # Configure all clocks for tracking, but select only one of them as source. refclock PHC /dev/ptp0:nocrossts poll -1 noselect refclock PHC /dev/ptp1:nocrossts poll -1 refclock PHC /dev/ptp2:nocrossts poll -1 noselect # The following lines opportunistically enable Precision Time Measurement (PTM) based clock synchronization. # Note that PTM can potentially result in a (constant) clock skew of up to 700 nanoseconds # which is not accounted for in chrony's accuracy metrics. refclock PHC /dev/ptp0 poll -1 noselect refclock PHC /dev/ptp1 poll -1 noselect refclock PHC /dev/ptp2 poll -1 noselect
구성을 적용하려면 다음 명령어를 실행하여
chrony를 다시 시작합니다.systemctl restart chronyd
chrony는eth0의 PTP 하드웨어 시계를 시간 소스로 사용하여/var/log/chrony/tracking.log에 시계 동기화 통계를 기록합니다.
U4S 인스턴스에서 chrony 4.7 이상 구성
U4S 인스턴스에는 chrony 버전 4.7 이상을 사용하는 것이 좋습니다.
이전 버전을 사용하면 가상 머신 (VM) 인스턴스의 Compute Engine 시계 동기화 기기 (ptp_kvm)로 인해 PTP 하드웨어 시계 (PHC) 기기의 색인 번호가 변경될 수 있으므로 오류가 자주 발생할 수 있습니다.
U4S 인스턴스의 이 예시 구성은 U4P 및 U4C 인스턴스에 사용되는 구성과 비슷하지만 다음과 같은 차이점이 있습니다.
- 이 예시에는 단일 vNIC가 포함되어 있습니다. U4S 인스턴스에는 vNIC가 여러 개 있을 수 있지만 모든 vNIC는 동일한 물리적 NIC로 지원되고 동일한 물리적 NIC 클럭에 액세스합니다.
- 정밀 시간 측정 (PTM)을 사용할 수 없습니다.
U4S 인스턴스에서 chrony 버전 4.7 이상을 구성하려면 다음 단계를 따르세요.
chrony구성 파일(/etc/chrony.conf)에 다음을 추가합니다. 파일에는 다음 구성만 포함되어야 합니다. 파일의 기존 콘텐츠를 삭제하거나 덮어쓰세요.# Record the rate at which the system clock gains/loses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 micro-second. makestep 0.0000001 3 # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. log measurements statistics tracking refclocks # U4 Compute Engine instance clocks are 200ppb accurate maxclockerror 0.2 # Configure all clocks for tracking, but select only one of them as source. refclock PHC eth0:nocrossts poll -1
구성을 적용하려면 다음 명령어를 실행하여
chrony를 다시 시작합니다.systemctl restart chronyd
chrony는eth0의 PTP 하드웨어 시계를 시간 소스로 사용하여/var/log/chrony/tracking.log에 시계 동기화 통계를 기록합니다.
chrony 구성 확인
chrony가 올바르게 구성되었는지 확인하려면 다음 명령어를 실행합니다.
chronyc sourcestats
성공적인 구성은 다음과 유사한 결과를 출력합니다.
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev ============================================================================== PHC0 5 3 2 -0.002 0.014 +9ns 2ns PHC1 5 3 2 -0.003 0.007 -0ns 1ns PHC2 5 3 2 -0.004 0.016 +33ns 2ns PHC3 5 5 2 +0.002 0.078 +135ns 10ns PHC4 5 3 2 -0.005 0.077 +130ns 9ns PHC5 5 5 2 -0.006 0.131 +123ns 16ns
명령어가 예기치 않은 출력을 반환하는 경우 문제 해결을 참고하세요.
chrony 구성 수정
인스턴스의 시스템 시계를 동기화할 실제 NIC를 수정하려면 다음과 같이 구성을 업데이트하면 됩니다.
- 해당 실제 NIC 클럭을 사용하려는 vNIC 이름이 포함된 줄에서
noselect을 삭제합니다. - 해당 실제 NIC 클럭 사용을 중지하려는 vNIC 이름이 포함된 줄에
noselect을 추가합니다. chronyd를 다시 시작하여 새 구성을 적용합니다(systemctl restart chronyd).
시간 동기화 모니터링
이 섹션에서는 시간 동기화에 사용할 수 있는 측정항목과 이를 사용하여 시간 동기화 정확도를 모니터링하는 방법을 설명합니다.
시간 동기화에 사용할 수 있는 측정항목
다음 측정항목을 사용하여 시간 동기화를 모니터링할 수 있습니다.
| 측정 | 사용 가능한 측정항목 및 설명 |
|---|---|
| 인스턴스 시스템 시계에서 실제 NIC 시계로 |
logging.googleapis.com/user/phc-clock-max-error
이 측정항목은 인스턴스 시스템 시계와 호스트 서버의 실제 NIC 시계 간 동기화의 정확도를 측정합니다. 운영 에이전트에서 이 측정항목을 수집하고 인스턴스 시스템 시계의 커스텀 측정항목 구성에 설명된 대로 로그 기반 측정항목을 만들어 이 측정항목을 구성해야 합니다. 이렇게 하면 커스텀 대시보드도 만들어집니다. 또한 Cloud Monitoring 측정항목 사용에 설명된 절차에서 이 측정항목을 사용할 수 있습니다. |
| 물리적 NIC 시계를 UTC로 |
compute.googleapis.com/instance/time/firefly_utc_traceable_uncertainty
이 측정항목은 실제 UTC 시간과 비교한 물리적 NIC 시계의 최대 오류 범위를 나타냅니다. Cloud Monitoring에 자동으로 보고됩니다. Cloud Monitoring 측정항목 사용에 설명된 대로 이 측정항목을 보고, 알림 정책을 정의하고, 커스텀 대시보드를 만듭니다. |
| 물리적 NIC 클럭의 일반적인 상태 |
compute.googleapis.com/instance/time/firefly_nic_sync_healthy
이 불리언 측정항목은 NIC 간 동기화와 NIC-UTC 동기화를 모두 포함하여 실제 NIC 클럭의 일반적인 상태를 나타냅니다. Cloud Monitoring에 자동으로 보고됩니다. Cloud Monitoring 측정항목 사용에 설명된 대로 이 측정항목을 보고, 알림 정책을 정의하고, 커스텀 대시보드를 만듭니다. |
Cloud Monitoring에서 측정항목 데이터를 보관하는 기간에 대한 자세한 내용은 Cloud Monitoring 할당량 및 한도의 데이터 보관을 참고하세요. 장기 분석을 위해 측정항목을 내보내는 방법에 대한 자세한 내용은 Cloud 아키텍처 센터 문서의 Cloud Monitoring 측정항목 내보내기를 참고하세요.
인스턴스 시스템 시계의 맞춤 측정항목 구성
이 섹션에서는 다음을 수행하는 모니터링 구성의 예를 제공합니다.
- 인스턴스에서 동기화 정확도를 위해
chrony의 로그를 수집하도록 운영 에이전트를 구성합니다. - 프로젝트의 모든 인스턴스에서 해당 로그를 로그 기반 측정항목으로 수집하도록 Cloud Monitoring을 구성합니다.
인스턴스에서 Google Cloud 운영 에이전트 구성
모니터링에 필요한 측정항목을 수집하도록 운영 에이전트를 구성하려면 다음 단계를 따르세요.
아직 인스턴스에 운영 에이전트를 설치하지 않았다면 설치합니다.
/etc/google-cloud-ops-agent/config.yaml파일에 다음 구성을 추가합니다.logging: receivers: chrony_tracking_receiver: type: files include_paths: - /var/log/chrony/tracking.log processors: chrony_tracking_processor: type: parse_regex regex: "^.*PHC.* (?<max_error>[-\d\.eE]+)$" service: pipelines: chrony_tracking_pipeline: receivers: [chrony_tracking_receiver] processors: [chrony_tracking_processor]
다음 명령어를 실행하여 운영 에이전트를 다시 시작합니다.
systemctl restart google-cloud-ops-agent
프로젝트에서 로그 기반 측정항목 및 대시보드 구성
프로젝트의 인스턴스에 대한 시간 동기화 모니터링을 구성하려면 다음 로깅 및 대시보드 설정 스크립트를 실행하세요. 이 스크립트는 다음 작업을 완료하는 데 도움이 됩니다.
- 인스턴스의 프로젝트와 연결된 서비스 계정에 적절한 권한을 설정합니다. 스크립트는 인스턴스에 사용되는 서비스 계정이 프로젝트의 기본 서비스 계정이라고 가정합니다. 필요한 경우
SERVICE_ACCOUNT_EMAIL를 다른 값으로 바꿉니다. - 인스턴스의 시스템 시계와 인스턴스 호스트 서버의 실제 NIC 시계 간의 시간 동기화 정확도를 측정하는 로그 기반 측정항목을 만듭니다.
- 측정항목을 기반으로 시간 동기화의 정확도를 표시하는 대시보드를 만듭니다.
앞의 작업을 완료하려면 다음 스크립트를 실행하세요. 스크립트 실행이 완료되면 스크립트에서 만든 대시보드를 사용하여 프로젝트 인스턴스의 시계 정확도 데이터를 확인합니다.
#!/bin/bash if [ -z "$1" ]; then echo "Usage: setup_logging.sh <project_id>" >&2 exit 1 fi PROJECT_ID="$1" PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)") SERVICE_ACCOUNT_EMAIL=${PROJECT_NUMBER}-compute@developer.gserviceaccount.com # Grant permissions: gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member="serviceAccount:${SERVICE_ACCOUNT_EMAIL}" \ --role="roles/compute.instanceAdmin" gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member="serviceAccount:${SERVICE_ACCOUNT_EMAIL}" \ --role="roles/monitoring.metricWriter" gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member="serviceAccount:${SERVICE_ACCOUNT_EMAIL}" \ --role="roles/logging.logWriter" # Configure log-based metric METRIC_CONF=' { "name": "phc-clock-max-error", "description": "Maximum error of the VM clock from the host clock exposed by ptp_kvm", "filter": "logName=~\".*/logs/chrony_tracking_receiver\"", "metricDescriptor": { "metricKind": "DELTA", "valueType": "DISTRIBUTION", "unit": "s", "labels": [ { "key": "instance_id", "valueType": "STRING", "description": "Instance ID for the source instance" } ] }, "valueExtractor": "REGEXP_EXTRACT(jsonPayload.max_error, \"(.*)\")", "bucketOptions": { "explicitBuckets": { "bounds": [ 0.0, 1.0E-6, 5.0E-6, 1.0E-5, 1.0E-4, 0.001, 0.01, 0.1, 1.0 ] } }, "labelExtractors": { "instance_id": "REGEXP_EXTRACT(resource.labels.instance_id, \"(.*)\")" } } ' echo "$METRIC_CONF" > /tmp/clock-error-metric.json gcloud logging metrics create --project=${PROJECT_ID} phc-clock-max-error --config-from-file=/tmp/clock-error-metric.json # Create a dashboard plotting the clock accuracy DASHBOARD_CONF=' { "displayName": "Chrony Accuracy", "dashboardFilters": [], "labels": {}, "mosaicLayout": { "columns": 48, "tiles": [ { "height": 28, "width": 28, "widget": { "xyChart": { "chartOptions": { "displayHorizontal": false, "mode": "COLOR" }, "dataSets": [ { "plotType": "LINE", "targetAxis": "Y1", "timeSeriesQuery": { "prometheusQuery": "(\n histogram_quantile(\n 1,\n sum by (le, instance_id, monitored_resource) (\n increase(\n logging_googleapis_com:user_phc_clock_max_error_bucket{monitored_resource=\"gce_instance\"}[1m]\n )\n )\n ) * 1000000000\n)", "unitOverride": "ns" } } ], "thresholds": [], "yAxis": { "label": "Clock Accuracy", "scale": "LINEAR" } } } } ] } } ' echo "$DASHBOARD_CONF" > /tmp/metrics-dashboard.json gcloud monitoring dashboards create --project=${PROJECT_ID} --config-from-file=/tmp/metrics-dashboard.json
Cloud Monitoring 측정항목 사용
다음 섹션에서는 Cloud Monitoring 측정항목을 사용하는 방법을 설명합니다. 다음 섹션에서 시간 동기화에 사용할 수 있는 측정항목을 각각 사용할 수 있습니다.
Google Cloud 콘솔 외에도 Monitoring API를 통해 커스텀 대시보드를 만들고, 알림을 설정하고, 측정항목을 쿼리할 수 있습니다.
Monitoring에서 측정항목 보기
이 섹션에서는 Monitoring에서 측정항목을 보는 방법을 설명합니다.
콘솔
측정항목 탐색기를 사용하여 모니터링 리소스의 측정항목을 확인하려면 다음을 수행하세요.
-
Google Cloud 콘솔에서 leaderboard 측정항목 탐색기 페이지로 이동합니다.
검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Monitoring인 결과를 선택합니다.
- Google Cloud 콘솔의 툴바에서 Google Cloud 프로젝트를 선택합니다. App Hub 구성의 경우 App Hub 호스트 프로젝트나 앱 지원 폴더의 관리 프로젝트를 선택합니다.
- 측정항목 요소에서 측정항목 선택 메뉴를 펼치고 필터 표시줄에
VM instance을 입력한 후 하위 메뉴를 사용하여 특정 리소스 유형과 측정항목을 선택합니다.- 활성 리소스 메뉴에서 VM 인스턴스를 선택합니다.
- 측정항목을 선택하려면 활성 측정항목 카테고리 및 활성 측정항목 메뉴를 사용합니다. 사용 가능한 측정항목 목록은 시간 동기화에 사용할 수 있는 측정항목을 참고하세요.
- 적용을 클릭합니다.
쿼리 결과에서 시계열을 삭제하는 필터를 추가하려면 필터 요소를 사용합니다.
- 데이터 보기 방법을 구성합니다.
기본적으로 디스플레이는 모든 인스턴스와 실제 NIC의 측정항목을 집계합니다.
NIC별, 인스턴스별 측정항목을 표시하려면 집계 요소에서 집계되지 않음을 선택합니다.
차트 구성에 대한 자세한 내용은 측정항목 탐색기 사용 시 측정항목 선택을 참조하세요.
알림 정책 정의
이 섹션에서는 알림 정책을 정의하는 방법을 설명합니다.
데이터 도착이 중지될 때 Monitoring에서 조건을 평가하는 방법을 구성할 때는 무음 데이터 손실을 포착하는 데 도움이 되는 정책 조건을 위반하는 값으로 취급되는 누락된 데이터 포인트 옵션을 사용하는 것이 좋습니다. 하지만 이 설정은 인스턴스가 삭제될 때 거짓양성 알림을 발생시킵니다.
콘솔
알림 정책을 만들어 측정항목 값을 모니터링하고 측정항목이 조건을 위반하면 이에 대한 알림을 수신할 수 있습니다.
-
Google Cloud 콘솔에서 notifications 알림 페이지로 이동합니다.
검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Monitoring인 결과를 선택합니다.
- 알림 채널을 만들지 않고 알림을 받으려면 알림 채널 수정을 클릭하고 알림 채널을 추가합니다. 채널을 추가한 후 알림 페이지로 돌아갑니다.
- 알림 페이지에서 정책 만들기를 클릭합니다.
- 측정항목을 선택하려면 측정항목 선택 메뉴를 확장한 후 다음을 수행합니다.
- 메뉴를 관련 항목으로 제한하려면 필터 표시줄에
VM Instance을 입력합니다. 메뉴를 필터링한 후 결과가 없으면 활성 리소스 및 측정항목만 표시 전환을 중지합니다. - 리소스 유형에서 VM 인스턴스를 선택합니다.
- 측정항목 카테고리에서 인스턴스를 선택합니다.
- 측정항목의 경우 시간 동기화에 사용할 수 있는 측정항목의 목록에서 측정항목을 선택합니다.
- 적용을 선택합니다.
- 메뉴를 관련 항목으로 제한하려면 필터 표시줄에
- 다음을 클릭합니다.
- 알림 트리거 구성 페이지의 설정에 따라 알림이 트리거되는 시점이 결정됩니다. 조건 유형을 선택하고 필요한 경우 기준점을 지정합니다. 자세한 내용은 측정항목 기준점 알림 정책 만들기를 참고하세요.
- 다음을 클릭합니다.
- (선택사항) 알림 정책에 알림을 추가하려면 알림 채널을 클릭합니다. 대화상자의 메뉴에서 하나 이상의 알림 채널을 선택한 다음 확인을 클릭합니다.
- (선택사항) 사고 자동 종료 기간을 업데이트합니다. 이 필드는 측정항목 데이터가 없어 Monitoring에서 사고를 닫을 시간을 결정합니다.
- (선택사항) 문서를 클릭한 후 알림 메시지에 포함할 정보를 추가합니다.
- 알림 이름을 클릭하고 알림 정책 이름을 입력합니다.
- 정책 만들기를 클릭합니다.
커스텀 Monitoring 대시보드 만들기
이 섹션에서는 맞춤 대시보드를 만드는 방법을 설명합니다.
콘솔
-
Google Cloud 콘솔에서 대시보드 페이지로 이동합니다.
검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Monitoring인 결과를 선택합니다.
- 대시보드 만들기를 클릭합니다.
- 선택사항: 대시보드를 설명하는 이름으로 대시보드 제목을 업데이트합니다.
대시보드에 추가하려는 각 위젯의 경우 위젯 추가를 클릭하고 대화상자를 완료한 후 적용을 선택합니다.
위젯 추가 방법에 대한 자세한 내용은 다음 페이지를 참조하세요.
문제 해결
chrony 구성 확인 시 다음과 같이 chrony 시작에 실패했음을 나타내는 예상치 못한 출력이 표시될 수 있습니다.
506 Cannot talk to daemon
문제 해결을 위해 chrony의 journald 로그를 확인하세요.
journalctl -u chronyd.service
다음 예시 출력은 이전 버전의 chrony가 인스턴스에 설치되어 있는 동안 chrony 4.7 이상용으로 설계된 구성을 적용할 경우 발생하는 오류를 보여줍니다.
Feb 19 06:19:42 host-name systemd[1]: Starting chronyd.service - NTP client/server... Feb 19 06:19:42 host-name chronyd[35160]: chronyd version 4.6.1 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +NTS +SECHASH +IPV6 +DEBUG) Feb 19 06:19:42 host-name chronyd[35160]: Setting filter length for PHC0 to 1 Feb 19 06:19:42 host-name chronyd[35160]: Could not open eth0 : No such file or directory Feb 19 06:19:42 host-name chronyd[35160]: Fatal error : Could not open PHC Feb 19 06:19:42 host-name chronyd[35157]: Could not open PHC Feb 19 06:19:42 host-name systemd[1]: chronyd.service: Control process exited, code=exited, status=1/FAILURE Feb 19 06:19:42 host-name systemd[1]: chronyd.service: Failed with result 'exit-code'. Feb 19 06:19:42 host-name systemd[1]: Failed to start chronyd.service - NTP client/server.
제한사항
다음 제한사항을 참고하세요.
firefly_utc_traceable_uncertainty및firefly_nic_sync_healthy측정항목은 U4P 및 U4C 인스턴스에서만 사용할 수 있습니다. 이러한 측정항목은 U4S 인스턴스에 사용할 수 없습니다.