เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™ Apache NiFi

เบชเบฐเบšเบฒเบเบ”เบตเบ—เบธเบเบ„เบปเบ™!

เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™ Apache NiFi

เบงเบฝเบเบ‡เบฒเบ™เปเบกเปˆเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰ - เบกเบตเบเบฒเบ™เป„เบซเบผเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เปƒเบ™เบฎเบนเบšเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เป€เบŠเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰ rolled เบญเบญเบเป„เบ›เบซเบฒ N servers เบเบฑเบš. Apache NiFi. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เป„เบซเบผ - เป„เบŸเบฅเปŒเบเปเบฒเบฅเบฑเบ‡เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เปเบฅเบฐเบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เบซเบฒเบ•เบปเบงเบขเปˆเบฒเบ‡ NiFi เบญเบทเปˆเบ™. เบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบเบตเบ”เบ‚เบถเป‰เบ™เป‚เบ”เบเปƒเบŠเป‰ NiFi Site to Site protocol.

NiFi Site to Site (S2S) เป€เบ›เบฑเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบ›เบญเบ”เป„เบž, เบชเบฒเบกเบฒเบ”เบ›เบฑเบšเปเบ•เปˆเบ‡เป„เบ”เป‰เบชเบนเบ‡เปƒเบ™เบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ NiFi instances. เป€เบšเบดเปˆเบ‡เบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡ S2S เป€เบญเบเบฐเบชเบฒเบ™ เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบˆเบทเปˆเบˆเปเบฒเบ—เบตเปˆเบˆเบฐเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเบขเปˆเบฒเบ‡ NiFi เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบžเบทเปˆเบญเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰ S2S เป€เบซเบฑเบ™ เบ—เบตเปˆเบ™เบตเป‰.

เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบกเบฑเบ™เบกเบฒเบเบฑเบšเบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเปƒเบŠเป‰ S2S, เบ•เบปเบงเบขเปˆเบฒเบ‡เบซเบ™เบถเปˆเบ‡เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบฅเบนเบเบ„เป‰เบฒ, เบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบฅเบนเบเบ„เป‰เบฒเบชเบปเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป„เบ”เป‰เบฎเบฑเบšเบกเบฑเบ™. เบชเบญเบ‡โ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบเบฒเบ™โ€‹เป‚เบญเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹:

  1. Push. เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบ–เบทเบโ€‹เบชเบปเปˆเบ‡โ€‹เบˆเบฒเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡โ€‹เบฅเบนเบโ€‹เบ„เป‰เบฒโ€‹เป‚เบ”เบโ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ Remote Process Group (RPG). เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบตเบšเป€เบงเบต, เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเป‚เบ”เบเปƒเบŠเป‰ Input Port
  2. เบ”เบถเบ‡. เป€เบŠเบตเบšเป€เบงเบตเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเปƒเบŠเป‰ RPG, เบฅเบนเบเบ„เป‰เบฒเบชเบปเปˆเบ‡เป‚เบ”เบเปƒเบŠเป‰เบžเบญเบ” Output.


เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบกเป‰เบงเบ™เปเบกเปˆเบ™เป€เบเบฑเบšเป„เบงเป‰เปƒเบ™ Apache Registry.

Apache NiFi Registry เปเบกเปˆเบ™เป‚เบ„เบ‡เบเบฒเบ™เบเปˆเบญเบเบ‚เบญเบ‡ Apache NiFi เบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเบฐเบšเบฑเบš. เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡ GIT. เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบดเบ”โ€‹เบ•เบฑเป‰เบ‡โ€‹, เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เป€เบฎเบฑเบ”โ€‹เบงเบฝเบโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบˆเบปเบ”โ€‹เบ—เบฐโ€‹เบšเบฝเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบžเบปเบšโ€‹เป€เบซเบฑเบ™โ€‹เบขเบนเปˆโ€‹เปƒเบ™โ€‹ เป€เบญเบเบฐเบชเบฒเบ™เบ—เบฒเบ‡เบเบฒเบ™. Flow เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเปเบกเปˆเบ™เบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป€เบ›เบฑเบ™เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบฅเบฐเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เปƒเบ™เบฅเบตเบˆเบดเบ”เบŠเบตเปƒเบ™เบฎเบนเบšเปเบšเบšเบ™เบตเป‰. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เบ•เปเปˆเบกเบฒเปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบก.

เปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เป€เบกเบทเปˆเบญ N เป€เบ›เบฑเบ™เบˆเปเบฒเบ™เบงเบ™เบ™เป‰เบญเบเป†, เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเป„เบ”เป‰เบ–เบทเบเบชเบปเปˆเบ‡เปเบฅเบฐเบ›เบฑเบšเบ›เบธเบ‡เบ”เป‰เบงเบเบกเบทเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบก.

เปเบ•เปˆเป€เบกเบทเปˆเบญ N เป€เบ•เบตเบšเป‚เบ•, เบกเบตเบšเบฑเบ™เบซเบฒเบซเบผเบฒเบ:

  1. เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒ. เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบฑเบ‡เบซเบกเบปเบ”
  2. เบกเบตเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เปเบกเปˆเปเบšเบš. เบ—เบตเปˆเบ™เบตเป‰เบžเบงเบเป€เบ‚เบปเบฒเบ›เบฑเบšเบ›เบธเบ‡, เปเบ•เปˆเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เบžเบงเบเป€เบ‚เบปเบฒเบฅเบทเบก
  3. เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบกเบฐเบ™เบธเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™

เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เบ™เปเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ›เบชเบนเปˆเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™. เบ‚เป‰เบญเบเป„เบ”เป‰เบžเบฐเบเบฒเบเบฒเบกเบงเบดเบ—เบตเบ•เปเปˆเป„เบ›เบ™เบตเป‰เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰:

  1. เปƒเบŠเป‰ MiNiFi เปเบ—เบ™ NiFi
  2. NiFi CLI
  3. NiPyAPI

เปƒเบŠเป‰ MiNiFi

ApacheMiNify เปเบกเปˆเบ™เป‚เบ„เบ‡เบเบฒเบ™เบเปˆเบญเบเบ‚เบญเบ‡ Apache NiFi. MiNiFy เปเบกเปˆเบ™เบ•เบปเบงเปเบ—เบ™เบ—เบตเปˆเบซเบ™เบฒเปเบซเบ™เป‰เบ™เบ—เบตเปˆเปƒเบŠเป‰เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ”เบฝเบงเบเบฑเบ™เบเบฑเบš NiFi, เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบ”เบฝเบงเบเบฑเบ™เบเบฑเบš NiFi. เบ„เบงเบฒเบกเบชเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบญเบ‡เบ•เบปเบงเปเบ—เบ™เปเบกเปˆเบ™เบšเบฑเบ™เบฅเบธเป„เบ”เป‰, เปƒเบ™เบšเบฑเบ™เบ”เบฒเบชเบดเปˆเบ‡เบญเบทเปˆเบ™เป†, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒ MiNiFy เบšเปเปˆเบกเบตเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฎเบนเบšเบžเบฒเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เป„เบซเบผ. เบเบฒเบ™เบ‚เบฒเบ”เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเปเบšเบšเบเบฒเบŸเบดเบเบ‚เบญเบ‡ MiNiFy เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบชเบปเปˆเบ‡เบเบฐเปเบชเปƒเบ™ minifi. เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆ MiNiFy เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบซเป‰เบฒเบงเบซเบฑเบ™เปƒเบ™ IOT, เบกเบตเบซเบผเบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเปเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบชเบปเปˆเบ‡เบเบฐเปเบชเป„เบ›เบซเบฒเบ•เบปเบงเบขเปˆเบฒเบ‡ minifi เบชเบธเบ”เบ—เป‰เบฒเบเบ•เป‰เบญเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบงเบฝเบเบ—เบตเปˆเบ„เบธเป‰เบ™เป€เบ„เบตเบ, เบšเปเปˆเปเบกเปˆเบ™เบšเป?

เป‚เบ„เบ‡เบเบฒเบ™เบเปˆเบญเบเบญเบทเปˆเบ™, MiNiFi C2 Server, เบˆเบฐเบŠเปˆเบงเบเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰. เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ™เบตเป‰เบกเบตเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เป€เบžเบทเปˆเบญเป€เบ›เบฑเบ™เบˆเบธเบ”เบชเบนเบ™เบเบฒเบ‡เปƒเบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰. เบงเบดเบ—เบตเบเบฒเบ™ configure เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก - เบญเบฐเบ—เบดเบšเบฒเบเปƒเบ™ เบšเบปเบ”เบ‚เบฝเบ™เบ™เบตเป‰ เบเปˆเบฝเบงเบเบฑเบš Habre เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบžเบฝเบ‡เบžเปเบ—เบตเปˆเบˆเบฐเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ. MiNiFi เบชเบปเบกเบ—เบปเบšเบเบฑเบšเป€เบŠเบตเบšเป€เบงเบต C2 เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เบญเบ‡เบกเบฑเบ™เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบ‚เปเป‰เบšเบปเบเบœเปˆเบญเบ‡เบžเบฝเบ‡เปเบ•เปˆเบ‚เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบงเปˆเบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡เปเบกเปˆเปเบšเบšเปƒเบ™ C2 Server, เบชเบฑเบ™เบเบฒเบ‡เปˆเบฒเบเป†เบเบฑเบšเบ—เบฐเบšเบฝเบ™เปเบกเปˆเบ™เบšเปเปˆเบžเบฝเบ‡เบžเป.

เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบญเบฐเบ—เบดเบšเบฒเบเป„เบงเป‰เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปเบฅเบฐเบšเปเปˆเบเบฒเบเบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ„เบงเบ™เบฅเบทเบกเบชเบดเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

  1. minifi เบšเปเปˆเบกเบตเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฒเบ nifi
  2. เบฅเบธเป‰เบ™ CPU เปƒเบ™ Minifi เบŠเป‰เบฒเบเบงเปˆเบฒเบฅเบธเป‰เบ™ CPU เปƒเบ™ NiFi.

เปƒเบ™เป€เบงเบฅเบฒเบ‚เบฝเบ™, NiFi เบฎเบธเปˆเบ™เบซเบผเป‰เบฒเบชเบธเบ”เปเบกเปˆเบ™ 1.9.2. เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบฅเบธเป‰เบ™ MiNiFi เบซเบผเป‰เบฒเบชเบธเบ”เปเบกเปˆเบ™ 1.7.0. เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆ MiNiFi, เปเบ•เปˆเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ‚เบญเบ‡เบฅเบธเป‰เบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบต NiFi เปเบฅเบฐ MiNiFi, เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบ.

NiFi CLI

เบ•เบฑเบ”เบชเบดเบ™เป‚เบ”เบ เบฅเบฒเบเบฅเบฐเบญเบฝเบ” เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบขเบนเปˆเปƒเบ™เป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ—เบฒเบ‡เบเบฒเบ™, เบ™เบตเป‰เปเบกเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฅเบฐเบซเบงเปˆเบฒเบ‡ NiFI เปเบฅเบฐ NiFi Registry เปƒเบ™เบ‚เบปเบ‡เป€เบ‚เบ”เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบเบฒเบ™เป„เบซเบผเบซเบผเบทเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™. เบ”เบฒเบงเป‚เบซเบฅเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ™เบตเป‰เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบˆเบฒเบเบ™เบตเป‰.

เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”

./bin/cli.sh
           _     ___  _
 Apache   (_)  .' ..](_)   ,
 _ .--.   __  _| |_  __    )
[ `.-. | [  |'-| |-'[  |  /  
|  | | |  | |  | |   | | '    '
[___||__][___][___] [___]',  ,'
                           `'
          CLI v1.9.2

Type 'help' to see a list of available commands, use tab to auto-complete.

เป€เบžเบทเปˆเบญเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป‚เบซเบฅเบ”เบเบฒเบ™เป„เบซเบผเบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบˆเบฒเบเบ—เบฐเบšเบฝเบ™, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบฎเบนเป‰เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบ‚เบญเบ‡เบเบฐเบ•เปˆเบฒ (bucket identifier) โ€‹โ€‹โ€‹โ€‹เปเบฅเบฐ flow เบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡ (เบ•เบปเบงเบฅเบฐเบšเบธเบเบฒเบ™เป„เบซเบผ). เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบ™เบตเป‰โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เป‚เบ”เบโ€‹เบœเปˆเบฒเบ™ cli เบซเบผเบทโ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เป‚เบ•เป‰โ€‹เบ•เบญเบšโ€‹เบ‚เบญเบ‡โ€‹เป€เบงเบฑเบšโ€‹เป„เบŠโ€‹เบ•โ€‹เปŒ NiFiโ€‹. เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡เป€เบงเบฑเบšเป„เบŠเบ•เปŒเป€เบšเบดเปˆเบ‡เบ„เบทเบ”เบฑเปˆเบ‡เบ™เบตเป‰:

เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™ Apache NiFi

เบ”เป‰เบงเบเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบ‚เบญเบ‡ CLI, เบ™เบตเป‰เปเบกเปˆเบ™เป€เบฎเบฑเบ”เป„เบ”เป‰:

#> registry list-buckets -u http://nifi-registry:18080

#   Name             Id                                     Description
-   --------------   ------------------------------------   -----------
1   test_bucket   709d387a-9ce9-4535-8546-3621efe38e96   (empty)

#> registry list-flows -b 709d387a-9ce9-4535-8546-3621efe38e96 -u http://nifi-registry:18080

#   Name           Id                                     Description
-   ------------   ------------------------------------   -----------
1   test_flow   d27af00a-5b47-4910-89cd-9c664cd91e85

เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเบˆเบฒเบเบ—เบฐเบšเบฝเบ™:

#> nifi pg-import -b 709d387a-9ce9-4535-8546-3621efe38e96 -f d27af00a-5b47-4910-89cd-9c664cd91e85 -fv 1 -u http://nifi:8080

7f522a13-016e-1000-e504-d5b15587f2f3

เบˆเบธเบ”เบชเปเบฒเบ„เบฑเบ™เปเบกเปˆเบ™เบงเปˆเบฒเบ—เบธเบ instance nifi เบชเบฒเบกเบฒเบ”เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบžเบฒเบšเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบกเป‰เบงเบ™เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™.

เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเบ”เป‰เบงเบเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ—เบตเปˆเบขเบธเบ”เป€เบŠเบปเบฒ, เบžเบงเบเป€เบ‚เบปเบฒเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™

#> nifi pg-start -pgid 7f522a13-016e-1000-e504-d5b15587f2f3 -u http://nifi:8080

เบเบดเปˆเบ‡เปƒเบซเบเปˆ, เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบฅเป‰เบง. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบญเบตเบ‡เบ•เบฒเบกเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡ NiFi เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ›เบซเบฒเบ•เบปเบงเบขเปˆเบฒเบ‡เบญเบทเปˆเบ™เป†. เปƒเบซเป‰เบชเบปเบกเบกเบธเบ”เบงเปˆเบฒเบงเบดเบ—เบตเบเบฒเบ™ Push เป„เบ”เป‰เบ–เบทเบเป€เบฅเบทเบญเบเป€เบžเบทเปˆเบญเป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบ›เบเบฑเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เป€เบžเบทเปˆเบญเบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™, เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™ (เป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบชเบปเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™) เปƒเบ™เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป„เบฅเบเบฐเป„เบ (RPG), เป€เบŠเบดเปˆเบ‡เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบเบฒเบ™เป„เบซเบผเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™ Apache NiFi

เปƒเบ™เป€เบญเบเบฐเบชเบฒเบ™เปƒเบ™ CLI เปเบฅเบฐเปเบซเบผเปˆเบ‡เบญเบทเปˆเบ™เป†, เบ‚เป‰เบญเบเบšเปเปˆเบžเบปเบšเบงเบดเบ—เบตเบ—เบตเปˆเบˆเบฐเป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบฎเบนเป‰เบงเบดเบ—เบตเป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰, เบเบฐเบฅเบธเบ™เบฒเบ‚เบฝเบ™เปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™.

เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบžเบงเบเป€เบฎเบปเบฒเบกเบต bash เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบžเป‰เบญเบกเบ—เบตเปˆเบˆเบฐเป„เบ›เบ—เบตเปˆเบชเบธเบ”, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบŠเบญเบเบซเบฒเบ—เบฒเบ‡เบญเบญเบ! เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰ NiFi API เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰. เปƒเบซเป‰เปƒเบŠเป‰เบงเบดเบ—เบตเบ•เปเปˆเป„เบ›เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบปเบฒ ID เบˆเบฒเบเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡ (เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบ™เปเบกเปˆเบ™ 7f522a13-016e-1000-e504-d5b15587f2f3). เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡ NiFi API Methods เบ—เบตเปˆเบ™เบตเป‰.

เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™ Apache NiFi
เปƒเบ™เบฎเปˆเบฒเบ‡เบเบฒเบ, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบœเปˆเบฒเบ™ JSON, เบ‚เบญเบ‡เปเบšเบšเบŸเบญเบกเบ•เปเปˆเป„เบ›เบ™เบตเป‰:

{
    "revision": {
	    "clientId": "value",
	    "version": 0,
	    "lastModifier": "value"
	},
    "state": "value",
    "disconnectedNodeAcknowledged": true
}

เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเบ•เป‰เบญเบ‡เบ•เบทเปˆเบกเปƒเบชเปˆเป€เบžเบทเปˆเบญ "เป€เบฎเบฑเบ”เบงเบฝเบ":
เบฅเบฑเบ” - เบชเบฐโ€‹เบ–เบฒโ€‹เบ™เบฐโ€‹เบžเบฒเบšโ€‹เบเบฒเบ™โ€‹เป‚เบญเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹. เบกเบต TRANSMITTING เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™, STOPPED เป€เบžเบทเปˆเบญเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™
เบชเบฐเบšเบฑเบšเบžเบฒเบชเบฒ - เบฎเบธเปˆเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต

เบฎเบธเปˆเบ™เบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ 0 เป€เบกเบทเปˆเบญเบชเป‰เบฒเบ‡, เปเบ•เปˆเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเป‚เบ”เบเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™

เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™ Apache NiFi

เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบฎเบฑเบเบ‚เบญเบ‡เบชเบฐเบ„เบดเบš bash, เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเป€เบซเบกเบฒเบฐเบชเบปเบก, เปเบ•เปˆเบกเบฑเบ™เบเบฒเบเบชเปเบฒเบฅเบฑเบšเบ‚เป‰เบญเบ - script bash เบšเปเปˆเปเบกเปˆเบ™ favorite เบ‚เบญเบ‡เบ‚เป‰เบญเบ. เบงเบดเบ—เบตเบเบฒเบ™เบ•เปเปˆเป„เบ›เปเบกเปˆเบ™เบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเปเบฅเบฐเบชเบฐเบ”เบงเบเบเบงเปˆเบฒเปƒเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ.

NiPyAPI

NiPyAPI เป€เบ›เบฑเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Python เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡ NiFi. เปœเป‰เบฒเป€เบญเบเบฐเบชเบฒเบ™ เบกเบตเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”. เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป„เบงเปเบกเปˆเบ™เบญเบฐเบ—เบดเบšเบฒเบเบขเบนเปˆเปƒเบ™ เบฎเปˆเบฒเบ‡ เปƒเบ™ github.

script เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบกเปˆเบ™เป‚เบ„เบ‡เบเบฒเบ™ Python. เปƒเบซเป‰เบเป‰เบฒเบงเป„เบ›เบชเบนเปˆเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”.
เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ config เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ•เปเปˆเป„เบ›. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

nipyapi.config.nifi_config.host = 'http://nifi:8080/nifi-api' #ะฟัƒั‚ัŒ ะดะพ nifi-api ะธะฝัั‚ะฐะฝัะฐ, ะฝะฐ ะบะพั‚ะพั€ะพะผ ั€ะฐะทะฒะพั€ะฐั‡ะธะฒะฐะตะผ process group
nipyapi.config.registry_config.host = 'http://nifi-registry:18080/nifi-registry-api' #ะฟัƒั‚ัŒ ะดะพ nifi-registry-api registry
nipyapi.config.registry_name = 'MyBeutifulRegistry' #ะฝะฐะทะฒะฐะฝะธะต registry, ะบะฐะบ ะฑัƒะดะตั‚ ะฝะฐะทั‹ะฒะฐั‚ัŒัั ะฒ ะธะฝัั‚ะฐะฝัะต nifi
nipyapi.config.bucket_name = 'BucketName' #ะฝะฐะทะฒะฐะฝะธะต bucket, ะธะท ะบะพั‚ะพั€ะพะณะพ ะฟะพะดั‚ัะณะธะฒะฐะตะผ flow
nipyapi.config.flow_name = 'FlowName' #ะฝะฐะทะฒะฐะฝะธะต flow, ะบะพั‚ะพั€ะพะต ะฟะพะดั‚ัะณะธะฒะฐะตะผ

เบ•เปเปˆเป„เบ›เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเปƒเบชเปˆเบŠเบทเปˆเบ‚เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบ‚เบญเบ‡เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ™เบตเป‰, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบญเบฐเบ—เบดเบšเบฒเบ เบ—เบตเปˆเบ™เบตเป‰.

เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฒเบ™เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบเบฑเบš nifi instance เป‚เบ”เบเปƒเบŠเป‰

nipyapi.versioning.create_registry_client

เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบงเปˆเบฒเบฅเบตเบˆเบดเบ”เบŠเบตเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เปเบฅเป‰เบง, เบชเปเบฒเบฅเบฑเบšเบ™เบตเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™.

nipyapi.versioning.list_registry_clients

เบžเบงเบเป€เบฎเบปเบฒเบŠเบญเบเบซเบฒเบ–เบฑเบ‡เป€เบžเบทเปˆเบญเบ„เบปเป‰เบ™เบซเบฒเบ•เบทเปˆเบกเบญเบตเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป„เบซเบผเปƒเบ™เบเบฐเบ•เปˆเบฒ

nipyapi.versioning.get_registry_bucket

เบญเบตเบ‡เบ•เบฒเบกเบ–เบฑเบ‡เบ—เบตเปˆเบžเบปเบšเป€เบซเบฑเบ™, เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบŠเบญเบเบซเบฒเบเบฒเบ™เป„เบซเบผ

nipyapi.versioning.get_flow_in_bucket

เบ•เปเปˆเป„เบ›, เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปเบฅเป‰เบง. เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบกเปˆเบ™เบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเป‚เบ”เบเบˆเบธเบ”เบ›เบฐเบชเบฒเบ™เบ‡เบฒเบ™เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™เป€เบกเบทเปˆเบญเบญเบฑเบ™เบ—เบตเบชเบญเบ‡เบ–เบทเบเบงเบฒเบ‡เบขเบนเปˆเป€เบ—เบดเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบซเบ™เบถเปˆเบ‡. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบเบงเบ”เป€เบšเบดเปˆเบ‡, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™ ๐Ÿ™‚ เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเบ—เบฑเบ‡เบซเบกเบปเบ”, เปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™

nipyapi.canvas.list_all_process_groups

เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ„เบปเป‰เบ™เบซเบฒ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เป‚เบ”เบเบŠเบทเปˆ.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเปเปˆเบญเบฐเบ—เบดเบšเบฒเบเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เปเบกเปˆเปเบšเบš, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบžเบฝเบ‡เปเบ•เปˆเบˆเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบ–เป‰เบฒเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เปเบกเปˆเปเบšเบšเปƒเบซเบกเปˆ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบšเปเปˆเบกเบตเบšเบฑเบ™เบซเบฒเบเบฑเบšเบเบฒเบ™เบ›เบฐเบเบปเบ”เบ•เบปเบงเบ‚เบญเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบขเบนเปˆเปƒเบ™เปเบ–เบง. เปเบ•เปˆเบ–เป‰เบฒเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ–เบทเบเป‚เบเบเบเป‰เบฒเบ, เบšเบฑเบ™เบซเบฒเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™ (nifi เบšเปเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป€เบญเบปเบฒเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบญเบญเบเบ–เป‰เบฒเปเบ–เบงเบ‚เปเป‰เบ„เบงเบฒเบกเป„เบ”เป‰เบชเบฐเบชเบปเบกเบขเบนเปˆเบ—เบฒเบ‡เบซเบ™เป‰เบฒ). เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบชเบปเบ™เปƒเบˆเปƒเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบ‚เป‰เบญเบเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰ - เบ‚เบฝเบ™เบซเบฒเบ‚เป‰เบญเบ, เบเบฐเบฅเบธเบ™เบฒ, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเบเปˆเบฝเบงเบเบฑเบšเบˆเบธเบ”เบ™เบตเป‰. เบ•เบดเบ”เบ•เปเปˆเบžเบปเบงเบžเบฑเบ™เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เบšเบปเบ”เบ„เบงเบฒเบก. เปƒเบซเป‰เบเป‰เบฒเบงเป„เบ›เบชเบนเปˆเบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™.

เป€เบกเบทเปˆเบญเปเบเป‰เบšเบฑเบ™เบซเบฒเบชเบฐเบ„เบฃเบดเบš, เบ‚เป‰เบญเบเบžเบปเบšเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปœเบถเปˆเบ‡เบ—เบตเปˆเบเบฒเบ™เป„เบซเบผเบ‚เบญเบ‡เป€เบงเบตเบŠเบฑเบ™เบซเบผเป‰เบฒเบชเบธเบ”เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ”เบถเบ‡เบ‚เบถเป‰เบ™เบชเบฐเป€เปเบต, เบชเบฐเบ™เบฑเป‰เบ™เบ‚เป‰เบญเบเบ‚เปเปเบ™เบฐเบ™เบณเปƒเบซเป‰เป€เบˆเบปเป‰เบฒเบŠเบตเป‰เปเบˆเบ‡เบชเบฐเบšเบฑเบšเบ™เบตเป‰เบเปˆเบญเบ™:

nipyapi.versioning.get_latest_flow_ver

เบ™เบณเปƒเบŠเป‰เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™:

nipyapi.versioning.deploy_flow_version

เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต:

nipyapi.canvas.schedule_process_group

เปƒเบ™เบšเบฅเบฑเบญเบเบเปˆเบฝเบงเบเบฑเบš CLI, เบกเบฑเบ™เบ–เบทเบเบ‚เบฝเบ™เบงเปˆเบฒเบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบšเปเปˆเป„เบ”เป‰เป€เบ›เบตเบ”เปƒเบŠเป‰เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบซเปˆเบฒเบ‡เป„เบเบชเบญเบเบซเบผเบตเบ? เป€เบกเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบชเบฐเบ„เบดเบš, เบ‚เป‰เบญเบเบžเบปเบšเบšเบฑเบ™เบซเบฒเบ™เบตเป‰เบ„เบทเบเบฑเบ™. เปƒเบ™เป€เบงเบฅเบฒเบ™เบฑเป‰เบ™, เบ‚เป‰เบญเบเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเปƒเบŠเป‰ API เปเบฅเบฐเบ‚เป‰เบญเบเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ‚เบฝเบ™เป„เบ›เบซเบฒเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” NiPyAPI เปเบฅเบฐเบ‚เปเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ / เบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญ. เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ•เบญเบšเบ‚เป‰เบญเบ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเบšเบฑเบ™เบซเบฒเปเบฅเบฐเบฅเบฒเบงเบ‚เบฝเบ™เบงเปˆเบฒเบฅเบฒเบงเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฐ "เบเบงเบ”เป€เบšเบดเปˆเบ‡เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡". เปเบฅเบฐเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบชเบญเบ‡เบชเบฒเบกเบกเบทเป‰เบ•เปเปˆเบกเบฒ, เบญเบตเป€เบกเบงเบกเบฒเบฎเบญเบ”เบ—เบตเปˆเบŸเบฑเบ‡เบŠเบฑเบ™ Python เบ–เบทเบเบ‚เบฝเบ™เป„เบงเป‰เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ !!! เปƒเบ™เป€เบงเบฅเบฒเบ™เบฑเป‰เบ™, เบฎเบธเปˆเบ™ NiPyAPI เปเบกเปˆเบ™ 0.13.3 เปเบฅเบฐ, เปเบ™เปˆเบ™เบญเบ™, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบขเบนเปˆเปƒเบ™เบกเบฑเบ™. เปเบ•เปˆเปƒเบ™เบชเบฐเบšเบฑเบš 0.14.0, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบญเบเบญเบญเบเบกเบฒเป€เบกเบทเปˆเบญเบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰, เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เปเบฅเป‰เบง. เบžเบปเบšเบเบฑเบ™

nipyapi.canvas.set_remote_process_group_transmission

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ”เป‰เบงเบเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบ‚เบญเบ‡เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” NiPyAPI, เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฒเบ™เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™, เบกเป‰เบงเบ™เป€เบ–เบดเบ‡เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒ, เปเบฅเบฐเปเบกเป‰เบเบฐเบ—เบฑเป‰เบ‡เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเปเบฅเบฐเบเบฒเบ™เป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ” comb เบฅเบฐเบซเบฑเบ”, เป€เบžเบตเปˆเบกเบ—เบธเบเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบเบงเบ”เบชเบญเบš, เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ, เปเบฅเบฐเบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบกเบฑเบ™. เปเบ•เปˆเบ™เบฑเป‰เบ™เปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบกเบปเบ”.

เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ—เบตเปˆเบ‚เป‰เบญเบเบžเบดเบˆเบฒเบฅเบฐเบ™เบฒ, เบชเบธเบ”เบ—เป‰เบฒเบเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบ‚เป‰เบญเบเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”. เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบ™เบตเป‰เปเบกเปˆเบ™เบฅเบฐเบซเบฑเบ” python, เป€เบŠเบดเปˆเบ‡เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเบฑเบ‡เบฅเบฐเบซเบฑเบ”เป‚เบ„เบ‡เบเบฒเบ™เบŠเปˆเบงเบเปเบฅเบฐเปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆเบˆเบฒเบเบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบก. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เป‚เบ„เบ‡เบเบฒเบ™ NiPyAPI เบเปเบฒเบฅเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒเบขเปˆเบฒเบ‡เบซเป‰เบฒเบงเบซเบฑเบ™เปเบฅเบฐเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เป„เบ›เบซเบฒเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒ. เบญเบฑเบ™เบ—เบตเบชเบฒเบก, NiPyAPI เบเบฑเบ‡เป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบซเบผเบฒเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบžเบปเบงเบžเบฑเบ™เบเบฑเบš NiFi เปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบงเปˆเบฒเปเบ–เบงเบ‚เปเป‰เบ„เบงเบฒเบกเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบขเบนเปˆเปƒเบ™เบเบฒเบ™เป„เบซเบผเปเบฅเบฐเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ›เบฑเบšเบ›เบธเบ‡เบเบธเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™.

เบซเบกเบปเบ”โ€‹เป€เบ—เบปเปˆเบฒโ€‹เบ™เบตเป‰. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบญเบฐเบ—เบดเบšเบฒเบ 3 เบงเบดเบ—เบตเบเบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบชเบปเปˆเบ‡เบเบฐเปเบชเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™ NiFi, เบ‚เบธเบกเบ—เบตเปˆเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบญเบฒเบ”เบˆเบฐเบžเบปเบšเปเบฅเบฐเปƒเบซเป‰เบฅเบฐเบซเบฑเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบชเบปเบ™เปƒเบˆเบซเบปเบงเบ‚เปเป‰เบ™เบตเป‰เบ„เบทเบเบฑเบšเบ‚เป‰เบญเบ - เบ‚เบฝเบ™!

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™