উবুন্টুতে HBase ইনস্টলেশন

এই টিউটোরিয়ালে- আপনি শিখবেন,

Apache HBase ইনস্টলেশন মোড

Apache HBase তিনটি মোডে ইনস্টল করা যায়। এই মোডগুলির বৈশিষ্ট্যগুলি নীচে উল্লেখ করা হয়েছে।

1) স্বতন্ত্র মোড ইনস্টলেশন (হ্যাডুপ সিস্টেমে কোন নির্ভরতা নেই)

  • এটি HBase এর ডিফল্ট মোড
  • এটি স্থানীয় ফাইল সিস্টেমের বিরুদ্ধে চলে
  • এটি Hadoop HDFS ব্যবহার করে না
  • শুধুমাত্র HMaster ডেমন চালাতে পারে
  • উত্পাদন পরিবেশের জন্য সুপারিশ করা হয় না
  • একক JVM এ চলে

2) ছদ্ম-বিতরণ মোড ইনস্টলেশন (একক নোড Hadoop সিস্টেম + HBase ইনস্টলেশন)

  • এটি Hadoop HDFS এ চলে
  • সমস্ত ডেমন একক নোডে চলে
  • উত্পাদন পরিবেশের জন্য সুপারিশ

3) সম্পূর্ণ বিতরণ মোড ইনস্টলেশন (MultinodeHadoop পরিবেশ + HBase ইনস্টলেশন)

  • এটি Hadoop HDFS এ চলে
  • সমস্ত ডেমন ক্লাস্টারে উপস্থিত সমস্ত নোড জুড়ে চলবে
  • উত্পাদন পরিবেশের জন্য অত্যন্ত প্রস্তাবিত

হ্যাডুপ ইনস্টলেশনের জন্য এই URL টি পড়ুন এখানে

কিভাবে Hbase tar ফাইল স্থিতিশীল সংস্করণ ডাউনলোড করবেন

ধাপ 1) লিংকে যান এখানে HBase ডাউনলোড করতে। এটি নিচের চিত্রের মত একটি ওয়েবপেজ খুলবে।

ধাপ ২) 1.1.2 সংস্করণের নীচে দেখানো হিসাবে স্থিতিশীল সংস্করণ নির্বাচন করুন

ধাপ 3) Hbase-1.1.2-bin.tar.gz এ ক্লিক করুন। এটি tar ফাইলটি ডাউনলোড করবে। টার ফাইলটি একটি ইনস্টলেশন অবস্থানে অনুলিপি করুন।

Hbase - স্বতন্ত্র মোড ইনস্টলেশন:

ইতোমধ্যে ইনস্টল করা হ্যাডুপের সাথে উবুন্টুতে ইনস্টলেশন করা হয়।

ধাপ 1) Hbase-1.1.2-bin.tar.gz /home /hduser এ রাখুন

ধাপ ২) $ Tar -xvf hbase-1.1.2-bin.tar.gz কমান্ড কার্যকর করে এটি আনজিপ করুন এটি বিষয়বস্তু আনজিপ করবে, এবং এটি অবস্থান /হোম /hduser এ hbase-1.1.2 তৈরি করবে

ধাপ 3) নীচের হিসাবে hbase-env.sh খুলুন এবং অবস্থানে JAVA_HOME পথ উল্লেখ করুন।

ধাপ 4) Open/.bashrc ফাইলটি খুলুন এবং নীচে দেখানো হিসাবে HBASE_HOME পাথ উল্লেখ করুন

HBASE_HOME =/home/hduser/hbase-1.1.1 রপ্তানি PATH = $ PATH: $ HBASE_HOME/bin

ধাপ 5) Hbase-site.xml খুলুন এবং ফাইলের ভিতরে নিম্নলিখিত বৈশিষ্ট্যগুলি রাখুন

hduser@উবুন্টু $ gedit hbase-site.xml (নীচের মত কোড) | _+_ |

এখানে আমরা দুটি বৈশিষ্ট্য স্থাপন করছি

  • HBase রুট ডিরেক্টরি জন্য এবং
  • ডেটা ডাইরেক্টরির জন্য দ্বিতীয়টি ZooKeeper- এর সাথে সামঞ্জস্যপূর্ণ।

সমস্ত HMaster এবং ZooKeeper কার্যক্রম এই hbase-site.xml কে নির্দেশ করে।

ধাপ 6) /ইত্যাদি উপস্থিত হোস্ট ফাইল খুলুন। অবস্থান এবং নীচে দেখানো হিসাবে আইপি উল্লেখ করুন।

ধাপ 7) এখন নীচে দেখানো হিসাবে hbase-1.1.1/bin অবস্থানে Start-hbase.sh চালান।

এবং আমরা jps কমান্ড দিয়ে চেক করতে পারি HMaster চলছে কি না।

ধাপ 8) HBase শেল 'hbase shell' ব্যবহার করে শুরু করতে পারে এবং এটি নিচের স্ক্রিনশটে দেখানো ইন্টারেক্টিভ শেল মোডে প্রবেশ করবে। একবার এটি শেল মোডে প্রবেশ করলে, আমরা সব ধরণের কমান্ড সম্পাদন করতে পারি।

স্বতন্ত্র মোড শুরু করার জন্য Hadoop ডেমন প্রয়োজন হয় না। HBase স্বাধীনভাবে চালাতে পারে।

Hbase - ইনস্টলেশনের ছদ্ম বিতরণ মোড:

এটি Apache Hbase ইনস্টলেশনের আরেকটি পদ্ধতি, যা Pseudo Distributed mode of Installation নামে পরিচিত। এই পদ্ধতির মাধ্যমে HBase ইনস্টল করার ধাপ নিচে দেওয়া হল।

ধাপ 1) Hbase-1.1.2-bin.tar.gz /home /hduser এ রাখুন

ধাপ ২) $ Tar -xvf hbase-1.1.2-bin.tar.gz কমান্ড কার্যকর করে এটি আনজিপ করুন এটি বিষয়বস্তু আনজিপ করবে, এবং এটি অবস্থান /হোম /hduser এ hbase-1.1.2 তৈরি করবে

ধাপ 3) নিচের মত hbase-env.sh খুলুন এবং JAVA_HOME পাথ এবং রিজিয়ন সার্ভারের পথ উল্লেখ করুন এবং দেখানো কমান্ডটি এক্সপোর্ট করুন

ধাপ 4) এই ধাপে, আমরা open/.bashrc ফাইলটি খুলতে যাচ্ছি এবং স্ক্রিন-শটে দেখানো HBASE_HOME পথ উল্লেখ করব।

ধাপ 5) HBase-site.xml খুলুন এবং ফাইলে নীচের বৈশিষ্ট্যগুলি উল্লেখ করুন। (নীচের কোড)

 hbase.rootdir file:///home/hduser/HBASE/hbase hbase.zookeeper.property.dataDir /home/hduser/HBASE/zookeeper 

  1. এই সম্পত্তিতে Hbase রুট ডিরেক্টরি সেট আপ করা হচ্ছে
  2. বিতরণ করা সেটআপের জন্য আমাদের এই সম্পত্তি সেট করতে হবে
  3. ZooKeeper কোরাম সম্পত্তি এখানে স্থাপন করা উচিত
  4. এই সম্পত্তিতে প্রতিলিপি সেট আপ করা হয়েছে। ডিফল্টরূপে আমরা প্রতিলিপি 1 হিসাবে রাখছি।

    সম্পূর্ণ বিতরণ মোডে, একাধিক ডেটা নোড উপস্থিত থাকে যাতে আমরা dfs.replication প্রপার্টিতে 1 টির বেশি মান রেখে প্রতিলিপি বৃদ্ধি করতে পারি

  5. এই সম্পত্তিতে ক্লায়েন্ট পোর্ট উল্লেখ করা উচিত
  6. ZooKeeper ডেটা ডিরেক্টরি এই সম্পত্তি উল্লেখ করা যেতে পারে

ধাপ 6) প্রথমে হডুপ ডেমন শুরু করুন এবং তারপরে নীচে দেখানো হিসাবে এইচবেস ডেমন শুরু করুন

এখানে প্রথমে আপনাকে Hadoop ডেমন ব্যবহার করে শুরু করতে হবে './start-all.sh' কমান্ডটি নীচে দেখানো হয়েছে।

Hbase-start.sh দ্বারা Hbase ডেমন শুরু করার পর

এখন jps চেক করুন

Hbase - সম্পূর্ণ বিতরণ মোড ইনস্টলেশন: -

  • এই সেটআপটি হডুপ ক্লাস্টার মোডে কাজ করবে যেখানে ক্লাস্টার জুড়ে একাধিক নোড জন্মে এবং চলমান থাকে।
  • ইনস্টলেশন ছদ্ম বিতরণ মোড হিসাবে একই; একমাত্র পার্থক্য হল এটি একাধিক নোড জুড়ে জন্মাবে।
  • HBase-site.xml এবং hbase-env.sh এ উল্লিখিত কনফিগারেশন ফাইলগুলি সিউডো মোডে উল্লিখিত।

HBase ইনস্টলেশন সমস্যা সমাধান

1) সমস্যা বিবৃতি: মাস্টার সার্ভার আরম্ভ হয় কিন্তু অঞ্চল সার্ভার আরম্ভ হয় না

মাস্টার এবং অঞ্চল সার্ভারের মধ্যে তাদের আইপি ঠিকানার মাধ্যমে যোগাযোগ। যেভাবে মাস্টার শুনতে চলেছেন যে অঞ্চলের সার্ভারগুলি 127.0.0.1 এর আইপি ঠিকানা চালাচ্ছে বা হচ্ছে। IP ঠিকানা 127.0.0.1 যা স্থানীয় হোস্ট এবং মাস্টার সার্ভারের নিজস্ব স্থানীয় হোস্টের সমাধান করে।

কারণ:

অঞ্চল সার্ভার এবং মাস্টারের মধ্যে দ্বৈত যোগাযোগের ক্ষেত্রে, অঞ্চল সার্ভার ক্রমাগত মাস্টার সার্ভারকে তাদের আইপি ঠিকানা 127.0.0.1 সম্পর্কে অবহিত করে।

সমাধান:

  • হোস্ট ফাইলে উপস্থিত স্থানীয় হোস্ট থেকে মাস্টার সার্ভারের নাম নোড অপসারণ করতে হবে
  • হোস্ট ফাইলের অবস্থান /etc /hosts

কি পরিবর্তন করতে হবে:

/Etc./hosts খুলুন এবং এই স্থানে যান | _+_ |

নীচের মত উপরের কনফিগারেশন পরিবর্তন করুন (উপরে হাইলাইট করা অঞ্চলের সার্ভারের নাম সরান) | _+_ |

2) সমস্যা বিবৃতি: আমার ঠিকানা খুঁজে পাওয়া যায়নি: XYZ Zookeeper কোরাম সার্ভারের তালিকায়

কারণ:

  • ZooKeeper সার্ভারটি চালু করতে সক্ষম হয়নি, এবং এটি সার্ভারের নামে .xyz এর মত একটি ত্রুটি ছুঁড়ে দেবে।
  • HBase কিছু মেশিনে একটি ZooKeeper সার্ভার চালু করার চেষ্টা করে কিন্তু একই সময়ে মেশিনটি কোরাম কনফিগারেশন খুঁজে পেতে সক্ষম হয় না। HBase.zookeeper.quorum কনফিগারেশন ফাইল.

সমাধান:-

  • ত্রুটি বার্তায় উপস্থাপিত হোস্টনাম দিয়ে হোস্টের নাম প্রতিস্থাপন করতে হবে
  • ধরুন আমাদের DNS সার্ভার আছে তাহলে আমরা HBase-site.xml এ নিচের কনফিগারেশন সেট করতে পারি।
    • HBase.zookeeper.dns.interface
    • HBase.zookeeper.dns.nameserver

3) সমস্যা বিবৃতি: Hadoop DFS এর মাধ্যমে HBase এর জন্য রুট ডিরেক্টরি তৈরি করা হয়েছে

  • মাস্টার বলেছেন যে আপনাকে HBase মাইগ্রেশন স্ক্রিপ্ট চালাতে হবে।
  • এটা চালানোর পর , HBase মাইগ্রেশন স্ক্রিপ্ট রুট ডিরেক্টরিতে কোন ফাইলের মত সাড়া দেয় না

কারণ:

  • হ্যাডুপ ডিস্ট্রিবিউটেড ফাইল সিস্টেম ব্যবহার করে HBase এর জন্য নতুন ডিরেক্টরি তৈরি করা
  • এখানে HBase দুটি সম্ভাবনা আশা করে

1) রুট ডিরেক্টরি নেই

2) HBase পূর্ববর্তী চলমান উদাহরণ আগে আরম্ভ

সমাধান:

  • HBase রুট ডাইরেক্টরিটি বর্তমানে বিদ্যমান নেই বা HBase ইন্সট্যান্সের পূর্ববর্তী রান দ্বারা আরম্ভ করা হয়েছে।
  • সমাধানের অংশ হিসাবে, আমাদের পদক্ষেপগুলি অনুসরণ করতে হবে

ধাপ 1) HBase রুট ডিরেক্টরি মুছে ফেলার জন্য Hadoop dfs ব্যবহার করে

ধাপ ২) HBase নিজেই ডিরেক্টরি তৈরি করে এবং আরম্ভ করে

4) সমস্যা বিবৃতি: জুকিপার সেশনের মেয়াদ শেষ হওয়া ইভেন্টগুলি

কারণ:

  • HMaster বা HRegion সার্ভারগুলি ব্যতিক্রম নিক্ষেপ করে বন্ধ হয়ে যাচ্ছে
  • যদি আমরা লগগুলি পর্যবেক্ষণ করি, আমরা নিক্ষিপ্ত প্রকৃত ব্যতিক্রমগুলি খুঁজে পেতে পারি

Zookeeper মেয়াদোত্তীর্ণ ইভেন্টের কারণে নিচের ব্যতিক্রমটি নিক্ষেপ করা হয়েছে। লগ ফাইলে ঘটে যাওয়া কিছু ব্যতিক্রম হাইলাইট করা ঘটনা

নীচের প্রদর্শন হিসাবে লগ ফাইল কোড: | _+_ |

সমাধান:

  • ডিফল্ট র‍্যাম সাইজ হল ১ জিবি। দীর্ঘ সময় ধরে আমদানি করার জন্য, আমরা 1 গিগাবাইটের বেশি র capacity্যাম ধারণক্ষমতা বজায় রেখেছি।
  • জুকিপারের জন্য সেশনের সময়সীমা বাড়াতে হবে।
  • Zookeeper এর বাইরে সেশন সময় বাড়ানোর জন্য, আমাদের 'hbase-site.xml' এ নিম্নলিখিত সম্পত্তি পরিবর্তন করতে হবে যা hbase /conf ফোল্ডার পাথে উপস্থিত।
  • ডিফল্ট সেশনের সময়সীমা 60 সেকেন্ড। আমরা নীচে উল্লিখিত হিসাবে এটি 120 সেকেন্ডে পরিবর্তন করতে পারি
 hbase.rootdir hdfs://localhost:9000/hbase hbase.cluster.distributed true hbase.zookeeper.quorum localhost dfs.replication 1 hbase.zookeeper.property.clientPort 2181 hbase.zookeeper.property.dataDir /home/hduser/hbase/zookeeper