نمایش نتایج: از شماره 1 تا 10 , از مجموع 12

موضوع: قبل از خرید سرور مجازی بخوانید ! مهم !

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #8
    کاربر اخراج شده
    تاریخ عضویت
    Jul 2011
    نوشته ها
    509
    تشکر تشکر کرده 
    110
    تشکر تشکر شده 
    667
    تشکر شده در
    494 پست

    پیش فرض پاسخ : قبل از خرید سرور مجازی بخوانید ! مهم !

    نقل قول نوشته اصلی توسط irjoker نمایش پست ها
    یکی از اولین کارهایی که می‌کنید وقتیکه سرور افتاد زیر دستتون به جون سخت افزارش بیفتید و ببینید دقیقا چی به چیه
    مثلا با این دستور خیلی راحت سرعت نوشتن اطلاعات روی هارد رو در بیارید.
    [root@novid ~]# dd if=/dev/zero of=/tmp/output bs=8k count=100k; rm -f /tmp/output
    102400+0 records in
    102400+0 records out
    838860800 bytes (839 MB) copied, 0.674417 s, 1.2 GB/sواو یه شاهکاره نمی‌تونید تصور کنید شور و شوقی رو که دارم از اینکه همچین سروری زیر دستمه
    خب حالا ببینم چند تا پردازشگر داره سرور و برای اینکار از دستور زیر کمک می‌گیریم
    [root@novid ~]# cat /proc/cpuinfo | grep processor | wc -l
    16عدد ۱۶ داره می‌گه سرور ۱۶ تا هسته داره قضیه چیه؟ پردازشگر ۱۶ هسته‌ای داریم؟ با دستور زیر اسم و مدل پردازشگر رو در میاریم.
    [root@novid ~]# cat /proc/cpuinfo | grep "model name" | head -n 1
    model name : Intel(R) Xeon(R) CPU E5620 @ 2.40GHzو حالا با یه سرچ کوچولو به این می‌رسیم که پردازشگر E5620 چهار هسته داره که با فناوری خاص اینتل، انگاری ۸ تا هستن (تریت)! بنابراین خیلی فریب ۸ هسته ای بودنش رو نخورید چون واقعا ۴ تا هسته بیشتر نداره. اما فرکانس کاری ۲.۴ گیگاهرتز هست
    حتما باید حدس زده باشید که سرور دو تا پردازشگر داره!‌

    ببینیم لینوکس فرکانس کاری رو چند نشون می‌ده؟
    [root@novid ~]# cat /proc/cpuinfo | grep "cpu MHz" | head -n 5
    cpu MHz : 1600.000
    cpu MHz : 1600.000
    cpu MHz : 1600.000
    cpu MHz : 1600.000
    cpu MHz : 1600.000اینجاست که باید مشکوک شید که نکنه کلاهی گذاشته شده سرتون! چرا فرکانس واقعی در حال کار پردازشگر ۱۶۰۰ مگاهرتزه؟ با فرکانس اسمی ۲۴۰۰ اینقدر اختلاف داره؟ که بعد متوجه می‌شیم آقای اینتل این پردازنده رو مجهز کرده به اسپید استپ که دقیقا کارش اینه که فقط زمانایی که لازمه و فشاری هست فرکانس پردازشگر بره بالا و از این طریق هم توی مصرف انرژی صرفه جویی شده باشه و هم طول عمر پردازشگر بالا بره!
    برای اینکه مطمئن شیم باید یه جوری سیستم رو تحت فشار قرار بدیم!
    [root@novid ~]# fulload() { dd if=/dev/zero of=/dev/null | dd if=/dev/zero of=/dev/null | dd if=/dev/zero of=/dev/null | dd if=/dev/zero of=/dev/null & }; fulload; read; killall ddجالب نیست؟ به صورت موازی و همزمان، میایم تا زمان نامحدودی اطلاعات بیخودی و در وری (صفر) روی هارد می‌نویسیم! بعد توی تب جدید می‌ریم وضعیت فرکانسای پردازشگر رو چک می‌کنیم
    [root@novid ~]# cat /proc/cpuinfo | grep "cpu MHz"
    cpu MHz : 2401.000
    cpu MHz : 2401.000
    cpu MHz : 2401.000
    cpu MHz : 1600.000
    cpu MHz : 1600.000
    cpu MHz : 1600.000
    cpu MHz : 1600.000
    cpu MHz : 2401.000کار بیشتر کشدیدم، هسته‌های بیشتری تحریک شدن و تا حداکثر فرکانس ممکن هم دارن کار می‌کنن راضی هستیم و می‌ریم سراغ بقیه کار!
    یکی از کارایی که بعد راه افتادن امکانات مختلف روی سرور حتما باید هرازگاهی چک کنید، تعداد افراد آنلاین و لحظه‌ای هست! اینکه آدمای مختلف دقیقا با چه آی‌پی‌هایی و چه پورت‌هایی به سرور وصل شدن و دارن از خدمات مختلف مثل ssh و یا دیدن سایت و بقیه امکانات بهره می‌برن و از همه مهمتر، آیا یک آی‌پی به صورت غیر عادی داره از منابع سیستم استفاده می‌کنه؟
    root@novid [~]# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

    11 127.100.100.103
    14 127.0.0.1
    18 127.0.122.98
    39 192.168.1.1همم، به ترتیب از کمترین تا بیشترین استفاده یهو براتون لیست می‌شه‌ یه نفر تونسته تا چهل کانکشن مختلف به سرور بزنه! می‌شه با توجه به قدرت سخت افزار و اینجور مسائل،‌ محدودیت گذاشت تا افراد از یه حدی بیشتر نتونن از منابع استفاده کنن.
    فرض کنید میزبان سایتی هستید و می‌خواید ببینید دقیقا چقدر آدم داره از سایتتون بازدید به عمل می‌یاره!؟
    root@novid [~]# netstat -an | grep :80|wc -l
    83زیباست ۸۳ نفر دارن از پورت ۸۰ استفاده میکنن!
    فکر کنید حقوق و دستمزد ساعتی دارید می‌گیرید؟ خب باید یه طوری نشون بدید که چند ساعت وصل بودید از خونه دیگه؟
    یه راه اینه آمار ساعتایی رو که با ssh وصل شدید به سرور رو در بیارید، تمام موارد مهم مثل لاگین شدن توی سنت او اس در فایلی به اسم secure ثبت می‌شه! پس با دستور زیر سعی میکنیم به هدفمون برسیم!
    [root@novid ~]# cat /var/log/secure | grep Accepted
    Feb 18 2220 novid sshd[10473]: Accepted publickey for root from 127.0.0.1 port 48198 ssh2
    Feb 19 00:31:30 novid sshd[11906]: Accepted publickey for root from 127.0.0.1 port 42468 ssh2
    Feb 19 00:38:21 novid sshd[12408]: Accepted publickey for root from 127.0.0.1 port 43839 ssh2
    Feb 19 0145 novid sshd[14260]: Accepted publickey for root from 127.0.0.1 port 57599 ssh2الان می‌تونید حتی آمار کسایی که بدون اطلاع شما وصل شدن ssh رو هم در بیارید اما هنوز روش خوبی نیست برای اینکه بشه حقوق ساعتی رو به صورت مستند دریافت کرد.
    با کمی جستجو به برنامه psacct می‌رسیم و متوجه می‌شیم یک برنامه شاهکاره!
    [root@novid ~]# ac
    total 71.10جالبناک شد! در مجموع ۷۱ ساعت وصل بودم به سرور که با اضافه کردن d به دستور می‌شه حتی به تفکیک روز آمار رو گرفت!

    - - - Updated - - -



    موقعیتی رو تصور کنید که روی سروری که در اختیار دارید می‌خواید یک سیستم عامل از اول نصب کنید. اما دسترسی به kvm ندارید.اگه روی سرور دسترسی به گراب داشته باشید به راحتی می‌شه بدون داشتن kvm یک سیستم عامل جدید رو نصب کرد.حتی موقع خرید سرور جدید بجای اینکه پول بدید بابت فعال کردن kvm خیلی راحت با سنت‌اواس ۵.۹ میشه سرور ددیکیتد رو تهیه کرد و بعد با روشی که گفته میشه اکثر سیستم عامل‌های جدید رو از اول خودتون نصب کنید برای کسایی هم که نمی‌دونن kvm چیه بگم یه چی تو همون مایه‌های مانیتور کنار کیس و به صورت ریموت تصویر نصب دیسترو جدید رو خواهید داشت و بنابراین می‌شه سیستم رو به نحو مطلوب پارتیشن بندی و به دیسترو مطلوب آپگرید کرد.برای شروع کافیه برید پوشه boot و یه فولدر بسازید به اسم دیسترویی که قراره نصب کنید . حالا باید کرنل و initrd دیسترو مد نظر رو دانلود کنید. و بعد توی کرنل سه خط اضافه میکنید تا موقع بالا اومدن سیستم از فایل‌هایی که دانلود کردید استفاده شه. توی همین گراب هم آی‌پی و مشخصات شبکه سرور رو می‌دید تا از طریق ریموت بتونید پروسه نصب اواس جدید رو نگاه کنید! مثلا برای نصب سنت‌اواس ۶.۴ کافیه این مراحل رو انجام بدید.
    cd /boot
    mkdir centos6
    cd centos6
    wget http://mirror.centos.org/centos/6.4/...olinux/vmlinuz
    wget http://mirror.centos.org/centos/6.4/...nux/initrd.img
    و حالا ویرایش گراب ( با فرض اینکه سنت‌اواس ۵.۹ و گراب یک دارید)‌
    vi /boot/grub/menu.lst
    این سه خط رو اضافه میکنید
    title CentOS 6.4 VNC Installation
    root (hd0,0)
    kernel /centos6/vmlinuz vnc vncpassword=yourPassword headless ip=10.0.0.10 netmask=255.255.255.0 gateway=10.0.0.1dns=8.8.8.8 ksdevice=eth0method=http://mirror.centos.org/centos/6.4/os/x86_64/lang=en_US keymap=us
    initrd /centos6/initrd.img

    رنگای آبی تعداد خطا رو نشون می ده که کلا ۴ خط خواهید داشت. همه‌شون رو هم با توجه به تنظیماتی که توی گراب وجود داره کپی‌ پیست می‌کنید. فقط خطی رو که مربوط به kernel و initrd هست رو به شکل بالا دستکاری میکنید. آی‌پی و نت مسک و گیت‌وی هم که با توجه به هر سروری فرق میکنه و خیلی مهمه! با این ای‌پی می تونید ریموت از طریق vnc وارد پروسه نصب بشید پارامتر default=0 رو هم می‌تونید تغییر بدید تا به صورت خودکار بعد از ریست، سیستم با کرنل دیسترو جدید بوت بشه. اگرم چیزی ترکید و سیستم بالا نیومد می‌تونید زنگ بزنید به دیتاسنتر و بگید که سیستم رو ریست بدن و اینبار برن توی کرنل دیسترو قدیمی! ‌ اما راه بهتری هم هست که کاری کنیم بدون ریست و تغییر گراب، کرنل و initrd بوت بشه! برای اینکار باید برنامه kexec-tools رو نصب داشته باشید.
    kexec -l /boot/centos6/vmlinuz –initrd=/boot/centos6/initrd.img
    kexec -e
    دستور اول کرنل و initrd رو در مموری بارگذاری میکنه و دستور دوم باعث بالا اومدن کرنل جدید میشه.
    برای اوبونتو و دبیان و اپن‌سوزه هم می‌تونید از ادرس‌های زیر برای نصب ریموت استفاده کنید.
    http://cdimage.ubuntu.com/netboot/
    http://www.debian.org/distrib/netinst
    و اپن‌سوزه
    mkdir /boot/install
    cd /boot/install
    wget –output-document=oS-12.3.vmlinuz.install http://download.opensuse.org/distribution/12.3/repo/oss/boot/$(uname -i)/loader/linux
    wget –output-document=oS-12.3.initrd.install http://download.opensuse.org/distribution/12.3/repo/oss/boot/$(uname -i)/loader/initrd
    و در گراب هم تنظیمات به این شکل میشه
    title install
    root (sdX,Y) # change this (sdX,Y)
    kernel /boot/install/oS-12.3.vmlinuz.install install=http://download.opensuse.org/distribution/openSUSE-stable/repo/oss/
    initrd /boot/install/oS-12.3.initrd.install
    گرامی منظور از KVM مجازی ساز هست . (Kernel-based virtualization manager)

  2. تعداد تشکر ها ازLIAN2 به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •