Grafana: [κΈ°λŠ₯ μš”μ²­] μ‚¬μš©μž 및 λŒ€μ‹œλ³΄λ“œ(ν•˜μœ„) 그룹을 ν¬ν•¨ν•˜λ„λ‘ 쑰직 λͺ¨λΈ ν™•μž₯

에 λ§Œλ“  2016λ…„ 05μ›” 03일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: grafana/grafana

λ°°κ²½

데이터 μ†ŒμŠ€: InfluxDB, λ“œλ¬Όκ²Œ 데이터 변경을 μœ„ν•œ 잠재적인 PostgreSQL.

이 κΈ°λŠ₯ μš”μ²­μ€ λ‹€μŒμ—μ„œ μ§„ν–‰λ˜λŠ” ν† λ‘ μ˜ 일반적인 ν™•μž₯μž…λ‹ˆλ‹€.

2132, #2777, #1611

2016 λ…„ raintank.slack.com μ›” raintank.slack.com 의 grafana μ±„λ„μ—μ„œ μž‘μ„±ν•œ Grafana Cloud Hosting Best Practices λΌλŠ” μ—¬μœ  κ²Œμ‹œλ¬Όμ„ 기반으둜 ν•©λ‹ˆλ‹€.

κΆκΈˆν•˜μ‹  뢄듀을 μœ„ν•΄:
μ˜€ν”„ κ·Έλ¦¬λ“œ λ˜λŠ” ν•˜μ΄λΈŒλ¦¬λ“œ μ‹œμŠ€ν…œμ΄ 무엇인지 μ•Œμ•„λ³΄λ €λ©΄ 접근성이 맀우 높은 λ‹€μŒ λ¬Έμ„œλ₯Ό ν™•μΈν•˜μ‹­μ‹œμ˜€.

μž¬μƒ μ—λ„ˆμ§€ 기반 ν•˜μ΄λΈŒλ¦¬λ“œ μ „λ ₯ μ‹œμŠ€ν…œ (좜처: λ†μ΄Œ μ „ν™” μ—°ν•© )

도전

λ‹€μŒμ€ κ°€μž₯ λ³΅μž‘ν•œ Grafana μ‚¬μš© 사둀 쀑 ν•˜λ‚˜μ˜ μ˜ˆμž…λ‹ˆλ‹€.

β”œβ”€β”€ Off-Grid manufacturer 1
β”‚Β Β  └── Technical staff
β”‚Β Β  └── Finance staff
β”‚Β Β  └── Investors
β”‚Β Β  └── Public (i.e. demo dashboards)
β”‚   β”‚
β”‚Β Β  └── Plant hire company 1.1
β”‚Β Β  β”‚   β”œβ”€β”€ Finance staff
β”‚Β Β  β”‚   β”œβ”€β”€ Technical staff
β”‚Β Β  β”‚   └── Investors
β”‚Β Β  β”‚   └── Public (i.e. demo dashboards)
β”‚   β”‚   β”‚
β”‚   β”‚   └── Building company 1.1.1
β”‚Β Β  β”‚   β”‚   β”œβ”€β”€ Technical staff
β”‚Β Β  β”‚   β”‚   β”œβ”€β”€ Finance staff
β”‚Β Β  β”‚   β”‚   └── Investors
β”‚Β Β  β”‚   β”‚   └── Public (i.e. demo dashboards)
β”‚   β”‚   .
β”‚   β”‚   .
β”‚   β”‚   └── Building company 1.1.n
β”‚   .
β”‚   .
β”‚Β Β  └── Plant hire company 1.n
.
.
└── Off-Grid manufacturer n

μ—¬λŸ¬ 쑰직뿐만 μ•„λ‹ˆλΌ λͺ‡ 계측 깊이의 μ—¬λŸ¬ 쑰직도 μ²˜λ¦¬ν•΄μ•Ό ν•©λ‹ˆλ‹€.

Off-Grid manufacturer 1 λ‚΄μ—λŠ” 5개의 μ„œλ‘œ λ‹€λ₯Έ μ‚¬μš©μž 그룹이 μžˆμŠ΅λ‹ˆλ‹€.

β€’ κΈ°μˆ μ§„
β€’ 재무 직원
β€’ 투자자
β€’ 곡곡의
β€’ 고객(즉, 곡μž₯ μž„λŒ€ νšŒμ‚¬, 본질적으둜 ν•˜μœ„ 쑰직)

μ΄λŸ¬ν•œ 각 그룹은 데이터 μ‹œκ°ν™” μΈ‘λ©΄μ—μ„œ 맀우 λ‹€λ₯Έ μš”κ΅¬ 사항을 가지고 있으며 각 그룹에 μ μš©ν•  수 μžˆλŠ” κΈ°λ³Έ λŒ€μ‹œλ³΄λ“œλ₯Ό μ„€μ •ν•  수 μžˆλ‹€λ©΄ ν™˜μƒμ μΌ κ²ƒμž…λ‹ˆλ‹€. 기술 전문가와 같은 일뢀 그룹은 자체 λŒ€μ‹œλ³΄λ“œλ₯Ό λ§Œλ“€κ³  λͺ¨λ“  것을 κ·Έλž˜ν”„λ‘œ μž‘μ„±ν•  수 μžˆλŠ” 전체 μ•‘μ„ΈμŠ€ κΆŒν•œμ„ λΆ€μ—¬ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. λ‹€λ₯Έ λͺ¨λ“  그룹은 이 두 극단 사이 μ–΄λ”˜κ°€μ— μžˆλŠ” λ™μ•ˆ 곡개 그룹을 μ™„μ „νžˆ 잠그고 μ‹ΆμŠ΅λ‹ˆλ‹€. 그룹이 μ„œλ‘œ κ°„μ„­ν•˜κ±°λ‚˜ μ„œλ‘œμ˜ λŒ€μ‹œλ³΄λ“œ λ˜λŠ” 데이터 μ†ŒμŠ€μ— μ•‘μ„ΈμŠ€ν•˜λŠ” 것을 μ›ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

Off-Grid manufacturer 1 λŠ” ν•˜μœ„ λͺ¨λ“  νšŒμ‚¬μ˜ λͺ¨λ“  데이터에 μ•‘μ„ΈμŠ€ν•  수 μžˆμ–΄μ•Ό ν•˜λŠ” 반면 Plant hire company 1.1 λŠ” ν•˜μœ„ λͺ¨λ“  νšŒμ‚¬μ— μ•‘μ„ΈμŠ€ν•  수 μžˆμ–΄μ•Ό ν•˜μ§€λ§Œ λ‹€λ₯Έ 곡μž₯ 고용의 λ°μ΄ν„°μ—λŠ” μ•‘μ„ΈμŠ€ν•  수 μ—†μŠ΅λ‹ˆλ‹€. μžμ‹ κ³Ό 같은 μˆ˜μ€€μ˜ νšŒμ‚¬ λ˜λŠ” μžμ‹ λ³΄λ‹€ 높은 쑰직.

λ‚΄κ°€ μ•Œκ³  μžˆλŠ” λ‹€μ†Œ 극단적인 μ˜ˆμ΄μ§€λ§Œ 이것이 λ‚΄ ν˜„μ‹€μž…λ‹ˆλ‹€!

κΈ°λŠ₯ μš”μ²­

λŒ€μ‹œλ³΄λ“œ μ•‘μ„ΈμŠ€λ₯Ό λ‹¨μˆœν™”ν•˜λ €λ©΄ 쑰직 내에 μ‚¬μš©μž κ·Έλ£Ήκ³Ό λŒ€μ‹œλ³΄λ“œ 그룹을 두고 각 μ‚¬μš©μž λ˜λŠ” μ‚¬μš©μž 그룹에 λŒ€ν•΄ λŒ€μ‹œλ³΄λ“œ 보기/νŽΈμ§‘ κΆŒν•œμ„ λΆ€μ—¬ν•  수 있으면 쒋을 κ²ƒμž…λ‹ˆλ‹€. νŠΉμ • κ·Έλ£Ή λ‚΄μ˜ νŠΉμ • μ‚¬μš©μžμ—κ²Œ κ΄€λ¦¬μž 역할을 ν• λ‹Ήν•  수 μžˆλŠ” κΈ°λŠ₯이 μžˆλŠ” ν•˜μœ„ κ·Έλ£Ή(λ˜λŠ” ν•˜μœ„ 쑰직)κ³Ό ν•΄λ‹Ή ν•˜μœ„ κ·Έλ£Ή(λ˜λŠ” ν•˜μœ„ 쑰직)으둜 μ œν•œλœ κ΄€λ¦¬μž κΆŒν•œλ„ μœ μš©ν•  κ²ƒμž…λ‹ˆλ‹€ 😈

단일 쑰직을 κ·Έλ €μ•Ό ν•œλ‹€λ©΄ λ‹€μŒκ³Ό 같이 보일 κ²ƒμž…λ‹ˆλ‹€.

users     :  u1   u2    u3   u4   u5 |
              \ /    \ /     /   /   |
               |      |     /   /    |
user      :   ug1    ug2   /   /     |
groups    :    |   /  |   /   /      |
               |  /   |  /   /       |>- organisation
               | /    | /   /        |
dashboard :   dg1    dg2   /         |
groups    :    |      |   /          |
              / \    / \ /           |
dashboards:  d1 d2  d3 d4            |
                                   --

λ©”λͺ¨:

  • μ‚¬μš©μž 1( u1 )은 μ‚¬μš©μž κ·Έλ£Ή 1( ug1 )을 톡해 λŒ€μ‹œλ³΄λ“œ 1 및 2( d1 & d2 )μ—λ§Œ μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • μ‚¬μš©μž 2( u2 )λŠ” 두 μ‚¬μš©μž 그룹에 λͺ¨λ‘ μ†ν•˜λ―€λ‘œ 4개의 λŒ€μ‹œλ³΄λ“œμ— λͺ¨λ‘ μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • μ‚¬μš©μž κ·Έλ£Ή 2( ug2 )에 μ†ν•œ λͺ¨λ“  μ‚¬μš©μžλŠ” 두 λŒ€μ‹œλ³΄λ“œ 그룹에 λͺ¨λ‘ μ•‘μ„ΈμŠ€ν•  수 μžˆμœΌλ―€λ‘œ 4개의 λŒ€μ‹œλ³΄λ“œμ—λ„ μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • μ‚¬μš©μž 4( u4 )λŠ” μ‚¬μš©μž 그룹을 ν†΅ν•˜μ§€ μ•Šκ³  λŒ€μ‹œλ³΄λ“œ κ·Έλ£Ή 2( dg2 )에 직접 μ†ν•©λ‹ˆλ‹€.
  • μ‚¬μš©μž 5( u5 )λŠ” λŒ€μ‹œλ³΄λ“œ 4( d4 )λ₯Ό λ³Ό 수 μžˆλŠ” κΆŒν•œλ§Œ μžˆμŠ΅λ‹ˆλ‹€. λ‚΄κ°€ μ΄ν•΄ν•˜λŠ” ν•œ, 이것이 쑰직 λ‚΄μ—μ„œ ν˜„μž¬ μ‹œν–‰ 쀑인 κΆŒν•œ λͺ¨λΈμž…λ‹ˆκΉŒ?

μ—¬λŸ¬ ν•˜μœ„ 쑰직이 μžˆλŠ” 쑰직은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

                                  | sub-users     :  su1 su2  su3 su4
                                  |                    \ /     \ /  
                                  |                     |       |   
             sub-organisation 1 -<| sub-user      :    sug1    sug2 
            /                     | groups        :     |  \    |   
organisation                      |                     |   \   |   
            \                     |                     |    \  |  
     sub-organisation 2           | sub-dashboard :    sdg1    sdg2  
                                  | groups        :     |       |   
                                  |                    / \     /  \  
                                  | sub-dashboards:  sd1   sd2    sd3
                                   --

λ©”λͺ¨:

  • ν•˜μœ„ λŒ€μ‹œλ³΄λ“œ 2( sd2 )λŠ” 두 ν•˜μœ„ λŒ€μ‹œλ³΄λ“œ 그룹에 μ†ν•˜λ―€λ‘œ 4λͺ…μ˜ μ‚¬μš©μž λͺ¨λ‘κ°€ μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • sub-organisation 1 μ—λŠ” sub-organisation 2 μ†ν•œ 데이터 λ˜λŠ” organisation μ†ν•œ 데이터에 λŒ€ν•œ μ•‘μ„ΈμŠ€ κΆŒν•œμ΄ μ—†μŠ΅λ‹ˆλ‹€.

μ‹€μ œ μ‹œλ‚˜λ¦¬μ˜€

λ‹€μŒμ€ 이것이 μ‹€μ œλ‘œ μž‘λ™ν•˜λŠ” 방식에 λŒ€ν•œ 그림을 κ·Έλ¦¬λŠ” μ‚¬μš© μ‹œλ‚˜λ¦¬μ˜€μž…λ‹ˆλ‹€.

μ €λŠ” Off-Grid manufacturer 1 고객이 μžˆμŠ΅λ‹ˆλ‹€. 이 고객은 λ…λ¦½ν˜• μ‹œμŠ€ν…œμ„ ꡬ좕 및 νŒλ§€ν•˜μ—¬ ν”ŒλžœνŠΈ μž„λŒ€ νšŒμ‚¬μ— νŒλ§€ν•˜κ³ , 이듀은 μ°¨λ‘€λ‘œ 건물 ν˜„μž₯μ—μ„œ μ „κΈ°κ°€ ν•„μš”ν•œ 건물 νšŒμ‚¬μ— κ³ μš©ν•©λ‹ˆλ‹€(μ°Έκ³ : 4개의 쑰직 μˆ˜μ€€).

Off-Grid manufacturer 1 λŠ” Off-Grid manufacturer 1 μ—μ„œ κ΅¬λ§€ν•˜λŠ” λͺ¨λ“  λ…λ¦½ν˜• μ‹œμŠ€ν…œμ„ λͺ¨λ‹ˆν„°λ§ν•˜λ €λŠ” μƒˆλ‘œμš΄ 고객 Plant hire company 1.2 Off-Grid manufacturer 1 ν•©λ‹ˆλ‹€. Plant hire company 1.2 μ—λŠ” μžμ‹ μ˜ μ‚¬μš©μž μ•‘μ„ΈμŠ€ κΆŒν•œμ„ κ΄€λ¦¬ν•˜λ €λŠ” 두 λͺ…μ˜ 고객 Building companies 1.2.1 & 1.2.2 μžˆμŠ΅λ‹ˆλ‹€.

Off-Grid manufacturer 1 λŠ” λͺ¨λ“  κ³ κ°μ—κ²Œ μ•‘μ„ΈμŠ€ κΆŒν•œμ„ λΆ€μ—¬ν•˜λ €λŠ” 각 λ…λ¦½ν˜• μ‹œμŠ€ν…œμ— λŒ€ν•œ ν‘œμ€€ λŒ€μ‹œλ³΄λ“œ μ„ΈνŠΈλ₯Ό λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€.

관리 쑰직 예:

  • Off-Grid manufacturer 1 λΌλŠ” μƒˆ 쑰직을 λ§Œλ“­λ‹ˆλ‹€.
  • 이 쑰직 λ‚΄μ—μ„œ 단일 μ‚¬μš©μžλ₯Ό λ§Œλ“€κ³  κ΄€λ¦¬μž κΆŒν•œμ„ λΆ€μ—¬ν•©λ‹ˆλ‹€.

    κ·Έλ£Ή 관리 예:

  • Off-Grid manufacturer 1 쑰직의 κ΄€λ¦¬μžλŠ” 2개의 λŒ€μ‹œλ³΄λ“œλ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.

    • λŒ€μ‹œλ³΄λ“œ 1: νšŒκ³„μ‚¬μ˜ λ―Όκ°ν•œ 재무 수치λ₯Ό λ³΄μ—¬μ€λ‹ˆλ‹€.
    • λŒ€μ‹œλ³΄λ“œ 2: 기술자의 배터리 μ „μ•• ν‘œμ‹œ
  • admin μ‚¬μš©μžλŠ” "Finances"λΌλŠ” μƒˆ 그룹을 λ§Œλ“€κ³  λŒ€μ‹œλ³΄λ“œ 1에 λŒ€ν•œ μ•‘μ„ΈμŠ€ κΆŒν•œμ„ λΆ€μ—¬ν•©λ‹ˆλ‹€.
  • κ΄€λ¦¬μžλŠ” "기술자"λΌλŠ” μƒˆ 그룹을 λ§Œλ“€κ³  λŒ€μ‹œλ³΄λ“œ 2에 λŒ€ν•œ μ•‘μ„ΈμŠ€ κΆŒν•œμ„ λΆ€μ—¬ν•©λ‹ˆλ‹€.

    μ‚¬μš©μž 관리 예:

  • Off-Grid manufacturer 1 쑰직의 κ΄€λ¦¬μžκ°€ μƒˆ μ‚¬μš©μžλ₯Ό λ§Œλ“­λ‹ˆλ‹€(예: finance_user_1 ).

  • finance_user_1 κ°€ "재무" 그룹에 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€(λŒ€μ‹œλ³΄λ“œ 1에 μ¦‰μ‹œ μ•‘μ„ΈμŠ€ν•  수 있음).

    ν•˜μœ„ κ·Έλ£Ή/ν•˜μœ„ 쑰직 κ΄€λ¦¬μž

  • Off-Grid manufacturer 1 쑰직의 κ΄€λ¦¬μžκ°€ μƒˆ κ·Έλ£Ή λ˜λŠ” ν•˜μœ„ 쑰직을 λ§Œλ“­λ‹ˆλ‹€(예: hire_company_1.2 ).

  • admin μ‚¬μš©μžλŠ” hire_company_1.2_admin λΌλŠ” μƒˆ μ‚¬μš©μžλ₯Ό λ§Œλ“­λ‹ˆλ‹€.
  • hire_company_1.2_admin λŠ” λ‹€μŒμ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

    • μƒˆ μ‚¬μš©μžλ₯Ό λ§Œλ“­λ‹ˆλ‹€( hire_company_1.2 그룹으둜 μžλ™ μ œν•œλ©λ‹ˆλ‹€.

    • ν•˜μœ„ μ‚¬μš©μž κ·Έλ£Ή 생성

    • ν•˜μœ„ μ‚¬μš©μžλ₯Ό ν•˜μœ„ μ‚¬μš©μž 그룹에 ν• λ‹Ή

    • λŒ€μ‹œλ³΄λ“œ λ§Œλ“€κΈ°

    • ν•˜μœ„ λŒ€μ‹œλ³΄λ“œ κ·Έλ£Ή 생성

    • ν•˜μœ„ λŒ€μ‹œλ³΄λ“œ 그룹에 λŒ€μ‹œλ³΄λ“œ ν• λ‹Ή

typfeature-request

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

데이터 μ†ŒμŠ€λ„ κ²©λ¦¬ν•˜κ³  그룹의 κ΄€λ¦¬μžκ°€ μžμ‹ μ˜ 데이터 μ†ŒμŠ€λ₯Ό μ•ˆμ „ν•˜κ²Œ κ΄€λ¦¬ν•˜λ„λ‘ ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.

λͺ¨λ“  3 λŒ“κΈ€

데이터 μ†ŒμŠ€λ„ κ²©λ¦¬ν•˜κ³  그룹의 κ΄€λ¦¬μžκ°€ μžμ‹ μ˜ 데이터 μ†ŒμŠ€λ₯Ό μ•ˆμ „ν•˜κ²Œ κ΄€λ¦¬ν•˜λ„λ‘ ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.

λŒ€μ‹œλ³΄λ“œ κ·Έλ£Ή 및 κΆŒν•œ λͺ¨λΈ μ œμ•ˆ: https://github.com/grafana/grafana/issues/1611#issuecomment -287742633

νŒ€ 및 λŒ€μ‹œλ³΄λ“œ 폴더λ₯Ό 톡해 v5μ—μ„œ μ™„λ£Œ

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰