Lorawan-stack: λΌμš°νŒ… μ •μ±… ꡬ성

에 λ§Œλ“  2021λ…„ 02μ›” 09일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: TheThingsNetwork/lorawan-stack

μš”μ•½

λΌμš°νŒ… 정책을 κ΅¬μ„±ν•©λ‹ˆλ‹€.

μ‚¬μš© κ°€λŠ₯ν•œ λ„€νŠΈμ›Œν¬ 및 ν…Œλ„ŒνŠΈλ₯Ό λ‚˜μ—΄ν•˜λ €λ©΄ https://github.com/packetbroker/iam/issues/2κ°€ ν•„μš”ν•©λ‹ˆλ‹€.

μ™œ 이것이 ν•„μš”ν•©λ‹ˆκΉŒ?

λ„€νŠΈμ›Œν¬κ°€ λ‹€λ₯Έ λ„€νŠΈμ›Œν¬μ™€ λΌμš°νŒ… 정책을 κ΅¬μ„±ν•˜λŠ” 경우

이미 거기에 무엇이 μžˆμŠ΅λ‹ˆκΉŒ? μ§€κΈˆ 무엇을 λ³Ό 수 μžˆμŠ΅λ‹ˆκΉŒ?

이것은 ν˜„μž¬ pbctl 둜 μˆ˜ν–‰λ˜μ–΄μ•Ό ν•˜μ§€λ§Œ CLI 및 μ½˜μ†”μ„ 톡해 λΌμš°νŒ… 정책을 ꡬ성할 수 있으면 쒋을 κ²ƒμž…λ‹ˆλ‹€.

없어진 물건 μžˆμ–΄μš”? 뭐λ₯Όλ³΄κ³  μ‹ΆμœΌμ„Έμš”?

둜컬 νŒ¨ν‚· 브둜컀 λ„€νŠΈμ›Œν¬ λ˜λŠ” ν…Œλ„ŒνŠΈμ™€ λ‹€λ₯Έ λ„€νŠΈμ›Œν¬ λ˜λŠ” ν…Œλ„ŒνŠΈ 간에 λΌμš°νŒ… 정책을 κ΅¬μ„±ν•˜λŠ” κΈ°λŠ₯.

이λ₯Ό κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄ μ–΄λ–»κ²Œ μ œμ•ˆν•©λ‹ˆκΉŒ?

  • λΌμš°νŒ… μ •μ±… 관리λ₯Ό μœ„ν•΄ νŒ¨ν‚· 브둜컀 μ—μ΄μ „νŠΈμ— API μΆ”κ°€
  • CLI 지원 κ΅¬ν˜„
  • μ½˜μ†” 지원을 κ΅¬ν˜„ν•©λ‹ˆλ‹€. NetID와 ν…Œλ„ŒνŠΈ IDλ₯Ό μˆ˜λ™μœΌλ‘œ μž…λ ₯ν•˜λŠ” 것뢀터 μ‹œμž‘ν•˜κ² μŠ΅λ‹ˆλ‹€. https://github.com/packetbroker/iam/issues/2 λ₯Ό μ‚¬μš©ν•˜λ©΄ 곡용 λ„€νŠΈμ›Œν¬ 및 ν…Œλ„ŒνŠΈλ₯Ό λ“œλ‘­λ‹€μš΄ν•  수 μžˆμŠ΅λ‹ˆλ‹€(κ·ΈλŸ¬λ‚˜ μ—¬μ „νžˆ μˆ˜λ™ μž…λ ₯이 κ°€λŠ₯ν•΄μ•Ό 함).

이것을 ν…ŒμŠ€νŠΈν•˜κΈ° μœ„ν•΄ μ–΄λ–»κ²Œ μ œμ•ˆν•©λ‹ˆκΉŒ?

톡합 ν…ŒμŠ€νŠΈ

이 μž‘μ—…μ„ 직접 μˆ˜ν–‰ν•˜κ³  Pull Requestλ₯Ό μ œμΆœν•  수 μžˆμŠ΅λ‹ˆκΉŒ?

API 및 CLI 지원을 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

@kschiffer λŠ” 이미 UX에 λŒ€ν•΄ μƒκ°ν•˜μ‹­μ‹œμ˜€. μˆ˜ν–‰ν•  수 μžˆλŠ” μž‘μ—…μ— λŒ€ν•œ 아이디어λ₯Ό μ–»μœΌλ €λ©΄ μ—°κ²°λœ pbctl λͺ…령을 μ°Έμ‘°ν•˜μ‹­μ‹œμ˜€.

console packet broker agent needux sizlarge ucli uweb

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

@kschiffer μ™€μ΄μ–΄ν”„λ ˆμž„ ν˜•νƒœμ˜ UX에 λŒ€ν•΄ μƒκ°ν•΄λ³΄μ„Έμš”.

APIκ°€ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. https://github.com/TheThingsNetwork/lorawan-stack/pull/3912/files#diff -4371dadc483aa14e23af85a7baf0e1d57b6d0c67fff203b94412e13b224cc541 rpc

λ‚΄ 생각은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  • κ΄€λ¦¬μžλŠ” λ„€νŠΈμ›Œν¬μ— λŒ€ν•œ 피어링을 관리할 수 μžˆμŠ΅λ‹ˆλ‹€. 사물 μŠ€νƒμ—μ„œ μ΄λŠ” λ°°ν¬λ‹Ήμž…λ‹ˆλ‹€. Things Stack Cloudμ—μ„œ μ΄λŠ” ν…Œλ„ŒνŠΈλ‹Ήμž…λ‹ˆλ‹€. 즉, μ‘μš© ν”„λ‘œκ·Έλž¨ λ˜λŠ” μž₯치 μˆ˜μ€€ 섀정이 μ—†μŠ΅λ‹ˆλ‹€(μ•„μ§λ§Œ).
  • ꡬ성은 기술적으둜 ν¬μ›Œλ” 및 ν™ˆ λ„€νŠΈμ›Œν¬ κ΅¬μ„±μ˜ 두 κ°€μ§€μž…λ‹ˆλ‹€. μ „λ‹¬μžμ—λŠ” κ²Œμ΄νŠΈμ›¨μ΄ 인프라가 있고 ν™ˆ λ„€νŠΈμ›Œν¬μ—λŠ” μ΅œμ’… μž₯μΉ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. λŒ€λΆ€λΆ„μ˜ μ‚¬μš©μžλŠ” 두 가지 역할을 λͺ¨λ‘ μˆ˜ν–‰ν•˜μ§€λ§Œ 기술적으둜 μ—¬κΈ°μ—μ„œ ꡬ뢄해야 ν•©λ‹ˆλ‹€.

UI μš”μ†ŒλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  1. νŒ¨ν‚· 브둜컀의 μ΅œμƒμœ„ 메뉴 ν•­λͺ©μž…λ‹ˆλ‹€. 제 μ œμ•ˆμ€ Packet BrokerλΌλŠ” μš©μ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ ν•΄λ‹Ή λΈŒλžœλ“œλ₯Ό ν™λ³΄ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. λ”°λΌμ„œ 메뉴 ν•­λͺ©μ€ νŒ¨ν‚· 브둜컀 λ₯Ό 읽고 ν”Όμ–΄λ§ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  2. μ½˜μ†” κ°œμš” νŽ˜μ΄μ§€μ—μ„œ νŒ¨ν‚· 브둜컀의 μƒνƒœλ₯Ό ν‘œμ‹œν•©λ‹ˆλ‹€(λ―Έμ •μ΄μ§€λ§Œ ν˜„μž¬ λ„€νŠΈμ›Œν¬μ— ν™œμ„± 등둝이 μžˆλŠ”μ§€ μ—¬λΆ€).
  3. νŒ¨ν‚· 브둜컀 μ„€μ • νŽ˜μ΄μ§€. μ—¬κΈ°μ—μ„œ μ‚¬μš©μžλŠ” λ‹€μŒμ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

    • Packet Broker에 등둝 및 등둝 μ·¨μ†Œν•˜κ³  등둝 정보( /pba/registration 바인딩)λ₯Ό ν™•μΈν•©λ‹ˆλ‹€. 등둝이 μ—†λŠ” 경우( NotFound ) νŽ˜μ΄μ§€μ˜ λͺ¨λ“  ꡬ성 μš”μ†Œλ₯Ό λΉ„ν™œμ„±ν™”ν•©λ‹ˆλ‹€.

    • μ „λ‹¬μž λΌμš°νŒ… 정책을 κ΄€λ¦¬ν•©λ‹ˆλ‹€. μ΄λŠ” κΈ°λ³Έ μ„€μ •( /pba/forwarder/default-policy 바인딩) 및 ν™ˆλ³„ λ„€νŠΈμ›Œν¬( /pba/forwarder/policies 바인딩) μ„€μ •μ˜ 두 가지 μˆ˜μ€€μ— μžˆμŠ΅λ‹ˆλ‹€. ν™ˆ λ„€νŠΈμ›Œν¬λ³„λ‘œ κ΅¬μ„±ν•˜λ €λ©΄ μ‚¬μš©μžκ°€ μ‚¬μš© κ°€λŠ₯ν•œ λͺ¨λ“  λ„€νŠΈμ›Œν¬ λͺ©λ‘μ—μ„œ ν™ˆ λ„€νŠΈμ›Œν¬λ₯Ό μ„ νƒν•˜λ„λ‘ ν—ˆμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€( /pba/forwarde/home-networks 바인딩)

    • λ‹€λ₯Έ ν¬μ›Œλ”κ°€ 이 ν™ˆ λ„€νŠΈμ›Œν¬μ— λŒ€ν•΄ μ„€μ •ν•œ λΌμš°νŒ… μ •μ±… 보기( /pba/home-network/policies 바인딩)

μ•žμœΌλ‘œ 톡계가 λ‚˜μ˜¬ κ²ƒμ΄μ§€λ§Œ μ§€κΈˆμ€ 그것에 신경쓰지 λ§ˆμ‹­μ‹œμ˜€.

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

@kschiffer μ™€μ΄μ–΄ν”„λ ˆμž„ ν˜•νƒœμ˜ UX에 λŒ€ν•΄ μƒκ°ν•΄λ³΄μ„Έμš”.

APIκ°€ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. https://github.com/TheThingsNetwork/lorawan-stack/pull/3912/files#diff -4371dadc483aa14e23af85a7baf0e1d57b6d0c67fff203b94412e13b224cc541 rpc

λ‚΄ 생각은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  • κ΄€λ¦¬μžλŠ” λ„€νŠΈμ›Œν¬μ— λŒ€ν•œ 피어링을 관리할 수 μžˆμŠ΅λ‹ˆλ‹€. 사물 μŠ€νƒμ—μ„œ μ΄λŠ” λ°°ν¬λ‹Ήμž…λ‹ˆλ‹€. Things Stack Cloudμ—μ„œ μ΄λŠ” ν…Œλ„ŒνŠΈλ‹Ήμž…λ‹ˆλ‹€. 즉, μ‘μš© ν”„λ‘œκ·Έλž¨ λ˜λŠ” μž₯치 μˆ˜μ€€ 섀정이 μ—†μŠ΅λ‹ˆλ‹€(μ•„μ§λ§Œ).
  • ꡬ성은 기술적으둜 ν¬μ›Œλ” 및 ν™ˆ λ„€νŠΈμ›Œν¬ κ΅¬μ„±μ˜ 두 κ°€μ§€μž…λ‹ˆλ‹€. μ „λ‹¬μžμ—λŠ” κ²Œμ΄νŠΈμ›¨μ΄ 인프라가 있고 ν™ˆ λ„€νŠΈμ›Œν¬μ—λŠ” μ΅œμ’… μž₯μΉ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. λŒ€λΆ€λΆ„μ˜ μ‚¬μš©μžλŠ” 두 가지 역할을 λͺ¨λ‘ μˆ˜ν–‰ν•˜μ§€λ§Œ 기술적으둜 μ—¬κΈ°μ—μ„œ ꡬ뢄해야 ν•©λ‹ˆλ‹€.

UI μš”μ†ŒλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  1. νŒ¨ν‚· 브둜컀의 μ΅œμƒμœ„ 메뉴 ν•­λͺ©μž…λ‹ˆλ‹€. 제 μ œμ•ˆμ€ Packet BrokerλΌλŠ” μš©μ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ ν•΄λ‹Ή λΈŒλžœλ“œλ₯Ό ν™λ³΄ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. λ”°λΌμ„œ 메뉴 ν•­λͺ©μ€ νŒ¨ν‚· 브둜컀 λ₯Ό 읽고 ν”Όμ–΄λ§ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  2. μ½˜μ†” κ°œμš” νŽ˜μ΄μ§€μ—μ„œ νŒ¨ν‚· 브둜컀의 μƒνƒœλ₯Ό ν‘œμ‹œν•©λ‹ˆλ‹€(λ―Έμ •μ΄μ§€λ§Œ ν˜„μž¬ λ„€νŠΈμ›Œν¬μ— ν™œμ„± 등둝이 μžˆλŠ”μ§€ μ—¬λΆ€).
  3. νŒ¨ν‚· 브둜컀 μ„€μ • νŽ˜μ΄μ§€. μ—¬κΈ°μ—μ„œ μ‚¬μš©μžλŠ” λ‹€μŒμ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

    • Packet Broker에 등둝 및 등둝 μ·¨μ†Œν•˜κ³  등둝 정보( /pba/registration 바인딩)λ₯Ό ν™•μΈν•©λ‹ˆλ‹€. 등둝이 μ—†λŠ” 경우( NotFound ) νŽ˜μ΄μ§€μ˜ λͺ¨λ“  ꡬ성 μš”μ†Œλ₯Ό λΉ„ν™œμ„±ν™”ν•©λ‹ˆλ‹€.

    • μ „λ‹¬μž λΌμš°νŒ… 정책을 κ΄€λ¦¬ν•©λ‹ˆλ‹€. μ΄λŠ” κΈ°λ³Έ μ„€μ •( /pba/forwarder/default-policy 바인딩) 및 ν™ˆλ³„ λ„€νŠΈμ›Œν¬( /pba/forwarder/policies 바인딩) μ„€μ •μ˜ 두 가지 μˆ˜μ€€μ— μžˆμŠ΅λ‹ˆλ‹€. ν™ˆ λ„€νŠΈμ›Œν¬λ³„λ‘œ κ΅¬μ„±ν•˜λ €λ©΄ μ‚¬μš©μžκ°€ μ‚¬μš© κ°€λŠ₯ν•œ λͺ¨λ“  λ„€νŠΈμ›Œν¬ λͺ©λ‘μ—μ„œ ν™ˆ λ„€νŠΈμ›Œν¬λ₯Ό μ„ νƒν•˜λ„λ‘ ν—ˆμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€( /pba/forwarde/home-networks 바인딩)

    • λ‹€λ₯Έ ν¬μ›Œλ”κ°€ 이 ν™ˆ λ„€νŠΈμ›Œν¬μ— λŒ€ν•΄ μ„€μ •ν•œ λΌμš°νŒ… μ •μ±… 보기( /pba/home-network/policies 바인딩)

μ•žμœΌλ‘œ 톡계가 λ‚˜μ˜¬ κ²ƒμ΄μ§€λ§Œ μ§€κΈˆμ€ 그것에 신경쓰지 λ§ˆμ‹­μ‹œμ˜€.

이것은 μ£Όμš” API ν™•μž₯이 ν•„μš”ν•˜λ―€λ‘œ 3.12둜 μ΄λ™λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

@kschiffer UX κ΅¬ν˜„ 및 λΆ„λ₯˜λ₯Ό μ‘°μ •ν•˜μ‹­μ‹œμ˜€

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