Monitoring サービス移行ガイド

Prev Next

Classic/VPC環境で利用できます。

NAVERクラウドプラットフォームの Classic環境で提供されていた Monitoringは、2023年10月20日までのみ提供される予定です。2023年10月19日以降は Classic環境の Serverと Auto Scalingサービスのモニタリングは、NAVERクラウドプラットフォームの統合モニタリングサービスである Cloud Insightでのみモニタリングできます。

このガイドを通して Monitoringを Cloud Insightに移行する方法を確認し、サービスの利用に不便がないよう2023年10月19日までにサービスを移行してください。

Server(Classic)

Monitoringと Cloud Insightは Agentをサーバにインストールしてパフォーマンス情報を収集します。Monitoringと Cloud Insightで使用している Agentはそれぞれ異なるため、互換性がありません。そのため、以下のガイドを参照して従来に運用中のサーバから Monitoringサービスの Agentを削除し、Cloud Insight Agentをインストールする必要があります。

当該移行タスクによるサーバの再起動は必要ありません。

注意

Auto Scaling(Classic)で作成した Auto Scaling Group内の Server(Classic)の Agentは更新をお勧めしません。

  • 現在、Cloud Insightは Auto Scaling(Classic)のモニタリングと Policy実行をサポートしていません。
  • また、Auto Scaling Group内の Server(Classic)に Monitoring、Cloud Insight Agentが混在している場合、Auto Scaling Groupの正常なパフォーマンス情報を収集できません。
  • そのため、Auto Scaling Groupで Metricベースの Auto Scaling Policy(例: グループモニタリング CPU Usageが50%以上の場合、Scale Out)を適用した場合、予期せぬ Auto Scaling Policyの実行が発生する可能性があります。

Cloud Insightの Auto Scaling(Classic)のサポートおよび Auto Scaling Group内の Server(Classic)の Agentアップデートスケジュールは、別途ご案内する予定です。

サーバにインストールされた Agentバージョンの確認方法

以下の方法を通して Monitoringサービスの Agentがインストールされたか確認できます。
Monitoringサービスの Agentがインストールされている場合、Cloud Insightを通してモニタリングできるように、当該 Agentを削除して Cloud Insight Agentをインストールする必要があります。

Linux

以下のコマンドを実行して noms_nsight -startプロセスが実行中の場合、Monitoringサービスの Agentが動作中であるため、Agentのアップデートが必要です。

#ps -ef | grep noms_nsight 

Windows

Windowsのサービスステータスを確認します。

  • noms_nsight のサービスステータスを確認します。当該サービスが実行中の場合、Monitoringサービスの Agentが動作中であるため、Agentのアップデートが必要です。

Monitoring Agentの削除と Cloud Insight Agentのインストール

以下の方法を通して Monitoring Agentを削除し、Cloud Insight Agentをインストールできます。

Linux

Linux環境の場合、次の内容をご参照ください。

Monitoring Agentの削除、Cloud Insight Agentのインストール
Monitoring Agentを削除し、Cloud Insight Agentをインストールする方法は、次の通りです。

以下のスクリプト内容をサーバ内部にファイルとして保存して実行します。全過程を root権限で行う必要があります。

% bash uninstall_nsight1_install_nsight2.sh
注意

ubuntuで shコマンドを通じてスクリプトを実行すると、bash記法エラーが発生することがあります。この場合、bashコマンドを通じてスクリプトを実行します。

または以下のパスでファイルをダウンロードできます。

uninstall_nsight1_install_nsight2.sh

#!/bin/bash

# variable
if [ -f /etc/redhat-release ]; then
    OS=$( cat /etc/redhat-release | awk '{print $1}' )
    OS_MAJOR=$( cat /etc/redhat-release | grep -Po '(?<=release )\d+' )
elif [ $( command -v lsb_release ) ]; then
    OS=$( lsb_release -i 2> /dev/null | awk '{print $3}' )
    OS_MAJOR=$( /bin/cat /etc/lsb-release | grep "DISTRIB_RELEASE" | cut -d '=' -f2 | cut -d '.' -f1 )
fi

if [ "$( dmidecode -s system-manufacturer )" == "Xen" ] || [ $(/usr/sbin/virt-what 2> /dev/null | grep -i -c xen) -ge 1 ] || [ -d /sys/bus/xen/devices/vif-0 ] || [ $(ps -ef |grep /usr/sbin/xe-daemon | grep -v grep | wc -l ) -ge 1 ]; then
    AGENT_DIR="/home1/nbpmon"
    if [ "$OS_MAJOR" = 12 ] || [ "$OS_MAJOR" = 6 ] || [ "$OS" = "Debian" ] ; then # eol
        AGENT_FILE="agent_controller_linux_ncp_eol.tar.gz"
    else
        AGENT_FILE="agent_controller_linux_ncp.tar.gz"
    fi
    AGENT_INSTALL_PARAMETER="pub-classic"
else
    AGENT_DIR="/"
    if [ "$OS_MAJOR" = 12 ] || [ "$OS_MAJOR" = 6 ] || [ "$OS" = "Debian" ] ; then # eol
        AGENT_FILE="agent_controller_linux_pub_eol_bm.tar.gz"
    else
        AGENT_FILE="agent_controller_linux_pub_common_bm.tar.gz"
    fi
    AGENT_INSTALL_PARAMETER="classic"
fi

AGENT_INSTALLER="https://repo-nsight.ncloud.com/$AGENT_FILE"

# rc.local modify
function rc_local_remove() {
    RC_LOCAL=$( cat /etc/rc.local | grep nsight )
    if [ -n "$RC_LOCAL" ]; then
        sed --follow-symlinks -i '/nsight/d' /etc/rc.local
        echo
        echo "Delete nsight_updater in /etc/rc.local >> Success"
        echo
    fi
}

# nsight service remove
function nsight_remove() {
    [ -f /home1/nbpmon/noms/nsight/bin/noms_nsight ] && /home1/nbpmon/noms/nsight/bin/noms_nsight -stop
    [ -f /etc/systemd/system/noms_nsight.service ] && systemctl stop noms_nsight.service
    [ -f /etc/systemd/system/noms_nsight.service ] && systemctl disable noms_nsight.service
    rm -rf /home1/nbpmon/noms
    [ -f /home1/nbpmon/nsight_agent_installer.bin ] && rm -f /home1/nbpmon/nsight_agent_installer.bin
    [ -f /home1/nbpmon/nsight_linux_agent_setup.sh ] && rm -f /home1/nbpmon/nsight_linux_agent_setup.sh
    [ -f /home1/nbpmon/nsight_agent_installer.bin.backup ] && rm -f /home1/nbpmon/nsight_agent_installer.bin.backup
    [ -f /home1/nbpmon/nsight_linux_agent_setup.sh.backup ] && rm -f /home1/nbpmon/nsight_linux_agent_setup.sh.backup
    [ -f /etc/init.d/noms_nsight ] && rm -f /etc/init.d/noms_nsight
    [ -f /usr/sbin/nsight_updater ] && rm -f /usr/sbin/nsight_updater
    echo
    echo "Delete NSight Agent(V1) Files >> Success"
    echo
}

# nsight updater cronjob remove
function nsight_updater_remove() {
    if [ $OS == "CentOS" ]; then
        sed -i '/nsight\|MAILTO/d' /var/spool/cron/root
        echo
        echo "Delete nsight_updater in crontab >> Success"
        echo
    elif [ $OS == "Ubuntu" ]; then
        sed -i '/nsight\|MAILTO/d' /var/spool/cron/crontabs/root
        echo
        echo "Delete nsight_updater in crontab >> Success"
        echo
    fi
}


# cloud insight install
function cloud_insight_install() {
   if [ -d /home1/nbpmon/agent_controller_linux ]; then
       systemctl stop nsight-agent
       rm -rf /home1/nbpmon/agent_controller_linux
   fi
   wget -t 1 --timeout=5 --spider ${AGENT_INSTALLER} --no-check-certificate
   if [[ 0 -eq $? ]]; then
        wget -nv -t 1 --timeout=5 -O ${AGENT_DIR}/${AGENT_FILE} ${AGENT_INSTALLER} --no-check-certificate
        tar zxvf ${AGENT_DIR}/${AGENT_FILE} -C ${AGENT_DIR}
        bash ${AGENT_DIR}/agent_controller_linux/install_agent.sh ${AGENT_INSTALL_PARAMETER}
        echo
        echo "Install Cloud Insight(V3) Agent Files >> Success"
        echo
   fi
}

function cleansing() {

    local NOMS_NSIGHT="K01noms_nsight"

    REMOVE_FILE_LIST="$AGENT_DIR/$AGENT_FILE"
    for REMOVE_FILE in $REMOVE_FILE_LIST
    do
        rm -f $REMOVE_FILE
    done

    if [ $OS == "CentOS" ]; then
        for ((i=0; i<=6; i++))
        do
            rm -f /etc/rc.d/rc$i.d/$NOMS_NSIGHT
        done
    elif [ $OS == "Ubuntu" ]; then
        for ((i=0; i<=6; i++))
        do
            rm -f /etc/rc$i.d/$NOMS_NSIGHT
        done
    fi
}

# ====================
# | Main Logic Start |
# ====================
rc_local_remove
nsight_remove
nsight_updater_remove
cloud_insight_install
cleansing

正常動作確認
以下のコマンドを実行して Agent processが実行中か確認します。

% ps -ef | grep agent

agent_updater.pyagent.py processが実行中の場合、Agentは正常動作中です。
Cloud Insightを通して当該サーバの Metric Dataが表示されるか最終確認します。

Windows

Windows環境の場合、次の内容をご参照ください。

Monitoring Agentの削除、Cloud Insight Agentのインストール
Monitoring Agentを削除し、Cloud Insight Agentをインストールする方法は、次の通りです。

1. Powershell Scriptを活用する方法
以下のパスでファイルをダウンロードすることもできます。
uninstall_nsight1_install_nsight2.ps1

Function Uninstall_Nsight()
{
    # nsight uninstall
    if(Test-Path "C:\Program Files (x86)\NBP\NSight\uninst.exe") {
        Start-Process "C:\Program Files (x86)\NBP\NSight\uninst.exe" -PassThru -Verbose -NoNewWindow -Wait -ErrorAction Ignore
    }

    # Unregister - Nsight ScheduledTask
    if ($(Get-ScheduledTask -TaskName "nsight" -ErrorAction SilentlyContinue).TaskName -eq "nsight") {
        Unregister-ScheduledTask -TaskName "nsight" -Confirm:$False
    }
}



Function Install_CloudInsight()
{
    if(!(Test-Path "C:\Program Files (x86)\NBP\agent_controller_windows\agent.bat")) {
        #Performance Table Restore
        Start-Process "C:\Windows\SysWOW64\lodctr.exe" -ArgumentList "/R"
        Invoke-WebRequest -uri https://repo-nsight.ncloud.com/agent_controller_windows_ncp.zip | Out-Null

        # Install CloudInsight
        if ((Get-CimInstance -ClassName Win32_BIOS).Manufacturer -eq 'Xen') {
            $nsight_source = "https://repo-nsight.ncloud.com/agent_controller_windows_ncp.zip"
            $nsight_opt = "/pub-classic"
            $wget = "C:\Windows\System32\wget.exe"
        }

        else {
            $nsight_source = "https://repo-nsight.ncloud.com/agent_controller_windows_pub_bm.zip"
            $nsight_opt = "/classic"
            $wget = "C:\Windows\System32\GroupPolicy\Machine\Scripts\startup\wget.exe"
        }

        if(!(Test-Path "C:\Program Files (x86)\NBP")) {
            New-Item "C:\Program Files (x86)\NBP" -ItemType Directory
        }

        $sourceFile = "C:\Program Files (x86)\NBP\agent_controller_windows.zip"
        $targetFile = 'C:\Program Files (x86)\NBP'

        Start-Process $wget -NoNewWindow -PassThru -Wait -ArgumentList "$nsight_source -q -O ""$sourceFile"" --no-check-certificate"
        $file = Get-ChildItem -Path $sourceFile
        $shell = new-object -com shell.application
        $destination = $shell.Namespace($targetFile)
        $zip = $shell.NameSpace($file.FullName)
        foreach($item in $zip.items()) {
            $destination.copyhere($item, 0x14)
        }

        Set-Location "$targetFile\agent_controller_windows"
        Start-Process "C:\Program Files (x86)\NBP\agent_controller_windows\install_agent.bat" -ArgumentList $nsight_opt -passthru -wait
        Remove-Item -Path $sourceFile -ErrorAction Ignore
    }
}

Uninstall_Nsight
Install_CloudInsight

2. Manual通りに実行する方法

Monitoring Agent削除

  1. Serviceで NOMS Nsight Service終了
     sc.exe stop noms_nsight
    
  2. C:\Program Files (x86)\NBP\NSightフォルダ削除
  3. Task Schedulerで nsight削除
  4. プログラムから削除
    sc.exe delete noms_nsight
    

Cloud Insight Agentインストール

  1. Agentをインストールするフォルダに移動: C:\Program Files (x86)\NBP
    当該フォルダが存在しない場合は、フォルダを作成します。
  2. 上記のフォルダからパッケージをダウンロード
    • VM :
      https://repo-nsight.ncloud.com/agent_controller_windows_ncp.zip をブラウザに貼り付けてファイルをダウンロード
      
      または
      
      wget https://repo-nsight.ncloud.com/agent_controller_windows_ncp.zip --no-check-certificate 
      
    • Bare Metal
      https://repo-nsight.ncloud.com/agent_controller_windows_pub_bm.zip をブラウザに貼り付けてファイルをダウンロード
      
      または
      
      wget https://repo-nsight.ncloud.com/agent_controller_windows_pub_bm.zip --no-check-certificate          
      
  3. unzipコマンドでダウンロードしたパッケージファイルの圧縮を展開
  4. C:\Program Files (x86)\NBPの下位に agent controller windowsフォルダを移動
  5. 圧縮を展開したパッケージファイル実行(実行したファイルに続く Parameter入力に注意)
    • VM
      agent_controller_windows\install_agent.bat pub-classic
      
    • Bere Metal
      agent_controller_windows\install_agent.bat classic
      

3. 正常動作確認
Windowsのサービスステータスを確認します。

  • nsight2_agentのサービスステータスを確認します。当該サービスが実行中の場合、Agentは正常動作中です。

Cloud Insight Agent のトラブルシューティング

Cloud Insight Agentの利用中にユーザーが遭遇しかねない問題状況や原因、解決方法をご案内します。

Q1. サーバの Hangが発生して Metricが収集できず、通知も届きません。

A. サーバの Hangが発生すると、Agentが CPUの割り当てを受けられなくなるため、動作しません。Hangの発生原因のプロセスが Hang状態を自ら解除するか、そのプロセスを強制終了させるまで問題が続くことがあります。もしサーバに何も入力できない場合、サーバを強制的に再起動することもご検討ください。サーバが Hang、Agent、ネットワークイシューなどで正常に動作しない場合、Server(Classic)または Server(VPC)の agent_status Metricを使用してご確認ください。

Q2. Agentが正常に実行中なのに、Cloud Insightにデータが収集されません。

A. Agentが正常に実行中でもサーバ内部ファイアウォールの設定、セキュリティソリューションのインストールなどにより Agentから Cloud Insightへの Outbound通信が遮断されている可能性があります。次の Portリストを確認してから、ファイアウォールの解除有無をご確認ください。

Classic環境

Source Destination Port Description
顧客の VM帯域 real-collector.nsight.ncloud.com (10.250.5.199)​​​​​​ TCP 9973 Cloud Insightメトリック収集サーバ
顧客の VM帯域 real-ntp.nsight.ncloud.com (10.250.5.117) ​​​UDP 123 Cloud Insight NTPサーバ
顧客の VM帯域 real-wai.nsight.ncloud.com (10.250.5.118)​​​​​​ TCP 10280 Cloud Insight関連情報照会サーバ
顧客の VM帯域 repo-nsight.ncloud.com (10.213.208.165)​​ TCP 80,443 Cloud Insight Repositoryサーバ
10.250.26.62 顧客の VM帯域 ICMP Cloud Insight Ping Check監視サーバ
10.250.26.63 顧客の VM帯域 ICMP Cloud Insight Ping Check監視サーバ

VPC環境

Source Destination Port Description
顧客の VM帯域 collector.nsight.ncloud.com (169.254.80.17、169.254.87.2)​​​ TCP 9973 Cloud Insightメトリック収集サーバ
顧客の VM帯域 ntp.nsight.ncloud.com (169.254.80.19, 169.254.87.4) UDP 123 Cloud Insight NTPサーバ
顧客の VM帯域 wai.nsight.ncloud.com (169.254.80.18、169.254.87.3)​​​ TCP 10280 Cloud Insight関連情報照会サーバ
顧客の VM帯域 nsight.ncloud.com (169.254.80.16、169.254.87.1)​​ TCP 80,443 Cloud Insight Repositoryサーバ
169.254.80.22, 169.254.80.23, 169.254.87.11, 169.254.87.12 顧客の VM帯域 ICMP Cloud Insight Ping Check監視サーバ

Q3. Cloud Insight Agentを停止または再起動するにはどうすればいいですか?

A. OSに応じて、以下の Agent停止/起動/再起動の方法をご確認ください。

  • Linux
    • Agent停止: /home1/nbpmon/agent controller linux/stop_agent.shを実行します。
    • Agent起動: /home1/nbpmon/agent controller linux/start_agent.shを実行します。
    • Agent再起動: /home1/nbpmon/agent controller linux/restart_agent.shを実行します。
  • Window
    • Agent停止: C:\Program Files(x86)\NBP\agent controller windows\agent.bat stopを実行します。
    • Agent起動: C:\Program Files(x86)\NBP\agent controller windows\agent.bat startを実行します。

Q4. Agentのログを確認するにはどうすればいいですか?

A. OSに応じて、以下の Agent停止/起動/再起動の方法をご確認ください。

  • Linux: /home1/nbpmon/agent controller linux/logsでログファイルを確認できます。
  • Window: C:\Program Files (x86)\NBP\agent controller windows\logsでログファイルを確認できます。

Monitoringと Cloud Insightの Metric比較

Observation, Observation Template

Monitoringサービスの Observationを通して設定できる監視項目別 Cloud Insightの対応 Metricを説明します。

分類 Monitoring Cloud Insight
Metric Type Metric 説明
Ping Fail Ping Fail Server is_on 1 if server is alive, 0 otherwise
サーバ時間差 サーバ時間差 Server time_deviation time deviation with NTP server
CPU used(%) Server avg_cpu_ used_rto CPU Utilization Average
idle Server avg_cpu_ idle_rto CPU idle ratio average (%)
user Server avg_cpu_ user_rto CPU user ratio average (%)
system Server avg_cpu_ sys_rto (Linux) CPU system ratio average (%)
nice Server avg_nice_ rto (Linux) CPU nice ratio average (%)
irq Server avg_irq_ rto (Linux) CPU interrupt ratio average (%)
softirq Server avg_softirq_ rto (Linux) CPU soft interrupt ratio average (%)
iowait Server avg_io_ wait_rto (Linux) CPU IO wait ratio average (%)
privildged time Server avg_prv_ mde_exec_ tm_rto (Windows) CPU used ratio in the privileged mode
dpc time Server avg_dly_ pcd_call_ tm_rto (Windows) CPU used ratio for deferred procedure calls (DPCs) (%)
interrupt time Server avg_interrup_ tm_rto (Windows) CPU used ratio for interrupts (%)
processor time サポートしない    
Load Average ロード平均(1分) Server load_average_ 1m CPU load 1 minute (%)
ロード平均(5分) Server load_average_ 5m CPU load 5 minute average (%)
ロード平均(15分) Server load_average_ 15m CPU load 15 minute average (%)
Memory used(%) Memory mem_usert Memory Utilization(%)
total Memory mem_mb total memory (MB)
used Memory used_mem_ mb used memory (MB)
free Memory free_mem_ mb free memory (MB)
shared Memory shared_mem_ mb (Linux) shared memory (MB)
buffers Memory bffr_mb (Linux) buffers (MB)
cached Memory cache_mb (Linux) cache (MB)
pgin/sec Memory pgin_mb page in (MB)
pgout/sec Memory pgout_mb page out (MB)
Swap used(%) Memory swap_usert swap used ratio (%)
total Memory swap_mb swap (MB)
used Memory swap_used_ mb swap used (MB)
Disk read count Server avg_read_ cnt disk read count per second average
write count Server avg_write_ cnt disk write count per second average
read byte Server avg_read_ byt_cnt disk read bytes average
write byte Server avg_write_ byt_cnt disk write bytes average
ファイルシステム 使用量 File System used_byt_ cnt used bytes
空き容量 File System free_byt_ cnt free bytes
used(%) File System fs_usert File System Utilization Average
マウント状況 File System mnt_stat_ cd mount state(1: mounted, 0: unmounted)
iuse% File System ind_usert inodes usage(Linux)
NIC collision Network clsn_packt_ cnt (Linux) collisions packets
bps in Network rcv_bps receive bits per second
bps out Network snd_bps send bits per second
pps in Network rcv_pps receive packets per second
pps out Network snd_pps send packets per second
error in Network rcv_fail_ packt_cnt receive fail packets
error out Network snd_fail_ packt_cnt send fail packets
ユーザー数 ユーザー数 Server user_cnt user count
プロセス プロセスダウン Plugin Process is_process_ up 1 if process is up, 0 otherwise
プロセス数 Plugin Process process_count process count(指定したプロセス)
cpu(%) Plugin Process avg_cpu_ usert process used Average
mem(%) Plugin Process avg_mem_ usert average memory usage %
mem(KB) Plugin Process avg_mem_ byt_cnt memory usage
Thread数 Plugin Process avg_thd_ cnt thread thread count
全体プロセス数 Server proc_cnt processes count(サーバ全体)
プロセス再開 Plugin Process is_process_ up 1 if process is up, 0 otherwise
ログ監視 ファイルログ サポートしない    
ファイル監視 変更 Plugin File file_modified 1: modified, 0: not modified
容量 Plugin File file_size file size(byte)
変更しない Plugin File file_modified 1: modified, 0: not modified
ファイルの存在有無 Plugin File file_exist 1:file is exist, 0: file is not exist
### My Chart

Monitoringサービスの My Chartに追加できる項目別 Cloud Insightの対応 Metricを説明します。

Monitoring Cloud Insight
Code 説明 Type Metric
avg.svr.cpu.used.rto CPU Used Server avg_cpu_ used_rto
avg.svr.cpu.idle.rto CPU Idle Server avg_cpu_ idle_rto
avg.svr.cpu.user.rto CPU User Server avg_cpu_ user_rto
avg.svr.cpu.sys.rto CPU System Server avg_cpu_ sys_rto (Linux)
avg.svr.io.wait.rto CPU IO Wait Server avg_io_ wait_rto (Linux)
mi1.avg.ld.cnt Load 1M Server load_average_ 1m
mi5.avg.ld.cnt Load 5M Server load_average_ 5m
mi15.avg.ld.cnt Load 15M Server load_average_ 15m
mem.usert Memory Used(%) Memory mem_usert
used.mem.mb Memory Used Memory used_mem_ mb
free.mem.mb Memory Free Memory free_mem_ mb
swap.usert Swap Used(%) Memory swap_usert
avg.svr.read.cnt Disk Read Count Server avg_read_ cnt
avg.svr.write.cnt Disk Write Count Server avg_write_ cnt
avg.svr.read.byt Disk IO Read Server avg_read_ byt_cnt
avg.svr.write.byt Disk IO Write Server avg_write_ byt_cnt
avg.svr.fs.usert File System Used(%) Server avg_fs_ usert
fs.used.mb File system使用率 Server fs_used_ mb
fs.free.mb File System使用可能 Server fs_free_ mb
avg.svr.rcv.bps Network Input (bps) Server avg_rcv_ bps
avg.svr.snd.bps Network Output (bps) Server avg_snd_ bps
avg.svr.rcv.pps Network Input (pps) Server avg_rcv_ pps
avg.svr.snd.pps Network Output (pps) Server avg_snd_ pps
### Cloud Insightに移行できない項目

Monitoringサービスを通して提供されていた Log監視機能は Cloud Insightでは使用できません。
Cloud Log Analyticsサービスを利用すると、Log監視機能を続けて使用できます。

Cloud Log Analyticsは、NAVERクラウドプラットフォームで提供する統合ログ管理プラットフォームサービスであり、様々なログに対する収集、分析、保存機能を提供します。Cloud Log Analyticsの説明と使用方法は、以下のガイドをご参照ください。