টিউনিং এনএফএস ক্লায়েন্ট / সার্ভার স্ট্যাক


10

আমার কাছে একটি সেন্টোস 5 ভিএমওয়্যার সার্ভার রয়েছে যাতে একটি ওপেনসোলারিস 2009.06 মেশিনে এনএফএসের সাথে সংযোগ রয়েছে যা ডিস্কের চিত্রগুলি ধারণ করে। আমার ভার্চুয়াল মেশিনগুলি ধীর আইও দ্বারা আবদ্ধ বলে মনে হচ্ছে তাই সংযোগটি অনুকূলকরণের জন্য আমি যতটা করতে পারি তার সবকটি করতে চাই।

আমি কোনও প্রোডাকশন সিস্টেমে dd bs=1024k count=400থ্রুপুটটি পরিমাপ করার সর্বোত্তম উপায় সম্পর্কে নিশ্চিত নই, তবে শো স্থানীয় (ওপেনসোলারিস) ব্যবহার করে কিছু অবৈজ্ঞানিক পরীক্ষাগুলি ~ 1.6 গিগাবাইট / এস এবং রিমোট (সেন্টোস) লিখেছেন ~ 50MB / s writes আমি কল্পনা করি যে বর্তমানে 7 টি ভিএম সংযোগটি চালিয়ে যাওয়ায় এটি আমি আসলে যা দিচ্ছি তার চেয়ে কম।

বর্তমানে, দুটি মেশিন উভয় এনআইসিতে (এমটিইউ = 9000) সক্ষম হওয়া জাম্বো ফ্রেমের সাথে সরাসরি সংযুক্ত জিগই রয়েছে। তা ছাড়া আর কোনও অপ্টিমাইজেশন করা হয়নি। এনএফএস মাউন্ট / এক্সপোর্ট ডিফল্ট ব্যবহার করছে।

পারফরম্যান্সের উন্নতি করার জন্য আমার কোথায় নক করা শুরু করা উচিত?


থ্রুপুট খুব বেশি গুরুত্ব পাবে না। ওপেনসোলারিস চালিত সিস্টেমে অন্তর্নিহিত হার্ডওয়্যার স্পেসিফিকেশনটি কী? আপনার কতগুলি ডিস্ক / স্পিন্ডল রয়েছে? র‌্যাম কত?
ইয়েওয়াইট

12 ডিস্ক 4 কলা র‌্যাম সহ একটি নিয়ামকটিতে 2 টি রাইডজ 1 পুল জুড়ে ছড়িয়ে পড়ে। যদি থ্রুটপুট কোনও ব্যাপার না, আমার কোন মেট্রিকটির দিকে নজর দেওয়া উচিত?
সিসাদমিনিকাস

বিড়াল / প্রকল্প / মাউন্টগুলি কি করে? গ্রেপ solaris_server লিনাক্স ক্লায়েন্ট উপর বলুন? লিনাক্সের বিভিন্ন সংস্করণের আলাদা আলাদা ডিফল্ট মাউন্ট বিকল্প রয়েছে :(
জেমস

10.10.1.1:/tank/vm / vm nfs rw, vers = 3, rsize = 1048576, wsize = 1048576, শক্ত, প্রোটো = টিসিপি, টাইমো = 600, retrans = 2, সেকেন্ড = sys, অ্যাড্রার = 10.10.1.1 0 0
সিসাদমিনিকাস

সোলারিস 10 এর কয়েকটি সংস্করণ সহ এনএফএস 3 অস্থির ছিল। আপনি যদি এনএফএস 4 এ যেতে পারেন তবে আপনি কিছু উন্নতি দেখতে পাবেন। কিন্তু, হিসাবে অন্যান্য মন্তব্যকারী বলেছেন, 50MB এইজন্য / s জুড়ে একটি gigE লিংক সর্বোচ্চ আপনাকে পাসে করতে দেখতে
ওয়ারেন

উত্তর:


2

কেবল পরিষ্কার করার জন্য, আপনি একক জিবি ইথারনেট সংযোগের মাধ্যমে এনএফএসের সাথে 50 এমবি / সেকেন্ড পাচ্ছেন?

এবং হোস্ট সার্ভারটি ইনস্টল করা ভিএমওয়্যার সার্ভারের সাথে সেন্টোস চলছে, যার ফলে 7 টি ভিএম চলছে? আপনি সেন্টোস এবং ভিএমওয়্যার সার্ভারের সাথে মিলিত হয়ে যাওয়ার কোনও বিশেষ কারণ কি ভিএমওয়্যার ইএসএক্সআইয়ের চেয়ে বেশি করেছেন যা উচ্চতর পারফরম্যান্স সমাধান?

৫০ এমবি / সেকেন্ড দুর্দান্ত নয়, তবে আপনি একক জিবি নেটওয়ার্ক কেবলের চেয়ে যা চেয়েছিলেন তার চেয়ে কম নয় - একবার আপনি এনএফএসের টুইটগুলিতে রাখলে লোকেরা উপরে উল্লেখ করেছেন যে আপনি সম্ভবত 70০- 80MB / সেকেন্ড। লাইন বরাবর বিকল্পগুলি:

"RO, কঠিন, intr, retrans = 2, rsize = 32768, wsize = 32768, nfsvers = 3, TCP"

সিস্টেমের উভয় প্রান্তে সম্ভবত আপনার পক্ষে যুক্তিসঙ্গত।

উপরে উঠতে আপনাকে নেটওয়ার্ক কার্ডগুলিকে জোড় করে দলবদ্ধ করার দিকে নজর দেওয়া দরকার যা আপনার থ্রুপুটটি প্রায় 90% বাড়িয়ে তুলবে। লিঙ্ক একত্রিতকরণের সাথে সেরা পারফরম্যান্স পেতে আপনার এমন একটি স্যুইচ দরকার হতে পারে যা 802.3 এড সমর্থন করে

ওপেনসোলারিস বাক্সে আপনার আইও থ্রুটপুটটি সন্দেহজনকভাবে বেশি বলে মনে হচ্ছে, তবে একটি জিনিস আমি 12 টি ডিস্কের মাধ্যমে 1.6GB / সেকেন্ডের থ্রুটপুট সমর্থন করবে না এবং এটি সোলারিস + জেডএফএস দ্বারা ভারীভাবে ক্যাশেড থাকতে পারে।


আমরা CentOS + VMWare সার্ভার ব্যবহার করছি কারণ এটি নিখরচায়। সর্বশেষে আমি পরীক্ষা করেছিলাম ESXi বেশ দামি ছিল। / প্রোক / মাউন্ট অনুসারে, রাইজাইজ / ডাব্লু সাইজ বর্তমানে 1048576 হয়। কেবল নিশ্চিত করার জন্য আপনি কি মনে করেন এগুলিকে 32 কে কমিয়ে দেওয়া গতি বাড়াতে সহায়তা করবে? আমি লিঙ্ক একত্রিতকরণ চেক আউট করব। আমি কি সংযোগের উভয় প্রান্তে বা কেবল একটিতে এটি করব? আমি মনে করি আপনি আইও ক্যাশে যাচ্ছেন সম্পর্কে ঠিক বলেছেন। আমার বাবার 512MB এর উপরে বাম্পিং হস্তান্তর হারকে উল্লেখযোগ্যভাবে হ্রাস করে (50-120MB / s এর মধ্যে)।
সিসাদমিনিকাস

আমার আর ইউআই-তে এই প্রশ্নের উত্তর গ্রহণ করার ক্ষমতা নেই, তবে লিঙ্ক একীকরণ আমার সেরা বাজি হতে চলেছে বলে মনে হচ্ছে আমি এটিকে অগ্রাহ্য করেছি।
সিসাদমিনিকাস

বিলম্বিত জবাবের জন্য দুঃখিত, ESXi এখন তার মূল ফর্মটিতে বিনামূল্যে, এবং আপনাকে একটি পারফরম্যান্স বাড়িয়ে দেবে, তবে এটির সীমিত কার্যকারিতা রয়েছে তাই আপনার পক্ষে সঠিক নাও হতে পারে। অনেক উন্নতি দেখতে আপনার নেটওয়ার্ক লিঙ্কের উভয় প্রান্তে লিঙ্ক একীকরণ করতে হবে। আশা করি এটি আপনার পক্ষে কাজ করে
ইয়ান লেথ

1

আমাদের আরএইচইএল / সেন্টোস 5 মেশিনের জন্য আমরা নিম্নলিখিত মাউন্ট ফ্ল্যাগগুলি ব্যবহার করি

nfsvers = 3, TCP, timeo = 600, retrans = 2, rsize = 32768, wsize = 32768, কঠিন, intr, noatime

নতুন লিনাক্স কার্নেল সংস্করণটি আরও বৃহত্তর রাইজাইজ / ডাব্লু সাইজ প্যারামিটার সমর্থন করে তবে EL5 এর ২.6.১৮ কার্নেলের জন্য 32k সর্বাধিক।

এনএফএস সার্ভারে, লিনাক্সের জন্য কমপক্ষে no_wdelay সম্ভবত বিবিডব্লিউসি-র সাথে একটি ডিস্ক নিয়ন্ত্রক থাকলে অনুমিত হয়। এছাড়াও, আপনি যদি ক্লায়েন্টগুলিতে নোয়াটাইম পতাকা ব্যবহার করেন তবে সম্ভবত সার্ভারে নোটিম দিয়ে ফাইল সিস্টেমগুলি মাউন্ট করার জন্য এটি বোধগম্য হবে।

এবং যেমনটি ইতিমধ্যে উল্লিখিত ছিল, ইউডিপি নিয়ে বিরক্ত করবেন না। উচ্চ গতির নেটওয়ার্কগুলির সাথে (1GbE +) একটি ছোট, তবে শূন্য নয়, সিকোয়েন্স নম্বর মোড়ানোর সুযোগ ডেটা দুর্নীতি সৃষ্টি করে। এছাড়াও, প্যাকেট নষ্ট হওয়ার সম্ভাবনা থাকলে, টিডিপি ইউডিপির চেয়ে আরও ভাল পারফর্ম করবে।

আপনি যদি এতটুকু ডেটা অখণ্ডতা নিয়ে চিন্তিত না হন তবে "async" রফতানি বিকল্পটি একটি বড় কার্যকারিতা উন্নতি হতে পারে (অ্যাসিঙ্কের সমস্যাটি হ'ল সার্ভার ক্র্যাশ হলে আপনার ডেটা হারাতে পারে)।

এছাড়াও, কমপক্ষে লিনাক্স সার্ভারের জন্য আপনার পর্যাপ্ত এনএফএস সার্ভার থ্রেড চলছে কিনা তা নিশ্চিত হওয়া দরকার। ডিফল্ট 8 কেবল উপায় খুব কম।


1

আমি একবার একটি ডেল r710, 1 সিপিইউ, 4 জিবি র‌্যাম, 6 এসএডি-ডিস্ক সহ RAID-10 দিয়ে একটি পরীক্ষা করেছি। ক্লায়েন্টটি সূর্য x2100 ছিল, উভয় সেন্টোস 5.3 এবং উপরে উল্লিখিত মত এনএফএস প্যারামগুলি সহ

"RO, কঠিন, intr, retrans = 2, rsize = 32768, wsize = 32768, nfsvers = 3, TCP"

উভয় পক্ষের noatime সঙ্গে মাউন্ট করা।

আমি 256 থেকে এনএফএসএসডি পর্যন্ত বাম্পও করেছি এবং পেরসি 6 রাইড কন্ট্রোলারের জন্য নূপ শিডিয়ুলার ব্যবহার করেছি। আর একটি জিনিস যা আমি করলাম তা হ'ল রাইড কন্ট্রোলারের 64 কে স্ট্রিপ আকারে পার্টিশনগুলি সারিবদ্ধ করা।

তারপরে আমি ডিডি দিয়ে এনএফএসের পারফরম্যান্সটি পরিমাপ করেছি - পড়ার জন্য আমি গিগ পাইপটি পূরণ করতে পারি তবে লেখকদের জন্য আমি কেবল আপনার মতো কিছুটা ভাল ফলাফল পেতে পারি। অ্যাসিঙ্ক সক্ষম হয়ে আমি 70 থেকে 80 এমবি / সেকেন্ড পেতে পারি তবে অ্যাসিঙ্ক আমার পক্ষে কোনও বিকল্প ছিল না।

সম্ভবত আপনি একটি জিগই লিঙ্ক থেকে এনএফএসের সাথে আরও কিছু পেতে পারেন না?


1

এটি চেষ্টা করুন: নিম্নলিখিত দুটি পদক্ষেপের সাহায্যে ওপেনসোলারিস এনএফএস সার্ভারে সাময়িকভাবে জেডএফএস ইনটেন্ট লগ (জেডআইএল) অক্ষম করুন

  1. echo zil_disable/W0t1 | mdb -kw
  2. পরীক্ষার পার্টিশনটি পুনরায় মাউন্ট করুন

তারপরে আবার পরীক্ষা করুন। আপনি জিলস্ট্যাট ব্যবহার করতে পারেন তা নিশ্চিত করার জন্য যে জিলের আর কোনও আইও নেই। যদি পরীক্ষাটি দ্রুত সঞ্চালিত হয় তবে আপনি জানেন যে পারফরম্যান্সের সমস্যাটির সাথে জিআইএল-এর কিছু সম্পর্ক রয়েছে। যদি এটি এখনও ধীরে ধীরে চলতে থাকে তবে আপনি জানেন যে জেডআইএল অপরাধী নয় এবং জিলের জন্য এসএসডি ব্যবহার করলে কোনও লাভ হবে না। জেডআইএল সম্পর্কিত আরও তথ্যের জন্য জেডএফএস এভিল টিউনিং গাইড দেখুন See

অন্য বিকল্পটি হ'ল নেটওয়ার্ক ট্র্যাফিক (যেমন ওয়্যারশার্ক সহ) ক্যাপচার করা এবং দেখুন কোনও সমস্যা আছে কিনা তা দেখতে যেমন জাম্বো ফ্রেমগুলির সাথে। আপনার কনফিগারেশন থেকে তারের প্যাকেটগুলির প্রত্যাশার মতো দেখতে যাচাই করুন। কোনও খারাপ খণ্ড খণ্ডন চলছে? Retransmits আছে?


0

পঠন মাপের পড়া এবং লেখার উত্থাপন সাহায্য করতে পারে। বিশেষত জাম্বো ফ্রেমের সাথে একযোগে।

আমি 32k সর্বাধিক হতে খুঁজে পেতে ঝোঁক।

rsize=32768,wsize=32768

ইউডিপি ট্রান্সপোর্টে স্যুইচিং অবশ্যই টিসিপি এর পরে দ্রুত, কারণ এটি সংক্রমণ নিয়ন্ত্রণের ওভারহেড সংরক্ষণ করে sa তবে এটি কেবল নির্ভরযোগ্য নেটওয়ার্কগুলিতে এবং যেখানে এনএফএসভি 4 ব্যবহৃত হয় না সেখানে প্রযোজ্য।


দেখে মনে হচ্ছে সেন্টোস এনএফএসভি 3 ব্যবহার করে সংযুক্ত হচ্ছে। আমাদের ব্যবহারের ক্ষেত্রে NFSv4 এর কোনও মূল্য আছে? আমি বলতে পারি যে দুটি এনআইসির মধ্যে কেবল একটি ক্রস-ওভার কেবল আছে তবে নেটওয়ার্কটি বেশ নির্ভরযোগ্য।
সিসাদমিনিকাস

2
ইউডিপি মারাত্মক ঝামেলার উপযুক্ত নয়। টিসিপিতে লেগে থাকুন। আপনি V3 সঠিকভাবে কাজ না করা পর্যন্ত আমি এনএফএসভি 4 চেষ্টা করার পরামর্শ দিচ্ছি না।
জেমস

0

জেডএফএসে এনএফএসের কর্মক্ষমতা জেডএফএস অভিপ্রায় লগ (জেডআইএল) এর জন্য এসএসডি ব্যবহার করে ব্যাপকভাবে উন্নত হয় কারণ এটি অপারেশনের বিলম্বকে হ্রাস করে। ওপেনসোলারিস এনএফএস এবং জেডএফএস মেলিং তালিকাগুলিতে জেডএফএসের পারফরম্যান্সের বিষয়ে ভিএমওয়্যার এনএফএস সম্পর্কে এই থ্রেডে আরও তথ্য রয়েছে, জেআইএল পারফরম্যান্স বাধা কিনা তা দেখার জন্য একটি বেঞ্চমার্ক সরঞ্জাম সহ।


0

FYI dd কমান্ডটি ক্যাশে এবং কোনও ডিস্কে লিখবে, আপনি 1.6G / s এর মতো পাগল সংখ্যা পেতে পারেন কারণ আপনি সোলারিসে র‌্যাম লিখছেন এবং ডিস্কে লিখছেন না আপনি ডিস্কে লেখার জন্য "-oflag = sync" ব্যবহার করতে পারেন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.