အင်ဂျင်နီယာ ရိုးရှင်းမှု
Streaming API လမ်းညွှန်
နိဒါန်း
ဤလမ်းညွှန်သည် ထုတ်ကုန်၏ streaming API မှတစ်ဆင့် Paragon Active Assurance မှဒေတာကို မည်သို့ထုတ်ယူရမည်ကို ဖော်ပြထားပါသည်။
API နှင့် streaming client တို့ကို Paragon Active Assurance ထည့်သွင်းမှုတွင် ထည့်သွင်းထားသည်။
သို့သော် API ကို အသုံးမပြုမီ ပြင်ဆင်မှု အနည်းငယ် လိုအပ်ပါသည်။ ၎င်းကို စာမျက်နှာ 1 အခန်းတွင် “လွှင့်ထုတ်ခြင်း API ကို ပြင်ဆင်ခြင်း” တွင် အကျုံးဝင်ပါသည်။
ကျော်view
ဤအခန်းတွင် Kafka မှတစ်ဆင့် မက်ထရစ်စာတိုများစာရင်းသွင်းခြင်းကို ခွင့်ပြုရန် Streaming API ကို မည်သို့စီစဉ်သတ်မှတ်ရမည်ကို ဖော်ပြထားပါသည်။
အောက်တွင်ကျွန်ုပ်တို့ဖြတ်သန်းပါလိမ့်မည်:
- Streaming API ကို ဘယ်လိုဖွင့်ရမလဲ
- ပြင်ပကလိုင်းယင့်တွေကို နားထောင်ဖို့ Kafka ကို ဘယ်လိုပြင်ဆင်မလဲ။
- ACLs ကိုအသုံးပြုရန် Kafka ကိုမည်ကဲ့သို့ configure လုပ်နည်း နှင့် ပြောကြားထားသော client များအတွက် SSL encryption ကို စနစ်ထည့်သွင်းပါ။
Kafka ဆိုတာ ဘာလဲ
Kafka သည် event streams များပုံစံဖြင့် အမျိုးမျိုးသော event ရင်းမြစ်များ (အာရုံခံကိရိယာများ၊ ဒေတာဘေ့စ်များ၊ မိုဘိုင်းကိရိယာများ) မှပေးပို့သော အချက်အလက်များကို အချိန်နှင့်တပြေးညီ ဖမ်းယူနိုင်စေသည့် event-streaming ပလပ်ဖောင်းတစ်ခုဖြစ်ပြီး နောက်ပိုင်းတွင် ပြန်လည်ရယူခြင်းနှင့် ခြယ်လှယ်ခြင်းအတွက် အဆိုပါ event stream များကို တာရှည်ခံအောင် သိမ်းဆည်းခြင်း။
Kafka ဖြင့် ၎င်းသည် ဖြန့်ဝေမှု၊ အရွယ်အစားမြင့်မားသော၊ ပျော့ပျောင်းမှု၊ အမှားအယွင်းခံနိုင်ရည်ရှိကာ လုံခြုံသောပုံစံဖြင့် အဖြစ်အပျက် ထုတ်လွှင့်မှုကို အဆုံးမှအဆုံးအထိ စီမံခန့်ခွဲနိုင်သည်။
မှတ်ချက်: Kafka ကို ပုံစံအမျိုးမျိုးဖြင့် ပြင်ဆင်သတ်မှတ်နိုင်ပြီး အတိုင်းအတာနှင့် မလိုအပ်သောစနစ်များအတွက် ဒီဇိုင်းထုတ်ထားသည်။ Paragon Active Assurance Control Center တွင်တွေ့ရသော Streaming API အင်္ဂါရပ်ကို အသုံးပြုရန်အတွက် ဤစာတမ်းသည် ၎င်းအား မည်သို့စီစဉ်သတ်မှတ်ရမည်နည်း။ ပိုမိုအဆင့်မြင့်သော ဆက်တင်များအတွက် ကျွန်ုပ်တို့သည် တရားဝင် Kafka စာရွက်စာတမ်းကို ကိုးကားပါသည်- kafka.apache.org/26/documentation.html.
အသုံးအနှုန်းများ
- Kafka- ပွဲ-တိုက်ရိုက်လွှင့်သည့် ပလက်ဖောင်း။
- Kafka ခေါင်းစဉ်- ဖြစ်ရပ်များ စုစည်းမှု။
- Kafka စာရင်းသွင်းသူ/စားသုံးသူ- Kafka ခေါင်းစဉ်တစ်ခုတွင် သိမ်းဆည်းထားသော ဖြစ်ရပ်များကို ပြန်လည်ရယူရန်အတွက် တာဝန်ရှိသော အစိတ်အပိုင်း။
- Kafka ပွဲစား- Kafka အစုအဝေးတစ်ခု၏ သိုလှောင်မှုအလွှာဆာဗာ။
- SSL/TLS- SSL သည် အင်တာနက်ပေါ်တွင် လုံခြုံစွာ သတင်းအချက်အလက်ပေးပို့ခြင်းအတွက် ဖန်တီးထုတ်လုပ်ထားသော လုံခြုံသော ပရိုတိုကောတစ်ခုဖြစ်သည်။ TLS သည် 1999 ခုနှစ်တွင် စတင်မိတ်ဆက်ခဲ့သော SSL ၏ ဆက်ခံသူဖြစ်သည်။
- SASL- အသုံးပြုသူအထောက်အထားစိစစ်ခြင်း၊ ဒေတာခိုင်မာမှုစစ်ဆေးခြင်းနှင့် ကုဒ်ဝှက်ခြင်းအတွက် ယန္တရားများကို ပံ့ပိုးပေးသော မူဘောင်။
- Streaming API စာရင်းသွင်းသူ- Paragon Active Assurance တွင် သတ်မှတ်ထားသည့် အကြောင်းအရာများတွင် သိမ်းဆည်းထားသည့် ဖြစ်ရပ်များကို ပြန်လည်ရယူရန် တာဝန်ရှိပြီး ပြင်ပဝင်ရောက်ခွင့်အတွက် ရည်ရွယ်သည့် အစိတ်အပိုင်း။
- Certificate Authority- အများသူငှာသော့လက်မှတ်များကိုထုတ်ပေးပြီး ရုပ်သိမ်းသည့် ယုံကြည်စိတ်ချရသောအဖွဲ့အစည်းတစ်ခု။
- Certificate Authority root လက်မှတ်- Certificate Authority ကို သတ်မှတ်သည့် အများသူငှာသော့လက်မှတ်။
Streaming API အလုပ်လုပ်ပုံ
ယခင်က ဖော်ပြခဲ့သည့်အတိုင်း၊ Streaming API သည် ပြင်ပဖောက်သည်များအား Kafka မှ မက်ထရစ်များအကြောင်း အချက်အလက်များကို ထုတ်ယူခွင့်ပြုသည်။
စမ်းသပ်မှု သို့မဟုတ် စောင့်ကြည့်ခြင်းလုပ်ငန်းတစ်ခုအတွင်း Test Agents မှစုဆောင်းထားသော မက်ထရစ်အားလုံးကို တိုက်ရိုက်လွှင့်ဝန်ဆောင်မှုသို့ ပေးပို့ပါသည်။
လုပ်ဆောင်ခြင်းအဆင့်ပြီးနောက်၊ Stream ဝန်ဆောင်မှုသည် မက်တာဒေတာများနှင့်အတူ Kafka တွင် အဆိုပါမက်ထရစ်များကို ထုတ်ဝေသည်။

Kafka ခေါင်းစဉ်များ
Kafka တွင် အချက်အလက်အားလုံးကို ထုတ်ဝေသည့် အကြောင်းအရာများ၏ သဘောတရားရှိသည်။ Paragon Active Assurance တွင် ထိုကဲ့သို့သော Kafka ခေါင်းစဉ်များစွာကို ရရှိနိုင်သည်။ သို့ရာတွင်၊ ၎င်းတို့အနက်မှ အပိုင်းတစ်ပိုင်းသာ ပြင်ပဝင်ရောက်ခွင့်အတွက် ရည်ရွယ်ပါသည်။
Control Center ရှိ Paragon Active Assurance အကောင့်တစ်ခုစီတွင် သီးခြားအကြောင်းအရာနှစ်ခုရှိသည်။ အောက်တွင်၊ ACCOUNT သည် အကောင့်အတိုကောက်အမည်ဖြစ်သည်-
- paa.public.accounts.{ACCOUNT}.metrics
- ပေးထားသောအကောင့်အတွက် မက်ထရစ်စာတိုများအားလုံးကို ဤအကြောင်းအရာအတွက် ထုတ်ဝေထားသည်။
- ဒေတာပမာဏများစွာ
- မြင့်မားသော အပ်ဒိတ်အကြိမ်ရေ
- paa.public.accounts.{ACCOUNT}.metadata
- ဥပမာ- မက်ထရစ်ဒေတာနှင့် ပတ်သက်သော မက်တာဒေတာ ပါရှိသည်။ampမက်ထရစ်များနှင့်ဆက်စပ်သော စမ်းသပ်မှု၊ စောင့်ကြည့်မှု သို့မဟုတ် စမ်းသပ်မှု အေးဂျင့်
- ဒေတာပမာဏအနည်းငယ်
- အပ်ဒိတ်အကြိမ်ရေနည်း
Streaming API ကိုဖွင့်ခြင်း။
မှတ်ချက်: ဤညွှန်ကြားချက်များသည် sudo ကို အသုံးပြု၍ Control Center ဆာဗာတွင် လုပ်ဆောင်ရမည်ဖြစ်သည်။
Streaming API သည် Control Center သို့ ထိပ်တန်းအချို့ကို ပေါင်းထည့်သောကြောင့်၊ ၎င်းကို မူရင်းအတိုင်း ဖွင့်မထားပါ။ API ကိုဖွင့်ရန်၊ ကျွန်ုပ်တို့သည် ပင်မဖွဲ့စည်းမှုတွင် Kafka သို့ မက်ထရစ်များထုတ်ဝေခြင်းကို ဦးစွာဖွင့်ရပါမည်။ file:
- /etc/netrounds/netrounds.conf
KAFKA_METRICS_ENABLED = မှန်ပါသည်။
သတိပေးချက်- ဤအင်္ဂါရပ်ကိုဖွင့်ခြင်းသည် Control Center စွမ်းဆောင်ရည်အပေါ် သက်ရောက်မှုရှိနိုင်သည်။ သင့်ဥပမာကို အတိုင်းအတာနှင့် ချိန်ညှိထားကြောင်း သေချာပါစေ။
ထို့နောက်၊ ဤမက်ထရစ်များကို မှန်ကန်သော Kafka ခေါင်းစဉ်များသို့ ထပ်ဆင့်ပို့ခြင်းကို ဖွင့်ရန်- - /etc/netrounds/metrics.yaml
streaming-api- မှန်သည်။
Streaming API ဝန်ဆောင်မှုများကို ဖွင့်ရန်နှင့် စတင်ရန်၊ လုပ်ဆောင်ရန်-
sudo ncc ဝန်ဆောင်မှုများသည် timescaledb မက်ထရစ်များကို ဖွင့်ပေးသည် sudo ncc ဝန်ဆောင်မှုများသည် timescaledb မက်ထရစ်များကို စတင်သည်။
နောက်ဆုံးတွင်၊ ဝန်ဆောင်မှုများကို ပြန်လည်စတင်ပါ-
sudo ncc ဝန်ဆောင်မှုများကို ပြန်လည်စတင်ပါ။
Streaming API သည် Control Center တွင် အလုပ်လုပ်ကြောင်း အတည်ပြုခြင်း။
မှတ်ချက်: ဤညွှန်ကြားချက်များကို ထိန်းချုပ်စင်တာဆာဗာတွင် လုပ်ဆောင်ရမည်ဖြစ်သည်။
မှန်ကန်သော Kafka ခေါင်းစဉ်များအတွက် မက်ထရစ်များကို သင်လက်ခံရရှိကြောင်း ယခု အတည်ပြုနိုင်ပါပြီ။ ထိုသို့ပြုလုပ်ရန် kafkacat utility ကို install လုပ်ပါ။
sudo apt-get update sudo apt-get install kafkacat
သင့်တွင် စမ်းသပ်မှု သို့မဟုတ် မော်နီတာတစ်ခု လုပ်ဆောင်နေပါက၊ သင်သည် ဤအကြောင်းအရာများအတွက် မက်ထရစ်များနှင့် မက်တာဒေတာကို လက်ခံရရှိရန် kafkacat ကို အသုံးပြုနိုင်ပါသည်။
သင့်အကောင့်၏အမည်အတိုဖြင့် myaccount ကို အစားထိုးပါ (ဒါက သင့် Control Center မှာ သင်မြင်ရတဲ့ အရာပါ။ URL):
တင်ပို့ခြင်း။ METRICS_TOPIC=paa.public.accounts.myaccount.metrics
တင်ပို့ခြင်း။ METADATA_TOPIC=paa.public.accounts.myaccount.metadata
ဤအမိန့်ကို လုပ်ဆောင်ခြင်းဖြင့် သင်သည် ယခုအခါ မက်ထရစ်များကို မြင်သင့်သည်-
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
ရန် view မက်တာဒေတာ၊ အောက်ပါ command ကို run (၎င်းသည် မကြာခဏ update လုပ်မည်မဟုတ်ကြောင်း သတိပြုပါ)။
kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e
မှတ်ချက်:
kafkacat”Client Examples” စာမျက်နှာ ၆
၎င်းသည် ကျွန်ုပ်တို့တွင် Control Center အတွင်းမှ အလုပ်လုပ်သော Streaming API တစ်ခုရှိကြောင်း အတည်ပြုပါသည်။ သို့သော်၊ သင်သည် ပြင်ပကလိုင်းယင့်တစ်ခုမှ ဒေတာကို ရယူရန် စိတ်ဝင်စားဖွယ် အများစုဖြစ်သည်။ နောက်အပိုင်းတွင် Kafka ကို ပြင်ပဝင်ရောက်ခွင့်အတွက် မည်သို့ဖွင့်ရမည်ကို ဖော်ပြထားပါသည်။
ပြင်ပအိမ်ရှင်များအတွက် Kafka ကိုဖွင့်ခြင်း။
မှတ်ချက်: ဤညွှန်ကြားချက်များကို ထိန်းချုပ်စင်တာဆာဗာတွင် လုပ်ဆောင်ရမည်ဖြစ်သည်။
ပုံမှန်အားဖြင့် Kafka သည် Control Center တွင်လည်ပတ်နေသောစက်တွင်းအသုံးပြုရန်အတွက် localhost တွင်သာနားဆင်ရန် configure လုပ်ထားသည်။
Kafka ဆက်တင်များကို မွမ်းမံခြင်းဖြင့် ပြင်ပဖောက်သည်များအတွက် Kafka ကို ဖွင့်နိုင်သည်။
Kafka သို့ ချိတ်ဆက်ခြင်း- သတိပေးချက်များ
သတိပြုရန်- ဤသဘောတရားများကို သင်နားမလည်ပါက Kafka နှင့် ဆက်သွယ်မှုပြဿနာများကို လွယ်ကူစွာဖြေရှင်းနိုင်သောကြောင့် ၎င်းကိုသေချာဖတ်ပါ။
ဤစာတမ်းတွင်ဖော်ပြထားသော ထိန်းချုပ်ရေးစင်တာစနစ်ထည့်သွင်းမှုတွင်၊ Kafka ပွဲစားတစ်ဦးတည်းသာရှိသည်။
သို့သော်လည်း Kafka ပွဲစားသည် Kafka ပွဲစားများစွာပါ၀င်နိုင်သည့် Kafka အစုအဝေးတစ်ခု၏ တစ်စိတ်တစ်ပိုင်းအဖြစ် လုပ်ဆောင်ရန် ရည်ရွယ်ထားကြောင်း သတိပြုပါ။
Kafka ပွဲစားနှင့် ချိတ်ဆက်သောအခါတွင်၊ Kafka client မှ ကနဦးချိတ်ဆက်မှုကို သတ်မှတ်ပေးပါသည်။ ဤချိတ်ဆက်မှုတွင် Kafka ပွဲစားသည် တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော Kafka ပွဲစားများ၏စာရင်းဖြစ်သည့် "ကြော်ငြာနားထောင်သူများ" စာရင်းကို ပြန်ပေးလိမ့်မည်။
ဤစာရင်းကို လက်ခံရရှိသောအခါ၊ Kafka ဖောက်သည်သည် ချိတ်ဆက်မှု ဖြတ်တောက်မည်ဖြစ်ပြီး၊ ထို့နောက် ကြော်ငြာထားသော နားထောင်သူများထဲမှ တစ်ဦးထံသို့ ပြန်လည်ချိတ်ဆက်မည်ဖြစ်သည်။ ကြော်ငြာထားသော နားဆင်သူများသည် Kafka အသုံးပြုသူထံ ဝင်ရောက်နိုင်သော လက်ခံလက်ခံသူအမည်များ သို့မဟုတ် IP လိပ်စာများပါရှိရမည်ဖြစ်ပြီး သို့မဟုတ် လိုင်းချိတ်ဆက်ရန် ပျက်ကွက်မည်ဖြစ်သည်။
အကယ်၍ SSL ကုဒ်ဝှက်ခြင်းကို အသုံးပြုပါက၊ သီးခြား hostname တစ်ခုနှင့်ချိတ်ဆက်ထားသည့် SSL လက်မှတ်တစ်ခုပါ ၀ င်ပါက၊ မဟုတ်ပါက ချိတ်ဆက်မှုအား ငြင်းပယ်ခံရနိုင်သောကြောင့် Kafka client သည် ချိတ်ဆက်ရန် မှန်ကန်သောလိပ်စာကို လက်ခံရရှိရန် ပို၍အရေးကြီးပါသည်။
Kafka နားဆင်သူများအကြောင်းကို ဤနေရာတွင် ဖတ်ပါ။ www.confluent.io/blog/kafka-listeners- ရှင်းပြသည်။
SSL/TLS ကုဒ်ဝှက်ခြင်း
ယုံကြည်ရသောဖောက်သည်များသာ Kafka နှင့် Streaming API ကိုဝင်ရောက်ခွင့်သေချာစေရန်၊ ကျွန်ုပ်တို့သည် အောက်ပါတို့ကို configure လုပ်ရပါမည်။
- အထောက်အထားစိစစ်ခြင်း- သုံးစွဲသူများသည် သုံးစွဲသူနှင့် Kafka ကြား SSL/TLS လုံခြုံသောချိတ်ဆက်မှုမှတစ်ဆင့် သုံးစွဲသူအမည်နှင့် စကားဝှက်ကို ပေးဆောင်ရမည်ဖြစ်သည်။
- ခွင့်ပြုချက်- စစ်မှန်သောဖောက်သည်များသည် ACLs မှ ထိန်းကျောင်းသည့် လုပ်ငန်းများကို လုပ်ဆောင်နိုင်သည်။
ဒီမှာ တစ်ခုပြီးတစ်ခုview:

*) SSL-ကုဒ်ဝှက်ထားသော ချန်နယ်တစ်ခုတွင် အသုံးပြုသူအမည်/စကားဝှက်ကို စစ်မှန်ကြောင်းအထောက်အထားပြခြင်း။
Kafka အတွက် SSL/TLS ကုဒ်ဝှက်ခြင်း အလုပ်လုပ်ပုံကို အပြည့်အဝနားလည်ရန်၊ တရားဝင်စာရွက်စာတမ်းကို ကိုးကားပါ- docs.confluent.io/platform/current/kafka/encryption.html
SSL/TLS လက်မှတ် ပြီးသွားပါပြီ။view
မှတ်ချက်: ဤအပိုင်းခွဲတွင် အောက်ပါဝေါဟာရများကို အသုံးပြုပါမည်။
လက်မှတ်- Certificate Authority (CA) မှ လက်မှတ်ရေးထိုးထားသော SSL လက်မှတ်။ Kafka ပွဲစားတစ်ခုစီတွင် တစ်ခုစီရှိသည်။
သော့ဆိုင်- သော့ဆိုင် file ၎င်းသည် လက်မှတ်ကို သိမ်းဆည်းသည်။ သော့ဆိုင် file လက်မှတ်၏ သီးသန့်သော့ပါရှိသည်။ ထို့ကြောင့် ဘေးကင်းရန် လိုအပ်ပါသည်။
Truststore- A file ယုံကြည်ရသော CA လက်မှတ်များ ပါဝင်သည်။
Control Center တွင် ပြင်ပကလိုင်းယင့်နှင့် Kafka လည်ပတ်နေသော ပြင်ပကလိုင်းယင့်အကြား စစ်မှန်ကြောင်းအထောက်အထားပြခြင်းကို စနစ်ထည့်သွင်းရန်၊ နှစ်ဖက်စလုံးတွင် Certificate Authority (CA) မှ လက်မှတ်ရေးထိုးထားသော သက်ဆိုင်ရာ Certificate Authority (CA) နှင့် CA root လက်မှတ်တို့နှင့်အတူ သတ်မှတ်ထားသော သော့စတိုးတစ်ခုရှိရမည်။
၎င်းအပြင်၊ ကလိုင်းယင့်တွင် CA အမြစ်လက်မှတ်ပါရှိသည့် truststore လည်းရှိရပါမည်။
CA root လက်မှတ်သည် Kafka ပွဲစားနှင့် Kafka ဖောက်သည်များအတွက် ဘုံဖြစ်သည်။
လိုအပ်သော လက်မှတ်များ ဖန်တီးခြင်း။
၎င်းကို စာမျက်နှာ ၁၇ ရှိ “နောက်ဆက်တွဲ” တွင် ဖော်ပြထားသည်။
ထိန်းချုပ်စင်တာရှိ Kafka ပွဲစား SSL/TLS ဖွဲ့စည်းမှုပုံစံ
မှတ်ချက်: ဤညွှန်ကြားချက်များကို ထိန်းချုပ်စင်တာဆာဗာတွင် လုပ်ဆောင်ရမည်ဖြစ်သည်။
မှတ်ချက်: ဆက်လက်မလုပ်ဆောင်မီ၊ စာမျက်နှာ 17 ရှိ “နောက်ဆက်တွဲ” ပါ ညွှန်ကြားချက်များကို လိုက်နာခြင်းဖြင့် SSL လက်မှတ်ပါရှိသော သော့စတိုးကို ဖန်တီးရပါမည်။ အောက်ဖော်ပြပါ လမ်းကြောင်းများသည် ဤညွှန်ကြားချက်များမှ လာပါသည်။
SSL သော့ဆိုင်သည် တစ်ခုဖြစ်သည်။ file disk တွင် သိမ်းဆည်းထားသည်။ file extension .jks
Kafka ပွဲစားနှင့် Kafka client နှစ်ခုလုံးအတွက် လိုအပ်သော လက်မှတ်များ ဖန်တီးပြီးသည်နှင့်၊ Control Center တွင် လုပ်ဆောင်နေသော Kafka ပွဲစားကို configure လုပ်ခြင်းဖြင့် ဆက်လက်လုပ်ဆောင်နိုင်ပါသည်။ အောက်ပါတို့ကို သိထားရန် လိုအပ်ပါသည်။
- Control Center ၏ အများသူငှာ အသုံးပြုသူအမည်၊ ၎င်းကို Kafka ဖောက်သည်များက ဖြေရှင်း၍ရနိုင်သည်။
- - SSL လက်မှတ်ကို ဖန်တီးသောအခါ သော့စတိုးစကားဝှက်ကို ပေးထားသည်။
- နှင့် ဤအရာများသည် စီမံခန့်ခွဲသူနှင့် သုံးစွဲသူအသုံးပြုသူအတွက် သတ်မှတ်လိုသော စကားဝှက်များဖြစ်သည်။
ဟောင်းတွင်ဖော်ပြထားသည့်အတိုင်း သင်သည် နောက်ထပ်အသုံးပြုသူများကို ထည့်နိုင်သည်ကို သတိပြုပါ။ampလဲ့
/etc/kafka/server.properties တွင် ပြထားသည့်အတိုင်း အထက်ဖော်ပြပါ variable များကို ထည့်သွင်းခြင်းဖြင့် (sudo access ဖြင့်) တည်းဖြတ်ပါ သို့မဟုတ် ထပ်ဖြည့်ပါ
သတိပေးချက်- PLAINTEXT://localhost:9092 ကို မဖယ်ရှားပါနှင့်။ ဌာနတွင်းဝန်ဆောင်မှုများက ဆက်သွယ်၍မရသောကြောင့် ၎င်းသည် ထိန်းချုပ်ရေးစင်တာ၏လုပ်ဆောင်နိုင်စွမ်းကို ပျက်ပြားစေမည်ဖြစ်သည်။
…# Kafka ပွဲစားမှ နားထောင်သော လိပ်စာများ။
listeners=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
# ဤအရာများသည် ချိတ်ဆက်နေသည့် မည်သည့် client ကိုမဆို ပြန်လည်ကြော်ငြာထားသော host များဖြစ်သည်။
advertised.listeners=PLAINTEXT://localhost:9092၊SASL_SSL:// :9093…
####### စိတ်ကြိုက်ပြင်ဆင်မှု
# SSL ဖွဲ့စည်းမှု
ssl.endpoint.identification.algorithm=
ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks
ssl.keystore.password=
ssl.key.password=
ssl.client.auth=none
ssl.protocol=TLSv1.2
# SASL ဖွဲ့စည်းမှုပုံစံ sasl.enabled.mechanisms=PLAIN
listener.name.sasl_ssl.plain.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginMo dule လိုအပ် \username=”admin” \password=” ” \user_admin=” ” \ user_client=” ”; # သတိပြုရန်မှာ သုံးစွဲသူများနှင့်အတူ နောက်ထပ်အသုံးပြုသူများ ပေါင်းထည့်နိုင်သည်_ =
# ခွင့်ပြုချက်၊ ACLs authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=User:admin ကိုဖွင့်ပါ။
Access Control Lists (ACLs) ကို စနစ်ထည့်သွင်းခြင်း
localhost တွင် ACLs ကိုဖွင့်ခြင်း။
သတိပေးချက်- ကျွန်ုပ်တို့သည် localhost အတွက် ACLs ကို ဦးစွာ စတင်သတ်မှတ်ရမည်ဖြစ်ပြီး၊ သို့မှသာ Control Center ကိုယ်တိုင် Kafka ကို ဆက်လက်အသုံးပြုနိုင်မည်ဖြစ်သည်။ မပြီးရင် ပျက်သွားလိမ့်မယ်။
########## အမည်မသိအသုံးပြုသူများအတွက် ACLs ထည့်သွင်းမှုများ
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \ –authorizer-properties zookeeper.connect=localhost:2181 \ –add –allow-principal User:ANONYMOUS –allow-host 127.0.0.1 –cluster
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \ –authorizer-properties zookeeper.connect=localhost:2181 \ –add –allow-principal User:ANONYMOUS –allow-host 127.0.0.1 –topic '*'
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \ –authorizer-properties zookeeper.connect=localhost:2181 \ –add –allow-principal User:ANONYMOUS –allow-host 127.0.0.1 –group '*'
ထို့နောက် ပြင်ပအသုံးပြုသူများသည် paa.public.* ခေါင်းစဉ်များကို ဖတ်ခွင့်ရစေရန် ACLs များကို ဖွင့်ထားရန် လိုအပ်ပါသည်။
မှတ်ချက်: ပိုမို ကောင်းမွန်သော ထိန်းချုပ်မှု အတွက်၊ တရားဝင် Kafka စာရွက်စာတမ်းကို ကိုးကားပါ။
########## ပြင်ပအသုံးပြုသူများအတွက် ACLs ထည့်သွင်းမှုများ
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \–authorizer-properties zookeeper.connect=localhost:2181 \
–add –allow-principal User:* –operation read –operation describe \–group 'NCC'
/usr/lib/kafka/bin/kafka-acls.sh \
–authorizer kafka.security.authorizer.AclAuthorizer \
–authorizer-properties zookeeper.connect=localhost:2181 \
–add –allow-principal User:* –operation read –operation describe \
-topic paa.public။ -resource-pattern-type ကို ရှေ့ဆက်ထားသည်။
၎င်းကိုလုပ်ဆောင်ပြီးသည်နှင့် သင်သည် ဝန်ဆောင်မှုများကို ပြန်လည်စတင်ရန် လိုအပ်သည်-
sudo ncc ဝန်ဆောင်မှုများကို ပြန်လည်စတင်ပါ။
ကလိုင်းယင့်တစ်ဦးသည် လုံခြုံသောချိတ်ဆက်မှုတစ်ခုကို ထူထောင်နိုင်သည်ကို အတည်ပြုရန်၊ ပြင်ပကလိုင်းယင့်ကွန်ပြူတာ (Control Center ဆာဗာတွင်မဟုတ်) အောက်ပါအမိန့်ကို လုပ်ဆောင်ပါ။ အောက်တွင်၊ PUBLIC_HOSTNAME သည် Control Center လက်ခံသူအမည်ဖြစ်သည်-
openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep "လုံခြုံသောပြန်လည်ညှိနှိုင်းခြင်း IS ကို ပံ့ပိုးထားသည်"
command output တွင် server လက်မှတ်အပြင် အောက်ပါတို့ကို တွေ့ရမည်ဖြစ်ပါသည်။
လုံခြုံသော ပြန်လည်ညှိနှိုင်းရေး IS ကို ပံ့ပိုးထားသည်။
အတွင်းဝန်ဆောင်မှုများကို Kafka ဆာဗာသို့ ဝင်ရောက်ခွင့်ပြုထားကြောင်း သေချာစေရန်၊ ကျေးဇူးပြု၍ အောက်ပါမှတ်တမ်းကို စစ်ဆေးပါ။files:
ပြင်ပကလိုင်းယင့်ချိတ်ဆက်မှုကို သက်သေပြနေသည်။
kafkacat
မှတ်ချက်: ဤညွှန်ကြားချက်များကို ကလိုင်းယင့်ကွန်ပြူတာ (Control Center ဆာဗာတွင်မဟုတ်) ပေါ်တွင် လုပ်ဆောင်ရန်ဖြစ်သည်။
မှတ်ချက်: မက်ထရစ်အချက်အလက်များကိုပြသရန်၊ Control Center တွင် အနည်းဆုံး မော်နီတာတစ်ခု အလုပ်လုပ်ကြောင်း သေချာပါစေ။
ချိတ်ဆက်မှုကို ပြင်ပကလိုင်းယင့်အဖြစ် အတည်ပြုရန်နှင့် စာမျက်နှာ 4 ရှိ "လွှင့် API သည် ထိန်းချုပ်ရေးစင်တာတွင် အလုပ်လုပ်ကြောင်း အတည်ပြုခြင်း" ကဏ္ဍတွင် ထည့်သွင်းထားသည့် kafkacat utility ကို အသုံးပြုနိုင်သည်။
အောက်ပါအဆင့်များကို လုပ်ဆောင်ပါ။
မှတ်ချက်: အောက်တွင်၊ CLIENT_USER သည် ယခင်က သတ်မှတ်ထားသော အသုံးပြုသူဖြစ်သည်။ file /etc/kafka/server.properties အတွက်
ထိန်းချုပ်ရေးစင်တာ- အမည်ရ၊ user_client နှင့် စကားဝှက်ကို ထိုနေရာတွင် သတ်မှတ်ထားသည်။
ဆာဗာဘက်မှ SSL လက်မှတ်ကို လက်မှတ်ထိုးရန် အသုံးပြုသည့် CA အမြစ်လက်မှတ်သည် ကလိုင်းယင့်တွင် ရှိနေရပါမည်။
- ဖန်တီးပါ။ file အောက်ပါအကြောင်းအရာပါရှိသော client.properties
security.protocol=SASL_SSL
ssl.ca.location={PATH_TO_CA_CERT}
sasl.mechanisms=ရိုးရိုး
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD} နေရာတွင်
• {PATH_TO_CA_CERT} သည် Kafka ပွဲစားမှအသုံးပြုသော CA အမြစ်လက်မှတ်၏တည်နေရာဖြစ်သည်
• {CLIENT_USER} နှင့် {CLIENT_PASSWORD} တို့သည် ကလိုင်းယင့်အတွက် အသုံးပြုသူအထောက်အထားများဖြစ်သည်။
• kafkacat သုံးစွဲထားသော မက်ဆေ့ချ်ကို ကြည့်ရန် အောက်ပါ command ကို run ပါ။
KAFKA_FQDN= တင်ပို့ခြင်း။
METRICS_TOPIC=paa.public.accounts များကို တင်ပို့ပါ။ .မက်ထရစ်များ
kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
နေရာတွင် {METRICS_TOPIC} သည် “paa.public” ၏ ရှေ့ဆက်ဖြစ်သော Kafka ခေါင်းစဉ်၏ အမည်ဖြစ်သည်။
မှတ်ချက်: kafkacat ၏ ဗားရှင်းအဟောင်းများသည် ကလိုင်းယင့်ဆက်တင်များကို ဖတ်ရန်အတွက် -F ရွေးချယ်မှုကို မပေးဆောင်ပါ။ file. ထိုသို့သောဗားရှင်းကို သင်အသုံးပြုနေပါက၊ သင်သည် အောက်တွင်ပြထားသည့်အတိုင်း command line မှ တူညီသောဆက်တင်များကို ပေးရပါမည်။
kafkacat -b ${KAFKA_FQDN}:9093 \
-X security.protocol=SASL_SSL \
-X ssl.ca.location={PATH_TO_CA_CERT} \
-X sasl.mechanisms=PLAIN \
-X sasl.username={CLIENT_USER} \
-X sasl.password={CLIENT_PASSWORD} \
-t ${METRICS_TOPIC} -C -e
ချိတ်ဆက်မှုကို အမှားရှာရန်၊ သင်သည် -d ရွေးချယ်မှုကို အသုံးပြုနိုင်သည်။
စားသုံးသူဆက်သွယ်ရေးကို အမှားရှာပါ။
kafkacat -d စားသုံးသူ -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# အမှားရှာပွဲစား ဆက်သွယ်ရေး
kafkacat -d ပွဲစား -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
ပိုင်ဆိုင်မှုများသည် client.properties နှင့် ကွဲပြားနိုင်သောကြောင့် အသုံးပြုနေသည့် Kafka ကလိုင်းယင့်စာကြည့်တိုက်အတွက် စာရွက်စာတမ်းများကို ကိုးကားပါ။
မက်ဆေ့ချ်ပုံစံ
မက်ထရစ်များနှင့် မက်တာဒေတာအကြောင်းအရာများအတွက် အသုံးပြုထားသော စာများကို ပရိုတိုကောကြားခံစနစ် (protobuf) ဖော်မတ်တွင် အတွဲလိုက် (ကြည့်ပါ developers.google.com/protocol-buffers) ဤမက်ဆေ့ချ်များအတွက် အစီအစဉ်များသည် အောက်ပါဖော်မတ်ကို လိုက်နာသည်-
မက်ထရစ်များ Protobuf Schema
syntax = “proto3”; “google/protobuf/timest ကိုတင်သွင်းပါ။amp.proto”; paa.streamingapi အထုပ် ရွေးစရာ go_package = “.;paa_streamingapi”; မက်ထရစ်များ { google.protobuf.Timest မက်ဆေ့ချ်amp အကြိမ်ဆုံးamp = 1; မြေပုံ တန်ဖိုးများ = 2; int32 တိုင်းတာခြင်း_id = 3; } /** * မက်ထရစ်တန်ဖိုးသည် ကိန်းပြည့် သို့မဟုတ် မျှောတ်တစ်ခု ဖြစ်နိုင်သည်။ */
message MetricValue { အမျိုးအစားတစ်ခု { int64 int_val = 1; float_val = 2; } }
မက်တာဒေတာ Protobuf Schema
syntax = “proto3”; အထုပ် paa.streamingapi; ရွေးစရာ go_package = “.;paa_streamingapi”; မက်ဆေ့ဂျ် မက်တာဒေတာ { int32 Measurement_id = 1; string measurement_name = 2; မြေပုံ tags = 13; }
လိုင်းထွamples
မှတ်ချက်: ဤအမိန့်များသည် ပြင်ပကလိုင်းယင့်တစ်ခုတွင် လုပ်ဆောင်ရန် ရည်ရွယ်သည် ဥပမာampသင့်လက်ပ်တော့ သို့မဟုတ် အလားတူ၊ Control Center တွင် မရှိပါ။
မှတ်ချက်: မက်ထရစ်အချက်အလက်များကို ပြသရန်၊ Control Center တွင် အနည်းဆုံး မော်နီတာတစ်ခု လုပ်ဆောင်နေကြောင်း သေချာပါစေ။
Control Center tarball တွင် archive paa-streaming-api-client-ex ပါဝင်သည်။amples.tar.gz (ဖောက်သည်-ဟောင်းamples) ပါ၀င်သော exampStreaming API ကိုအသုံးပြုပုံကိုပြသသည့် Python script
Client Ex ကို ထည့်သွင်းခြင်းနှင့် ပြင်ဆင်ခြင်းamples
သင်သည် client-ex ကိုရှာတွေ့သည်။ampParagon Active Assurance Control Center ဖိုင်တွဲရှိ
CC_VERSION=3.3.1 ကို ထုတ်ယူပါ။
cd ./paa-control-center_${CC_VERSION} ls paa-streaming-api-client-examples*
client-ex ကို ထည့်သွင်းရန်ampသင်၏ ပြင်ပ client ကွန်ပျူတာတွင် အောက်ပါအတိုင်း လုပ်ဆောင်ပါ။
# client ex ၏ အကြောင်းအရာကို ထုတ်ယူရန်အတွက် directory ကို ဖန်တီးပါ။amples tarball mkdir paa-streaming-api-client-examples
# ဖောက်သည်ဟောင်း၏ အကြောင်းအရာကို ထုတ်ယူပါ။amples tarball tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
# အသစ်ဖန်တီးထားသော cd paa-streaming-api-client-ex သို့သွားပါ။amples client-examples သည် Docker ကို run ရန် လိုအပ်သည်။ Docker အတွက် ဒေါင်းလုဒ်များနှင့် တပ်ဆင်ခြင်း လမ်းညွှန်ချက်များကို တွင် တွေ့နိုင်ပါသည်။ https://docs.docker.com/engine/install.
Client Ex ကိုအသုံးပြုခြင်း။amples
ဖောက်သည်ဟောင်းamples ကိရိယာများသည် ဟောင်းကိုတည်ဆောက်ရန် အခြေခံ သို့မဟုတ် အဆင့်မြင့်မုဒ်တွင် လုပ်ဆောင်နိုင်သည်။ampအမျိုးမျိုးသော ရှုပ်ထွေးမှုများ။ နှစ်ခုလုံးတွင်၊ ex ကို run နိုင်သည်။ampconfiguration တစ်ခုနဲ့ les file client side ၏နောက်ထပ် စိတ်ကြိုက်ပြင်ဆင်မှုအတွက် အပိုဂုဏ်သတ္တိများ ပါဝင်သည်။
အခြေခံမုဒ် အခြေခံမုဒ်တွင်၊ မက်ထရစ်များနှင့် ၎င်းတို့၏ မက်တာဒေတာများကို သီးခြားစီထုတ်လွှင့်သည်။ ဤအဆုံးသတ်တွင်၊ client သည် ပြင်ပဝင်ရောက်ခွင့်အတွက် ရရှိနိုင်သော Kafka ခေါင်းစဉ်တစ်ခုစီကို နားထောင်ပြီး လက်ခံရရှိသောမက်ဆေ့ချ်များကို ကွန်ဆိုးလ်သို့ ရိုးရိုးရှင်းရှင်း ပရင့်ထုတ်သည်။
အခြေခံ ex ကို စတင်ရန်amples၊ run- ./build.sh run-basic –kafka-brokers localhost:9092 –အကောင့် ACCOUNT_SHORTNAME
ACCOUNT_SHORTNAME သည် သင်မက်ထရစ်များကို ရယူလိုသော အကောင့်၏အမည်အတိုဖြစ်သည်။
ရည်းစားဟောင်းကို ကွပ်မျက်ခြင်းမှ ရပ်စဲရန်ample၊ Ctrl + C ကိုနှိပ်ပါ။ (ကလိုင်းယင့်သည် အချိန်ကုန်သွားသည့်ဖြစ်ရပ်ကို စောင့်ဆိုင်းနေသောကြောင့် လုပ်ဆောင်မှု မရပ်တန့်မီ အနည်းငယ်နှောင့်နှေးမှု ရှိနိုင်သည်။)
အဆင့်မြင့်မုဒ်
မှတ်ချက်: မက်ထရစ်များကို Control Center တွင် လုပ်ဆောင်နေသည့် HTTP မော်နီတာများအတွက်သာ ပြသထားသည်။
အဆင့်မြင့်မုဒ်တွင် လုပ်ဆောင်ခြင်းသည် မက်ထရစ်များနှင့် မက်တာဒေတာမက်ဆေ့ချ်များကြား ဆက်စပ်မှုကို ပြသသည်။ သက်ဆိုင်ရာ မက်တာဒေတာမက်ဆေ့ဂျ်ကို ရည်ညွှန်းသော stream id အကွက်တစ်ခုစီ၏ မက်ထရစ်စာတိုတစ်ခုစီတွင် ရှိနေခြင်းကြောင့် ၎င်းသည် ဖြစ်နိုင်သည်။
အဆင့်မြင့် ex ကို executeamples, run- ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME ဟူသော ACCOUNT_SHORTNAME သည် သင်မက်ထရစ်များကို ရယူလိုသော အကောင့်၏ နာမည်အတိုဖြစ်သည်။
ရည်းစားဟောင်းကို ကွပ်မျက်ခြင်းမှ ရပ်စဲရန်ample၊ Ctrl + C ကိုနှိပ်ပါ။ (ကလိုင်းယင့်သည် အချိန်ကုန်သွားသည့်ဖြစ်ရပ်ကို စောင့်ဆိုင်းနေသောကြောင့် လုပ်ဆောင်မှု မရပ်တန့်မီ အနည်းငယ်နှောင့်နှေးမှု ရှိနိုင်သည်။)
အပိုဆက်တင်များ
ex ကို run ဖို့ဖြစ်နိုင်ပါတယ်။amp-config- ကိုအသုံးပြု၍ client ၏နောက်ထပ် configuration နှင့်အတူ lesfile ရွေးစရာတစ်ခုနောက်တွင် file ပုံစံ သော့=တန်ဖိုး တွင် ဂုဏ်သတ္တိများ ပါဝင်သော အမည်။
./build.sh run-advanced \ –kafka-brokers localhost:9092 \ –account ACCOUNT_SHORTNAME \ –config-file client_config.properties
မှတ်ချက်: အားလုံး fileအထက်ဖော်ပြပါ command တွင် ကိုးကားထားသော s သည် လက်ရှိ directory တွင်တည်ရှိပြီး ဆွေမျိုးလမ်းကြောင်းများကိုသာ အသုံးပြု၍ ရည်ညွှန်းရပါမည်။ ၎င်းသည် -config- နှင့် နှစ်ခုလုံးသက်ဆိုင်သည်file အကြောင်းပြချက်များနှင့် configuration အတွင်းရှိ entry အားလုံးကို file ဖော်ပြသည်။ file နေရာများ။
ပြင်ပကလိုင်းယင့် စစ်မှန်ကြောင်း သက်သေပြခြင်း
ကလိုင်းယင့်ဟောင်းကို အသုံးပြု၍ ထိန်းချုပ်ရေးစင်တာပြင်ပမှ ကလိုင်းယင့်စစ်မှန်ကြောင်းအထောက်အထားကို အတည်ပြုရန်amples၊ အောက်ပါအဆင့်များကို လုပ်ဆောင်ပါ။
- Paragon Active Assurance Control Center ဖိုဒါမှ paa-streaming-api-clientex သို့ပြောင်းပါ။amples ဖိုင်တွဲ-
cd paa-streaming-api-client-examples - CA root လက်မှတ် ca-cert ကို လက်ရှိ directory သို့ ကူးယူပါ။
- client.properties ကိုဖန်တီးပါ။ file အောက်ပါအကြောင်းအရာနှင့်အတူ
security.protocol=SASL_SSL
ssl.ca.location=ca-cert
sasl.mechanism=ရိုးရှင်းသော
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}
{CLIENT_USER} နှင့် {CLIENT_PASSWORD} တို့သည် ကလိုင်းယင့်အတွက် အသုံးပြုသူအထောက်အထားများဖြစ်သည်။ - အခြေခံ ex ကို runamples-
KAFKA_FQDN= တင်ပို့ခြင်း။ ./build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \ –account ACCOUNT_SHORTNAME
-config-file client.properties တွင် ACCOUNT_SHORTNAME သည် သင်မက်ထရစ်များကို ရယူလိုသော အကောင့်၏အတိုကောက်အမည်ဖြစ်သည်။ - အဆင့်မြင့် ex ကို runamples-
KAFKA_FQDN= တင်ပို့ခြင်း။ ./build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \ –account ACCOUNT_SHORTNAME–config-file client.properties
နောက်ဆက်တွဲ
ဤနောက်ဆက်တွဲတွင် ဖန်တီးနည်းကို ဖော်ပြထားပါသည်။
- သော့ဆိုင်တစ်ခု file Kafka ပွဲစား SSL လက်မှတ်ကို သိမ်းဆည်းရန်အတွက်
- ယုံကြည်မှုစတိုးတစ်ခု file Kafka ပွဲစားလက်မှတ်ကို လက်မှတ်ထိုးရန် အသုံးပြုသည့် Certificate Authority (CA) root လက်မှတ်ကို သိမ်းဆည်းရန်အတွက်။
Kafka ပွဲစားလက်မှတ်ဖန်တီးခြင်း။
စစ်မှန်သော လက်မှတ်အာဏာပိုင်ကို အသုံးပြု၍ လက်မှတ်ဖန်တီးခြင်း (အကြံပြုထားသည်)
ယုံကြည်စိတ်ချရသော CA မှ စစ်မှန်သော SSL လက်မှတ်ကို ရယူရန် အကြံပြုထားသည်။
သင် CA ကို ဆုံးဖြတ်ပြီးသည်နှင့် ၎င်းတို့၏ CA အရင်းလက်မှတ် ca-cert ကို ကူးယူပါ။ file အောက်ဖော်ပြပါအတိုင်း သင့်ကိုယ်ပိုင်လမ်းသို့
CA_PATH=~/my-ca mkdir ${CA_PATH} cp ca-cert ${CA_PATH} ကို ထုတ်ယူရန်
သင်၏ကိုယ်ပိုင်လက်မှတ်အာဏာပိုင်ကိုဖန်တီးပါ။
မှတ်ချက်: ပုံမှန်အားဖြင့် သင်သည် စစ်မှန်သော Certificate Authority မှ လက်မှတ်ရေးထိုးထားသော သင်၏လက်မှတ်ရှိသင့်သည်။ ရှေ့ပုဒ်မခွဲကိုကြည့်ပါ။ နောက်ဆက်တွဲအနေနဲ့ကတော့ ရည်းစားဟောင်းတစ်ယောက်ပဲ ဖြစ်ပါတယ်။ampလဲ့
ဤတွင် ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏ကိုယ်ပိုင် Certificate Authority (CA) root လက်မှတ်ကို ဖန်တီးပါသည်။ file 999 ရက်အထိ သက်တမ်း (ထုတ်လုပ်မှုတွင် မထောက်ခံပါ)။
# CA တင်ပို့မှု CA_PATH=~/my-ca mkdir ${CA_PATH} ကို သိမ်းဆည်းရန်အတွက် လမ်းညွှန်တစ်ခု ဖန်တီးပါ
# CA လက်မှတ် openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999
Client Truststore ကိုဖန်တီးခြင်း။
ယခုသင်ယုံကြည်မှုစတိုးတစ်ခုဖန်တီးနိုင်သည်။ file အထက်ဖော်ပြပါ ca-cert ပါ၀င်သည်။ ဒီ file Streaming API ကိုအသုံးပြုမည့် Kafka client မှ လိုအပ်သည်-
keytool -keystore kafka.client.truststore.jks \ -alias CARoot \ -importcert -file ${CA_PATH}/ca-cert
ယခု CA လက်မှတ်သည် ယုံကြည်စိတ်ချရသောစတိုးတွင် ရှိနေသောကြောင့်၊ သုံးစွဲသူသည် ၎င်းနှင့် လက်မှတ်ထိုးထားသည့် မည်သည့်လက်မှတ်ကိုမဆို ယုံကြည်ပါမည်။
ကော်ပီကူးထားသင့်တယ်။ file kafka.client.truststore.jks သည် သင့်ဖောက်သည်ကွန်ပြူတာရှိ လူသိများသောတည်နေရာသို့ ၎င်းကို ဆက်တင်များတွင် ညွှန်ပြပါ။
Kafka ပွဲစားအတွက် Keystore ကိုဖန်တီးခြင်း။
Kafka ပွဲစား SSL လက်မှတ်ကို ထုတ်ပေးပြီးနောက် သော့စတိုး kafka.server.keystore.jks ကို အောက်ပါအတိုင်း လုပ်ဆောင်ပါ။
SSL လက်မှတ်ထုတ်ပေးခြင်း။
အောက်တွင်၊ 999 သည် သော့စတိုး၏ တရားဝင်သော ရက်အရေအတွက်ဖြစ်ပြီး FQDN သည် သုံးစွဲသူ၏ အရည်အချင်းပြည့်မီသော ဒိုမိန်းအမည် (node ၏ အများသူငှာ လက်ခံသူအမည်) ဖြစ်သည်။
မှတ်ချက်: FQDN သည် Control Center သို့ ချိတ်ဆက်ရန် Kafka client အသုံးပြုမည့် အတိအကျ hostname နှင့် ကိုက်ညီရန် အရေးကြီးပါသည်။ sudo mkdir -p /var/ssl/private
sudo chown -R $USER: /var/ssl/private cd /var/ssl/private export FQDN=
keytool -keystore kafka.server.keystore.jks \ -alias server \ -validity 999 \ -genkey -keyalg RSA -ext SAN=dns:${FQDN}
လက်မှတ်ရေးထိုးရန် တောင်းဆိုချက်ကို ဖန်တီးပြီး ၎င်းကို ဖိုင်ထဲတွင် သိမ်းဆည်းပါ။ file အမည်ရှိ cert-server-request-
keytool -keystore kafka.server.keystore.jks \ -alias server \ -certreq \ -file cert-server-တောင်းဆိုချက်
ယခုသင်ပေးပို့သင့်သည်။ file အကယ်၍ သင်သည် အမှန်တကယ်အသုံးပြုနေပါက သင်၏ လက်မှတ်အာဏာပိုင် (CA) သို့ cert-server-request ကို တောင်းဆိုပါ။ ထို့နောက် လက်မှတ်ရေးထိုးထားသော လက်မှတ်ကို ပြန်လည်ပေးအပ်မည်ဖြစ်သည်။ ၎င်းကို အောက်တွင်ဖော်ပြထားသော cert-server-signed အဖြစ် ရည်ညွှန်းပါမည်။ ကိုယ်တိုင်ဖန်တီးထားသော CA လက်မှတ်ကို အသုံးပြု၍ SSL လက်မှတ်ကို လက်မှတ်ရေးထိုးခြင်း။
မှတ်ချက်: တစ်ဖန်၊ သင့်ကိုယ်ပိုင် CA ကို အသုံးပြုခြင်းသည် ထုတ်လုပ်မှုစနစ်တွင် အကြံပြုထားခြင်းမရှိပါ။ CA ကို အသုံးပြု၍ လက်မှတ်ကို လက်မှတ်ရေးထိုးပါ။ file cert-server-request သည် လက်မှတ်ထိုးထားသော လက်မှတ်ကို ထုတ်လုပ်ပေးသော cert-server-signed ဖြစ်သည်။ အောက်တွင်ကြည့်ပါ; ca-password သည် CA လက်မှတ်ကို ဖန်တီးရာတွင် သတ်မှတ်ထားသော စကားဝှက်ဖြစ်သည်။
cd /var/ssl/private openssl x509 -req \ -CA ${CA_PATH}/ca-cert \ -CAkey ${CA_PATH}/ca-key \ -in cert-server-request \ -out cert-server-signed \ -days 999 -CAcreateserial \ -passin pass-{ca-password}
Keystore တွင် လက်မှတ်ရေးထိုးထားသော လက်မှတ်ကို ထည့်သွင်းခြင်း။
ca-cert root လက်မှတ်ကို သော့စတိုးသို့ တင်သွင်းပါ-
keytool -keystore kafka.server.keystore.jks \ -alias ca-cert \ -import \ -file ${CA_PATH}/ca-cert
cert-server-signed ဟုရည်ညွှန်းထားသောလက်မှတ်ထိုးထားသောလက်မှတ်ကိုတင်သွင်းပါ-
keytool -keystore kafka.server.keystore.jks \ -alias server \ -import \ -file လက်မှတ်-ဆာဗာ-လက်မှတ်ထိုးထားသည်။
ဟိ file kafka.server.keystore.jks ကို Control Center ဆာဗာရှိ သိထားသည့် တည်နေရာသို့ ကူးယူပြီး /etc/kafka/server.properties တွင် ကိုးကားသင့်သည်။
Streaming API ကိုအသုံးပြုခြင်း။
အထွေထွေ
streaming API သည် စမ်းသပ်မှုနှင့် စောင့်ကြည့်ဒေတာ နှစ်ခုလုံးကို ရယူသည်။ ဤအမျိုးအစားများထဲမှ တစ်ခုကို ခွဲထုတ်ရန် မဖြစ်နိုင်ပါ။
streaming API သည် script-based tests ( Control Center GUI တွင် jigsaw အပိုင်းအစားအစား စတုဂံတစ်ခုဖြင့် ကိုယ်စားပြုသော) Ethernet service activation tests နှင့် transparency tests ကဲ့သို့သော ဒေတာကို ရယူမည်မဟုတ်ပါ။
Kafka ခေါင်းစဉ်အမည်များ
streaming API အတွက် Kafka ခေါင်းစဉ်အမည်များသည် အောက်ပါအတိုင်းဖြစ်ပြီး %s သည် Control ၏အတိုကောက်အမည်ဖြစ်သည်
အလယ်အကောင့် (အကောင့်ကိုဖန်တီးသောအခါတွင်ဖော်ပြထားသည်-
const (exporterName = “kafka”metadataTopicTpl = “paa.public.accounts.%s.metadata” metricsTopicTpl = “paa.public.accounts.%s.metrics”)
ExampStreaming API ကိုအသုံးပြုခြင်း၏အချက်များ
ရည်းစားဟောင်းampလိုက်နာသော les ကို tarball paa-streaming-api-client-ex တွင် တွေ့နိုင်သည်။ampControl Center tarball အတွင်းပါရှိသော les.tar.gz။
ပထမတစ်ခုက အခြေခံ ex ပါ။ampမက်ထရစ်များနှင့် ၎င်းတို့၏ မက်တာဒေတာကို သီးခြားစီလွှင့်ပုံကို သရုပ်ပြပြီး လက်ခံရရှိသောစာများကို ကွန်ဆိုးလ်သို့ ရိုးရိုးရှင်းရှင်း ပရင့်ထုတ်ပါ။ အောက်ပါအတိုင်း သင်လုပ်ဆောင်နိုင်သည်- sudo ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME
ပိုအဆင့်မြင့်တဲ့ ex လည်း ရှိသေးတယ်။ampမက်ထရစ်များနှင့် မက်တာဒေတာမက်ဆေ့ချ်များ ဆက်စပ်နေသည့်နေရာ။ ၎င်းကို run ရန် ဤ command ကိုသုံးပါ။
sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME အထက်ဖော်ပြပါ Docker command များကဲ့သို့ sudo ကိုအသုံးပြုရန် လိုအပ်ပါသည်။ စိတ်ကြိုက်ရွေးချယ်နိုင်ပြီး၊ သင်သည် sudo မပါဘဲ Docker ညွှန်ကြားချက်များကို လုပ်ဆောင်နိုင်စေရန် Linux အပြီးထည့်သွင်းခြင်းအဆင့်များကို လိုက်နာနိုင်ပါသည်။
အသေးစိတ်အတွက်၊ သို့သွားပါ။ docs.docker.com/engine/install/linux-postinstall.
Juniper Networks၊ Juniper Networks လိုဂို၊ Juniper နှင့် Junos တို့သည် United States နှင့် အခြားသောနိုင်ငံများရှိ Juniper Networks, Inc. ၏ မှတ်ပုံတင်ထားသော ကုန်အမှတ်တံဆိပ်များဖြစ်သည်။ အခြားကုန်အမှတ်တံဆိပ်များ၊ ဝန်ဆောင်မှုအမှတ်အသားများ၊ မှတ်ပုံတင်ထားသော အမှတ်အသားများ သို့မဟုတ် မှတ်ပုံတင်ထားသော ဝန်ဆောင်မှုအမှတ်အသားများအားလုံးသည် သက်ဆိုင်ရာပိုင်ရှင်များ၏ ပိုင်ဆိုင်မှုဖြစ်သည်။ Juniper Networks သည် ဤစာတမ်းပါ မှားယွင်းမှုများအတွက် တာဝန်မရှိဟု ယူဆပါသည်။ Juniper Networks သည် ဤထုတ်ဝေမှုကို အသိပေးခြင်းမရှိဘဲ ပြောင်းလဲခြင်း၊ ပြင်ဆင်ခြင်း၊ လွှဲပြောင်းခြင်း၊ သို့မဟုတ် အခြားနည်းဖြင့် ပြန်လည်ပြင်ဆင်ပိုင်ခွင့်ရှိသည်။ မူပိုင်ခွင့် © 2022 Juniper Networks, Inc. ရပိုင်ခွင့်အားလုံး လက်ဝယ်ရှိသည်။

စာရွက်စာတမ်းများ / အရင်းအမြစ်များ
![]() |
Juniper Streaming API [pdf] အသုံးပြုသူလမ်းညွှန် Streaming API၊ API |




