λ€μ΄κ°λ©°
kubernetes
λ₯Ό μμ©μΌλ‘ μ΄μνκΈ° μ CPU
λ system
μ λν Metrics Data
λ₯Ό μμ§νκ³ μκ°ννμ¬ μνν μ΄μμ ν΄μΌν νμκ° μμμ΅λλ€.
νμ¬ EFK Stack
μΌλ‘ logging system
μ ꡬμΆν΄λμμλλ°, κ·Έ μ€ fluent-bit
λ₯Ό νμ©νμ¬ metrics data
λ₯Ό μμ§νλ λ°©λ²μ λν΄ λ€λ€λ³΄λ €κ³ ν©λλ€.
CPU Metric
fluent-bit
μ input plugin
μ€ cpu
λ κΈ°λ³Έμ μΌλ‘ νλ‘μΈμ€ νΉμ μ 체 μμ€ν
μ CPU
μ¬μ©λμ μΈ‘μ ν©λλ€.
μ€μ λ μκ°μ λν΄ λ°±λΆμ¨ λ¨μλ‘ μμ§λλ©° νμ¬ μ΄ plugin
μ linux
μμλ§ μ¬μ©νμ€ μ μμ΅λλ€.
key
cpu_p
μ΄ κ°μ μ¬μ©μ λ° μ»€λ 곡κ°μ μμλ μ¬κ° λλΉ μ 체 μμ€ν
μ CPU
μ¬μ©λμ μμ½ν΄μ 보μ¬μ€λλ€. ( CPU
μ½μ΄ μλ₯Ό κ³ λ €ν©λλ€. )
user_p
μ΄ κ°μ μ¬μ©μ λͺ¨λμμ CPU
μ¬μ©λμ μλ―Έν©λλ€.( CPU
μ½μ΄ μλ₯Ό κ³ λ €ν©λλ€. )
system_p
컀λ λͺ¨λμμ CPU
μ¬μ©λ, κ°λ¨ν λ§ν΄μ 컀λμ μν CPU
μ¬μ©λμ μλ―Έν©λλ€.( CPU
μ½μ΄ μλ₯Ό κ³ λ €ν©λλ€. )
CPU.core
μμ μ€λͺ
ν key
μΈμλ CPU core
λ³λ‘ λ°μ΄ν°κ° μμ§λ©λλ€. core
λ 0μμ NκΉμ§ λμ΄λ©λλ€.
cpuN.p_cpu
core
Nκ°μ CPU
μ¬μ©λμ λνλ
λλ€.
cpuN.p_user
core
Nκ°μ μ¬μ©μ λͺ¨λμμ μ¬μ©λ μ΄ CPU
μ¬μ©λμ λνλ
λλ€.
cpuN.p_system
Nλ²μ§Έ core
μ κ΄λ ¨λ μμ€ν
λλ 컀λ λͺ¨λμμ μ¬μ©λ μ΄ CPU
μ
λλ€.
Proceeding
INPUT
[INPUT]
Name cpu
Tag my_cpu
λ¨Όμ cpu plugin
μ μμ±ν΄μ€λλ€. Tag
μλ λ€λ₯Έ λ°μ΄ν°λ€λ μμ§λ μ μμΌλ, νΉμν μ΄λ¦μ μμ±ν©λλ€. (μ¬κΈ°μ my_cpu
)
OUTPUT
[OUTPUT]
Name kinesis_firehose
Match my_cpu
region [az]
delivery_stream [kinesis_firehose_name]
λ¨Όμ AWS Kinesis
μμ firehose
λ₯Ό μμ±ν΄λμμ΅λλ€. κ·Έ ν ν΄λΉ μ μ‘μ€νΈλ¦Όμ delivery_stream
μ μμ±ν΄μ€λλ€.
κ·Έλ¬λ©΄ μ€μ μ λͺ¨λ μλ£λμμ΅λλ€.
config map
μ μμ ν΄μ£Όμ ν ν΄λΉ fluent-bit config map file
μ μ μ©ν΄μ£Όμλ©΄ λͺ¨λ μμ
μ΄ μλ£κ° λ©λλ€.
Result
κ·Έ ν elastic search
μ μ μνμ¬ index
μ€μ ν ν kibana
μ discover
μμ μμ κ°μ΄ μμ§λ metrics data
λ₯Ό νμΈν΄λ³Ό μ μμ΅λλ€.