آموزش نصب و پیکربندی Docker Swarm – بخش ۷

در ادامه ی سلسه مطلب آموزش نصب و پیکربندی Docker Swarm قصد داریم تا در مورد Node ها صحبت کنیم.

docker-swarm

Draining a node:

زمانی که Node ها در کلاستر باشند وضعیت آنها Ready و AVAILABILITY آنها Active می باشد که به معنی آن می باشد که Node آماده ی دریافت task از manager node می باشد. برای بررسی وضعیت Node ها می توانید دستور زیر را بر روی manager node اجرا کنید:

# docker node ls

در برخی مواقع اگر قصد maintenance کردن یک Node را داشته باشید می توانید وضعیت Node را به Drain تغییر دهید تا service ها و یا container هایی که بر روی آن Node در حال اجرا می باشند به Node های دیگر در Swarm Cluster منتقل شوند.
زمانی که وضعیت Node به Drain تغییر می کند از دریافت task از manager node جلوگیری می شود.
اکنون قصد داریم به عنوان مثال وضعیت worker02 را به Drain تغییر دهیم. به همین منظور کافیست تا دستور زیر را بر روی manager node اجرا کنیم:

# docker node update --availability drain docker-swarm-worker02

 

 

یک نمونه از خروجی دستور گفته شده را در تصویر پایین مشاهده می کنید:

docker-swarmاکنون برای بررسی وضعیت Node های کلاستر می توانید دستور پایین را اجرا کنید:

# docker node ls

یک نمونه خروجی از دستور گفته شده را در تصویر پایین مشاهده می کنید:

docker-swarmهمانطور که در تصویر بالا مشاهده می کنید، وضعیت worker02 به Drain تغییر کرده است. در این زمان manager node پس از تغییر وضعیت Node به حالت Drain تمامی container هایی که بر روی آن Node در حال اجرا بودند را بر روی Node های دیگر کلاستر reschedule می کند.
برای برگشت وضعیت Node به حالت Active کافیست تا دستور پایین را اجرا کرد:

# docker node update --availability active docker-swarm-worker02

 

 

Remove a node :

برای حذف یک Node از Swarm Cluster کافیست تا دستور زیر را بر روی Node مورد نظر خود اجرا کنید. به عنوان نمونه ما قصد داریم تا worker02 را از Swarm Cluster حذف کنیم، به همین منظور دستور زیر را بر روی worker02 باید اجرا کرد:

# docker swarm leave

یک نمونه از خروجی دستور گفته شده را در تصویر پایین مشاهده می کنید:

docker-swarmاکنون برای بررسی وضعیت Node های کلاستر دستور زیر را بر روی manager node اجرا کنید:

# docker node ls

یک نمونه خروجی از اجرای دستور گفته شده را در تصویر پایین مشاهده می کنید:

docker-swarm

همانطور که در تصویر بالا مشاهده می کنید status آن Node به حالت Down تغییر کرده است. اکنون برای حذف آن کافیست تا دستور زیر را بر روی manager node اجرا کنید:

# docker node rm docker-swarm-worker02

یک نمونه خروجی از اجرای دستور گفته شده را در تصویر پایین مشاهده می کنید:

docker-swarm

اکنون برای بررسی Node های کلاستر کافیست تا یکبار دیگر دستور زیر را اجرا کنید:

# docker node ls

یک نمونه خروجی از اجرای دستور گفته شده را در تصویر پایین مشاهده می کنید:

docker-swarm

همانطور که در تصویر بالا مشاهده می کنید، worker02 از Swarm Cluster حذف شد.

برای برگرداندن worker02 به کلاستر کافیست تا همان دستور join را بر روی Node اجرا کرد :

 

# docker swarm join --token SWMTKN-1-5s96w0psw3d23abbt9gh989hwr39sz7yuxoezwy2n5tkaduh01-273rbipslimobssdpd39j2w0p 192.168.122.245:2377

 

 

 

سپس می توانید وضعیت Node های کلاستر را با دستور پایین بررسی کنید:

# docker node ls

خروجی دستورهای گفته شده را در تصاویر پایین مشاهده می کنید:

docker-swarm

docker-swarm

امید است تا از این سلسله مطلب استفاده ی لازم را برده باشید.

پایان

 

2 نظرات
  1. علی می گوید

    سلام، ممنون از اینکه هنوز هستی، تقریبا جزو اخرین وبلاگهای لینوکسی
    ولی یه انتقاد هم دارم، مطالب دم دستی و ساده و فان تقریبا حذف شده! برای ما کاربرای عادی هم چندتا پست بزار
    خدا حفظت کنه

    1. hos7ein می گوید

      درود بر شما
      ممنون از اینکه شما هم هستین.
      چشم حتما 🙂

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.