ဖြန့်ချိမှု ပြဿနာများ ဖြေရှင်းခြင်း
ဤအခန်းတွင် Iroha 3 deployments များအတွက်ပြဿနာဖြေရှင်းရေး အကြံပြုချက်များကိုပေးထားပါသည်။ သင်တွေ့နေရတဲ့ ပြဿနာကို ဒီမှာဖော်ပြမထားပါက Telegram မှ ဆက်သွယ်ပါ။
ဖန်တီးထားတဲ့ လက်ရာတွေနဲ့ စတင်ပါ။
ဒေသတွင်း (သို့) စမ်းသပ်မှု ဖြန့်ချိချက်များအတွက် Kagami မှထုတ်လုပ်ထားသော အနုပညာပစ္စည်းများကို လက်နဲ့ရေးသားထားသည့် တူညီတဲ့ ဖိုင်တွေအစား ဦးစားပေးပါ။
cargo run --bin kagami -- localnet --build-line iroha3 --peers 4 --out-dir ./localnetGenerated directory မှာ peer configs, genesis material, start script တွေနဲ့ README build line အတွက် Iroha 3 ကို ထည့်သွင်းထားတယ်။
Peer က မစဘူး။
ဒီပစ္စည်းတွေကို အရင်စစ်ကြည့်ပါ။
irohad --config <path>အချက်အလက်များကို တူညီသူ၏ TOML ဖိုင်တွင် ထည့်သွင်းထားပါသည်။public_keyနဲ့private_keyတို့ဟာ တူညီတဲ့ သော့စုံကို ပိုင်ဆိုင်ပါတယ်။genesis.public_keyက genesis transaction ကို လက်မှတ်ရေးထိုးဖို့ အသုံးပြုခဲ့တဲ့ သော့နဲ့ ကိုက်ညီပါတယ်။- validator peer identities use BLS-Normal keys, and
trusted_peers_popcontains proof of possession entries for the local key and trusted peers (ထည့်သွင်းရန်လိုအပ်သော) - Torii နှင့် P2P အတွက်ဆိပ်ကမ်းများကို အခြားလုပ်ငန်းစဉ်တစ်ခုဖြင့် ချည်နှောင်ထားခြင်း မရှိပါ။
- Kura store directory ဟာ တူညီတဲ့ ကွင်းဆက်ထဲ ပါဝင်ပြီး အခြားကွန်ရက် ပရိုဖိုင်တစ်ခုကနေ ကူးယူထားတာ မဟုတ်ဘူး။
Daemon က TOML အလွှာတစ်ခုထက်ပိုပြီးဖတ်တဲ့အခါ config tracing ကိုသုံးပါ။
cargo run --bin irohad -- --config ./config.toml --trace-configDocker နှင့် Composite
Generate Current Kagami localnet output မှပေါင်းစပ်ပါ command line arguments နှင့် config files များသည် check-out code ကိုက်ညီစေရန်:
cargo run --bin kagami -- localnet --build-line iroha3 --peers 4 --out-dir ./localnet
cargo run --bin kagami -- docker --peers 4 --config-dir ./localnet --image hyperledger/iroha:dev --out-file ./localnet/docker-compose.yml --force
docker compose -f ./localnet/docker-compose.yml upcompose deployment ကိုစတင်ပြီးနောက် stalks လုပ်ရင် daemon log တွေကို စစ်ဆေးပါ
- မှားယွင်းသော
chain - Genesis Transaction သို့မဟုတ် Manifest တစ်ခုကို အသုံးပြုတဲ့ peer
- ကြော်ငြာပြုလုပ်ထားသော P2P လိပ်စာများမှာ ကွန်ပျူတာ ကွန်ရက်အတွင်းတွင်သာ အလုပ်ဖြစ်ပါသည်။
- ဒေသတွင်းပမာဏ ပြန်လည်သုံးစွဲခြင်း Genesis ပြန်လည်ပြုပြင်ပြီးနောက်
ဗီဇသစ်ကို စစ်ဆေးတဲ့အခါ stack ကို ပြန်စတင်မလုပ်ခင် Kura အရွယ်အစားဟောင်းတွေကို ဖယ်ရှားပါ။ ဗီဇအသစ်နဲ့ ဘလော့ကစ်ဟောင်းတွေ သိုလှောင်ထားခြင်းက playback ကျရှုံးစေပါလိမ့်မယ်။
Kubernetes
Kubernetes အတွက် validator တစ်ခုစီကို stateful အခြေခံအဆောက်အအုံတစ်ခုအဖြစ် ဆက်ဆံပါ။
- တူညီမှုရှိသူတိုင်းအတွက် တည်ငြိမ်တဲ့ ကိုယ်ပိုင်လက္ခဏာ သော့နဲ့ တည်ငြိမ်နေတဲ့ ပမာဏကို ပေးပါ။
- P2P လိပ်စာများကို အခြားအဖော်များက အုပ်စုအတွင်းမှ ဖြေရှင်းနိုင်သော လိပ်စာများအား ဖော်ပြပါ။
- configuration နှင့် genesis files များကို roll-out အတွက်မပြောင်းလဲနိုင်သော config အဖြစ်တပ်ဆင်ပါ။
- ဗီဇ (သို့) ထိပ်ပိုင်းဆိုင်ရာ အပြောင်းအလဲအားလုံးကို အလိုအလျောက် ပြုပြင်ခြင်းမဟုတ်ဘဲ ရည်ရွယ်ချက်ရှိပြီး ဖြန့်ချိပေးပါ။
Pod တစ်ခုကို အကြိမ်ကြိမ် ပြန်လည်စတင်ပါက၊ pod ထဲရှိ rendered config ကို မျှော်မှန်းထားသော peer.template.toml နဲ့ နှိုင်းယှဉ်ပြီး peer က Kura ဒေတာဟောင်းတွေကို ပြန်လည်ကစားနေလား စစ်ဆေးပါ။
Sora ၏ ပရိုဖိုင်
Iroha 3 deployments များမှာ Nexus၊ SoraFS သို့မဟုတ် multi-lane flows တွေကို အသုံးပြုရင် Sora profile ကို activated လုပ်ထားပြီး daemon ကို start လုပ်သင့်ပါတယ်။
cargo run --bin irohad -- --config ./config.toml --soraကွန်ရက်တစ်ခုတည်းရှိ validator များအကြားမှာ တူညီသော profile ကို တစ်ချိန်လုံးအသုံးပြုပါ။