تست clusterی که با kubernetes ساختیم

بعد از آموزش های مربوط به نصب kubernetes و راه اندازی master و نودهای آن که در اینجا میتوانید مشاهده کنید. نوبت به اموزش روش تست کردن clusterی که الان در اختیار داریم میرسد.

برای این منظور ما میخواهیم یک container به اسم nginx را از مخازن docker بگیریم و‌‌ آن را در دو نقطه بصورت replication بالا بیاوریم . به همین دلیل دستور زیر را اجرا میکنیم .

kubectl run my-nginx –image=nginx –replicas=2 –port=80

نکته: دستور بالا به kubernetes میگویدکه با استفاده از ایمیج nginx که در مخازن داکر وجود دارد در دو replication ( که در اینجا همان دو نودی که توسط مستر کنترل میشوند ) با اسم  my-nginx بر روی پورت ۸۰ بالا بیاورد.

بعد از اینکهدستور بالا با موفقیت اجرا شد برای دیدن نتیجه کار میتوانیم بصورت زیر عمل کنیم.

kubectl get deployments

بعد از اجرای دستور بالا خروجی مانند زیر خواهیم دید.

NAME    DESIRED    CURRENT    UP-TO-DATE    AVAILABLE    AGE
my-nginx    ۲               ۲                   ۲                       ۲                  ۱m

که به شما نشان میدهد که یک deployment به نام my-nginx با ویزگی های زیر وجود دارد:

  • در دو نقطه
  • هردو هم آپدیت میباشند
  • زمان اجرای آنها ۱ دقیقه میباشد

شما میتوانید برای دیدن جزییات بیشتر از container های در حال اجرا دستور زیر را اجرا کنید

kubectl get pods

که خروجی مانند زیر را به شما نمایش خواهد داد

NAME                                            READY     STATUS     RESTARTS     AGE
my-nginx-2494149703-2xovs    ۱/۱          Running        ۰              ۱m
my-nginx-2494149703-hbesv    ۱/۱          Running        ۰              ۱m

در این خروجی هم اطلاعات جالبی نظیر اینکه container شما چند بار restart شدهاست را نشان میدهد.

شما میتوانید با استفاده از دستور زیر مذ اجرای deployment خود که اسمش  my-nginx بود را بصورت Load Balancer تغییر دهید.

kubectl expose deployment my-nginx –type=”LoadBalancer”

برای دیدن سرویس هایی که در حال حاضر بر روی kubernetes ما بالا هستند میتوانید از دستور زیر استفاده کنید

kubectl get services

 خروجی مانند زیر مشاهده خواهیدکرد.

NAME                  CLUSTER-IP           EXTERNAL-IP          PORT(S)           AGE
kubernetes         ۱۹۲٫۱۶۸٫۰٫۱              <none>                ۴۴۳/TCP         ۵۳m
my-nginx            ۱۹۲٫۱۶۸٫۱۷۶٫۱۸۶     <pending>          ۸۰/TCP            ۱۲s

حالا برای اینکه تست کنیم ببینیم آیا کلاستر my-nginx درست بالا آمده و درست کار میکند بصورت زیر عمل میکتیم.

curl -I 192.168.176.186

و اگر خروجی مانند زیر دیدیم کارهای انجام شده درست میباشد.

HTTP/1.1 200 OK
Server: nginx/1.11.1
Date: Sat, 06 Aug 2016 20:01:49 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 31 May 2016 14:40:22 GMT
Connection: keep-alive
ETag: “574da256-264”
Accept-Ranges: bytes

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *