VMware Monitoring
๊ฐ์
VMware์ vCenter, Datacenter, Cluster, Host(ESXi), Virtual Machine Infrastructure ์ ๋ณด๋ฅผ ๋ชจ๋ํฐ๋งํฉ๋๋ค.
Connection vCenter
๋ชจ๋ํฐ๋งํ vCenter๋ฅผ ์ถ๊ฐ, ์์ , ์ญ์ ํฉ๋๋ค.
vCenter ์ถ๊ฐ
CloudHub 1.4.0 ๋ฒ์ ์ด์์์๋ Minion ID๋ฅผ "ch-collector"๋ก ์ค์ ํด์ผ VMware์ SaltStack Rest API๋ฅผ ํธ์ถํ Target Minion (ํ๋จ์ USING MINION)์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ ๋ ฅํญ๋ชฉ
Name | Comment |
Using Minionย ย ย ย ย ย | SaltStack Rest API Target Minion |
Hostย ย ย ย ย ย ย ย | vCenter Server์ Host IP |
IDย ย ย ย | vCenter Server์ Username |
Passwordย ย ย ย | vCenter Server์ Password |
Protocolย ย ย ย | vCenter Server์ Protocol (default https) |
Portย ย ย ย ย ย ย ย | vCenter Server Host์ Port (default 433) |
Intervalย ย ย ย | SaltStack Rest API ํธ์ถ ์๊ฐ ๊ฐ๊ฒฉ ์ค์ (30sec, 1min(default), 5min) |
โ+ Add vCenterโ ๋ฒํผ์ ํด๋ฆญํ๋ฉด Add vCenter ๋ชจ๋ฌ ํ์ ์ด ์คํ๋ฉ๋๋ค.
vCenter ์ ๋ณด๋ฅผ ์ ๋ ฅํ โAdd vCenterโ ๋ฒํผ ํด๋ฆญํ๋ฉด VMware Inventory์ ํด๋น vCenter๊ฐ ์ถ๊ฐ ๋ฉ๋๋ค.
vCenter ์์
VMware Inventory์ ๋ง์ฐ์ค ์ค๋ฒ์ ์์ ๋ฒํผ์ด ํ์ฑํ๋ฉ๋๋ค.
์์ ๋ฒํผ ํด๋ฆญ์ Update vCenter ํ์ ์ด ์คํ๋๊ณ ํด๋น vCenter ์ ๋ณด๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
vCenter ์ ๋ณด๋ฅผ ์์ ํ๊ณ Update vCenter ๋ฒํผ์ ํด๋ฆญํ๋ฉด vCenter ์ ๋ณด๊ฐ ์์ ๋ฉ๋๋ค.
vCenter ์ญ์
VMware Inventory์ ๋ง์ฐ์ค ์ค๋ฒ์ ์ญ์ ๋ฒํผ์ด ํ์ฑํ๋ฉ๋๋ค.
์ญ์ ๋ฒํผ ํด๋ฆญ์ ํด๋น vCenter ์ ๋ณด๊ฐ ์ญ์ ๋ฉ๋๋ค.
vCenter
vCenter์ CPU, Memory, Storage์ ์ ์ฒด ์ฉ๋, ์ฌ์ฉ๋, ์ฌ์ฉ๊ฐ๋ฅ ์ฉ๋
vCenter์ ํฌํจ๋์ด ์๋ Datacenter, Host, VM ๊ฐ์
Datacenter
Datacenter ์ ๋ณด
Datacenter์ CPU, Memory, Storage์ ์ ์ฒด ์ฉ๋, ์ฌ์ฉ๋, ์ฌ์ฉ๊ฐ๋ฅ ์ฉ๋
Datacenter์ ํฌํจ๋์ด ์๋ Cluster, Host, VM ๊ฐ์
Charts ์ ๋ณด
Datacenter์ ์๊ณ์ด ๋ฐ์ดํฐ
Cluster ์ ๋ณด
Cluster Name
CPU, Memory, Storage์ ์ ์ฒด ์ฉ๋, ์ฌ์ฉ๋, ์ฌ์ฉ๊ฐ๋ฅ ์ฉ๋
Cluster์ ํฌํจ๋์ด ์๋ Host, VM ๊ฐ์
Host(ESXi) ์ ๋ณด
Host Name
CPU, Memory, Storage์ ์ ์ฒด ์ฉ๋, ์ฌ์ฉ๋, ์ฌ์ฉ๊ฐ๋ฅ ์ฉ๋
Host(ESXi) ๋ณ VM ๊ฐ์, Model, Processor type
Datastore
Datastore Name
Run Status, Type, Space, Free Space
Cluster
Cluster ์ ๋ณด
CPU, Memory, Storage์ ์ ์ฒด ์ฉ๋, ์ฌ์ฉ๋, ์ฌ์ฉ๊ฐ๋ฅ ์ฉ๋
Cluster์ ํฌํจ๋์ด ์๋ Host, VM ๊ฐ์
Host(ESXi) ์ ๋ณด
Host Name
CPU, Memory, Storage์ ์ ์ฒด ์ฉ๋, ์ฌ์ฉ๋, ์ฌ์ฉ๊ฐ๋ฅ ์ฉ๋
Host(ESXi) ๋ณ VM ๊ฐ์, Model, Processor type
Datastore
Datastore Name
Run Status, Type, Space, Free Space
Host(ESXi)
Host ์ ๋ณด
CPU, Memory, Storage์ ์ ์ฒด ์ฉ๋, ์ฌ์ฉ๋, ์ฌ์ฉ๊ฐ๋ฅ ์ฉ๋ ์ ๋ณด
Host(ESXi) ์ VM ๊ฐ์, Model, Processor type
Charts ์ ๋ณด
Host์ ์๊ณ์ด ๋ฐ์ดํฐ
Virtual Machine ์ ๋ณด
VM Name ์ถ๋ ฅ
CPU, Memory, Storage์ ์ฌ์ฉ๋
VM์ IP, OS์ ๋ณด ์ถ๋ ฅ
Virtual Machine
Virtual Machine ์ ๋ณด
CPU, CPU Core, Memory, Storage์ ์ฌ์ฉ๋ ์ ๋ณด
VM์ IP, OS์ ๋ณด, ์ ์ ์ํ
Charts ์ ๋ณด
Virtual Machine์ ์๊ณ์ด ๋ฐ์ดํฐ
Virtual Machine Remote Console
Remote Console ์ ์
Virtual Machine ํ๋ฉด์ ์ค๋ฅด์ชฝ ์๋จ VMware Remote Console ๋ฒํผ์ ํด๋ฆญํ์ฌ ํด๋น Virtual Machine์ ์ ์ํฉ๋๋ค.
VMware Remote Console์ด ์ค์น๋์ด ์์ง ์์ ๊ฒฝ์ฐ ์๋ VMware Remote Console ๋ค์ด๋ก๋๋ฅผ ์ฐธ๊ณ ๋ฐ๋๋๋ค.
VMware Remote Console ๋ค์ด๋ก๋
๋ค์ด๋ก๋ ๋ฒํผ์ ํด๋ฆญํ์ฌ VMware์์ ์ ๊ณตํ๋ VMware Remote Console์ ๋ค์ด๋ก๋ ๋ฐ์ ์ค์น ํฉ๋๋ค.
Configurations of Telegraf
[[inputs.vsphere]]
interval = "60s"
vcenters = [ "https://someaddress/sdk" ]
username = "someuser@vsphere.local"
password = "secret"
insecure_skip_verify = true
force_discover_on_init = true
# Exclude all historical metrics
datastore_metric_exclude = ["*"]
cluster_metric_exclude = ["*"]
datacenter_metric_exclude = ["*"]
collect_concurrency = 5
discover_concurrency = 5
์ฑ๋ฅ ๊ณ ๋ ค ์ฌํญ
vCenter๋ ์ค์๊ฐ ๋ฐ ๊ธฐ๋ก ๋ฉํธ๋ฆญ์ด๋ผ๊ณ ํ๋ ๋ ๊ฐ์ง ๋ค๋ฅธ ์ข ๋ฅ์ ๋ฉํธ๋ฆญ์ ์ ์งํฉ๋๋ค.
์ค์๊ฐ ์ธก์ ํญ๋ชฉ : 20 ์ด ๋จ์๋ก ์ ๊ณต๋ฉ๋๋ค. ์ด๋ฌํ ๋ฉํธ๋ฆญ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋๋ฉฐ ์ฟผ๋ฆฌํ๊ธฐ ๋งค์ฐ ๋น ๋ฅด๊ณ ๋น์ฉ์ด ์ ๊ฒ ๋ญ๋๋ค. ํ ์คํธ ๊ฒฐ๊ณผ 20 ์ด ์ด๋ด์ 7000 ๊ฐ์ ๊ฐ์ ๋จธ์ ์ ๋ํ ์์ ํ ์ค์๊ฐ ๋ฉํธ๋ฆญ ์ธํธ๋ฅผ ์ป์ ์์๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ์ค์๊ฐ ๋ฉํธ๋ฆญ์ ESXi hosts ๋ฐ virtual machineย ๋ฆฌ์์ค์์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ค์๊ฐ ์งํ๋ vCenter์์ 1 ์๊ฐ ๋์ ๋ง ์ ์ฅ๋ฉ๋๋ค.
๊ธฐ๋ก ๋ฉํธ๋ฆญ : 5 ๋ถ, 30 ๋ถ, 2 ์๊ฐ ๋ฐ 24 ์๊ฐ ๋กค์ ์์ค์์ ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค. vSphere Telegraf ํ๋ฌ๊ทธ์ธ์ 5 ๋ถ ๋กค์ ๋ง ์ฌ์ฉํฉ๋๋ค. ์ด๋ฌํ ์งํ๋ vCenter ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋๋ฉฐ ๋น์ฉ์ด ๋ง์ด ๋ค๊ณ ์ฟผ๋ฆฌ ์๋๊ฐ ๋๋ฆด ์ ์์ต๋๋ค. Historical metrics์ clusters,ย datastores ๋ฐ datacenters์ ์ฌ์ฉ ๊ฐ๋ฅํ ์ ์ผํ ์ ํ์ ๋ฉํธ๋ฆญ์ ๋๋ค.
## Realtime instance
[[inputs.vsphere]]
interval = "60s"
vcenters = [ "https://someaddress/sdk" ]
username = "someuser@vsphere.local"
password = "secret"
insecure_skip_verify = true
force_discover_on_init = true
# Exclude all historical metrics
datastore_metric_exclude = ["*"]
cluster_metric_exclude = ["*"]
datacenter_metric_exclude = ["*"]
collect_concurrency = 5
discover_concurrency = 5
# Historical instance
[[inputs.vsphere]]
interval = "300s"
vcenters = [ "https://someaddress/sdk" ]
username = "someuser@vsphere.local"
password = "secret"
insecure_skip_verify = true
force_discover_on_init = true
host_metric_exclude = ["*"] # Exclude realtime metrics
vm_metric_exclude = ["*"] # Exclude realtime metrics
max_query_metrics = 256
collect_concurrency = 3
ย