λ€μ΄κ°λ©°
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λ₯Ό νμΈν΄λ³Ό μ μμ΅λλ€.