1. ওভারভিউ
ল্যাবের প্রথম অংশে , আপনি একটি ASP.NET কোর অ্যাপ্লিকেশন তৈরি করেছেন, কন্টেইনারাইজ করেছেন এবং এটিকে Google Kubernetes Engine (GKE) এ স্থাপন করেছেন এবং Istio দ্বারা পরিচালিত হওয়ার জন্য এর ট্র্যাফিক কনফিগার করেছেন।
ল্যাবের এই দ্বিতীয় অংশটি অনুমান করে যে আপনার কাছে ইতিমধ্যেই আপনার Kubernetes ক্লাস্টার রয়েছে এবং প্রথম ল্যাব থেকে অ্যাপ্লিকেশনটি চলছে। আপনি দেখতে পাবেন কিভাবে Istio ন্যূনতম কোড পরিবর্তনের মাধ্যমে আপনার পরিষেবাগুলি পরিচালনা, নিরীক্ষণ এবং সুরক্ষিত করতে সাহায্য করতে পারে। বিশেষত, আপনি Istio-এর বৈশিষ্ট্য যেমন মেট্রিক্স, ট্রেসিং, পরিষেবা ভিজ্যুয়ালাইজেশন, গতিশীল ট্রাফিক ব্যবস্থাপনা, ফল্ট ইনজেকশন এবং আরও অনেক কিছু অন্বেষণ করেন।
আপনি কি শিখবেন
- প্রমিথিউসের সাথে মেট্রিক্স কীভাবে জিজ্ঞাসা করবেন।
- Grafana দিয়ে মেট্রিক্স কিভাবে ভিজ্যুয়ালাইজ করবেন।
- কীভাবে আপনার পরিষেবার একটি নতুন সংস্করণ তৈরি করবেন।
- একটি নির্দিষ্ট সংস্করণে একটি পরিষেবা কীভাবে পিন করবেন।
- কিভাবে বিভিন্ন সংস্করণের মধ্যে ট্রাফিক বিভক্ত.
- কীভাবে পরিষেবা কলগুলিতে ত্রুটিগুলি ইনজেকশন করবেন।
আপনি কি প্রয়োজন হবে
- একটি ব্রাউজার, যেমন ক্রোম বা ফায়ারফক্স
আপনি কিভাবে এই টিউটোরিয়াল ব্যবহার করবেন?
Google ক্লাউড প্ল্যাটফর্মের সাথে আপনার অভিজ্ঞতাকে কীভাবে মূল্যায়ন করবে?
2. সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিসম্পন্ন পরিবেশ সেটআপ
- ক্লাউড কনসোলে সাইন ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ (যদি আপনার ইতিমধ্যেই একটি Gmail বা G Suite অ্যাকাউন্ট না থাকে তবে আপনাকে অবশ্যই একটি তৈরি করতে হবে।)
প্রজেক্ট আইডিটি মনে রাখবেন, সমস্ত Google ক্লাউড প্রকল্প জুড়ে একটি অনন্য নাম (উপরের নামটি ইতিমধ্যে নেওয়া হয়েছে এবং আপনার জন্য কাজ করবে না, দুঃখিত!)। এটি পরে এই কোডল্যাবে PROJECT_ID
হিসাবে উল্লেখ করা হবে।
- এর পরে, Google ক্লাউড সংস্থানগুলি ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে৷
এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ করা উচিত নয়, যদি কিছু থাকে। "ক্লিনিং আপ" বিভাগে যে কোনও নির্দেশাবলী অনুসরণ করতে ভুলবেন না যা আপনাকে কীভাবে সংস্থানগুলি বন্ধ করতে হবে তা পরামর্শ দেয় যাতে আপনি এই টিউটোরিয়ালের বাইরে বিলিং করতে না পারেন৷ Google ক্লাউডের নতুন ব্যবহারকারীরা $300USD ফ্রি ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
ক্লাউড শেল শুরু করুন
যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google Cloud Shell ব্যবহার করেন, একটি কমান্ড লাইন পরিবেশ যা Google ক্লাউডে চলছে।
ক্লাউড শেল সক্রিয় করুন
- ক্লাউড কনসোল থেকে, ক্লাউড শেল সক্রিয় করুন ক্লিক করুন .
আপনি যদি আগে কখনও ক্লাউড শেল শুরু না করে থাকেন, তাহলে আপনাকে একটি মধ্যবর্তী স্ক্রীন (ভাঁজের নীচে) উপস্থাপন করা হবে যা বর্ণনা করে। যদি এটি হয়, তবে চালিয়ে যান ক্লিক করুন (এবং আপনি এটি আর কখনও দেখতে পাবেন না)। এককালীন স্ক্রীনটি দেখতে কেমন তা এখানে রয়েছে:
ক্লাউড শেলের সাথে সংযোগ করতে এবং সংযোগ করতে এটির মাত্র কয়েক মুহূর্ত লাগবে৷
এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার অনেক কাজ, যদি সব না হয়, শুধুমাত্র একটি ব্রাউজার বা আপনার Chromebook দিয়ে করা যেতে পারে।
একবার ক্লাউড শেলের সাথে সংযুক্ত হয়ে গেলে, আপনি দেখতে পাবেন যে আপনি ইতিমধ্যেই প্রমাণীকরণ করেছেন এবং প্রকল্পটি ইতিমধ্যে আপনার প্রকল্প আইডিতে সেট করা আছে।
- আপনি প্রমাণীকৃত কিনা তা নিশ্চিত করতে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান:
gcloud auth list
কমান্ড আউটপুট
Credentialed Accounts ACTIVE ACCOUNT * <my_account>@<my_domain.com> To set the active account, run: $ gcloud config set account `ACCOUNT`
gcloud config list project
কমান্ড আউটপুট
[core] project = <PROJECT_ID>
যদি এটি না হয়, আপনি এই কমান্ড দিয়ে এটি সেট করতে পারেন:
gcloud config set project <PROJECT_ID>
কমান্ড আউটপুট
Updated property [core/project].
3. আবেদন পরীক্ষা করুন
আপনি ল্যাব শুরু করার আগে, নিশ্চিত করুন যে অ্যাপ্লিকেশনটি এখনও আগের ল্যাব থেকে কাজ করছে। একটি অনুস্মারক হিসাবে, আপনি এইভাবে গেটওয়ের বাহ্যিক আইপি এবং পোর্ট দেখতে পাচ্ছেন, যা EXTERNAL-IP
অধীনে তালিকাভুক্ত রয়েছে:
kubectl get svc istio-ingressgateway -n istio-system
অ্যাপ্লিকেশন দেখতে, আপনি আপনার ব্রাউজার খুলতে পারেন এবং http://<gatewayurl>
-এ নেভিগেট করতে পারেন:
আপনি যদি অ্যাপ্লিকেশানটি দেখতে না পান, আপনি সমস্ত পদক্ষেপগুলি অনুসরণ করেছেন এবং অ্যাপ্লিকেশন এবং ইস্টিও উভয়ই সঠিকভাবে ইনস্টল এবং চলছে তা নিশ্চিত করতে পূর্ববর্তী ল্যাবে ফিরে যান৷
এই মুহুর্তে, আপনি হয়তো ভাবছেন "ইস্টিওর সুবিধা কী?"। Istio-কে আপনার অ্যাপ্লিকেশানের ট্র্যাফিক পরিচালনা করতে দিয়ে, আপনি বিনামূল্যের জন্য মেট্রিক্স, ট্রেসিং, গতিশীল ট্রাফিক ব্যবস্থাপনা, পরিষেবা ভিজ্যুয়ালাইজেশন, ফল্ট ইনজেকশন এবং আরও অনেক কিছুর মতো বৈশিষ্ট্যগুলি পান৷
আপনি পরবর্তী ধাপে মেট্রিক্স অন্বেষণ দিয়ে শুরু করবেন।
4. গ্রাফানা এবং প্রমিথিউসের সাথে মেট্রিক্স
ডিফল্টরূপে, Istio কিছু মেট্রিক্স তৈরি করে। আপনি এই ডিফল্ট মেট্রিকগুলি অনুসন্ধান করতে এবং কল্পনা করতে অ্যাড-অনগুলি ব্যবহার করতে পারেন৷
প্রমিথিউস
প্রমিথিউস একটি ওপেন সোর্স মনিটরিং সমাধান। আপনি Istio দ্বারা উত্পন্ন মেট্রিক্স জিজ্ঞাসা করতে Prometheus ব্যবহার করতে পারেন তবে আপনাকে প্রথমে Prometheus অ্যাড-অন ইনস্টল করতে হবে।
kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.8/samples/addons/prometheus.yaml
যাচাই করুন যে প্রমিথিউস চলছে:
kubectl get svc prometheus -n istio-system NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE prometheus ClusterIP 10.31.243.62 <none> 9090/TCP 1d
কয়েকবার http://<gatewayurl>
ভিজিট করে বা কার্ল কমান্ড চালিয়ে অ্যাপ্লিকেশনটিতে কিছু ট্র্যাফিক পাঠান।
Prometheus UI এর জন্য সেটআপ পোর্ট ফরওয়ার্ডিং:
kubectl -n istio-system port-forward $(kubectl -n istio-system get pod -l app=prometheus -o jsonpath='{.items[0].metadata.name}') 8080:9090
আপনি এখন ক্লাউড শেলের উপরের-ডান কোণে ওয়েব প্রিভিউ বোতামে ক্লিক করে এবং পোর্ট 8080-এ প্রিভিউ ক্লিক করে একটি ক্যোয়ারী চালাতে পারেন:
আপনি একটি নতুন ট্যাবে প্রমিথিউস UI দেখতে পাবেন:
প্রমিথিউস সম্পর্কে আরও জানতে, প্রমিথিউসের সাথে মেট্রিক্স জিজ্ঞাসা করা দেখুন।
গ্রাফনা
গ্রাফানা হল মেট্রিক্স ভিজ্যুয়ালাইজ করার জন্য আরেকটি অ্যাড-অন।
Grafana ইনস্টল করুন। আপনার বর্তমান Istio সংস্করণ দিয়ে istio-version
প্রতিস্থাপন করুন, উদাহরণস্বরূপ, 1.0.3-gke.3
:
kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.8/samples/addons/grafana.yaml
যাচাই করুন যে Grafana চলছে:
kubectl get svc grafana -n istio-system NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE grafana ClusterIP 10.31.248.230 <none> 3000/TCP 1d
কয়েকবার http://<gatewayurl>
ভিজিট করে বা কার্ল কমান্ড চালিয়ে অ্যাপ্লিকেশনটিতে কিছু ট্র্যাফিক পাঠান।
Grafana UI এর জন্য সেটআপ পোর্ট ফরওয়ার্ডিং:
kubectl -n istio-system port-forward $(kubectl -n istio-system get pod -l app=grafana -o jsonpath='{.items[0].metadata.name}') 8080:3000
আপনি ওয়েব প্রিভিউতে গিয়ে Grafana ড্যাশবোর্ড দেখতে পারেন:
Granfana সম্পর্কে আরও জানতে, Grafana এর সাথে মেট্রিক্স ভিজ্যুয়ালাইজ করুন দেখুন।
5. অ্যাপ্লিকেশনটির একটি নতুন সংস্করণ তৈরি করুন৷
কিছু সময়ে, আপনি যে অ্যাপ্লিকেশনটি প্রোডাকশনে স্থাপন করেছেন তার বাগ ফিক্স বা অতিরিক্ত বৈশিষ্ট্যের প্রয়োজন হবে। চলুন দেখি সেই প্রক্রিয়াটি কেমন লাগে।
প্রথমত, এর অ্যাপ্লিকেশন পরিবর্তন করা যাক. ক্লাউড শেল থেকে কোড এডিটর খুলুন।
HelloWorldAspNetCore > Views > Home
এর অধীনে Index.cshtml
এ নেভিগেট করুন এবং ক্যারোজেল বার্তাগুলির একটি আপডেট করুন।
নিম্নলিখিত লাইন খুঁজুন:
Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core
এবং এটিতে এটি পরিবর্তন করুন:
Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core on Google Cloud
পরিবর্তনগুলি সংরক্ষণ করুন এবং তারপরে ক্লাউড শেলে ফিরে যান। HelloWorldAspNetCore,
ডকার ইমেজ তৈরি করুন:
docker build -t gcr.io/${GOOGLE_CLOUD_PROJECT}/hello-dotnet:v2 .
এবং কন্টেইনার রেজিস্ট্রিতে চাপ দিন:
docker push gcr.io/${GOOGLE_CLOUD_PROJECT}/hello-dotnet:v2
আপনি ধারক চিত্রটি পুশ করার পরে, আপনি পরবর্তী ধাপে নতুন সংস্করণ স্থাপন করতে পারেন।
6. নতুন স্থাপনা তৈরি করুন
নতুন সংস্করণ স্থাপন করতে, আপনাকে প্রথমে এটির জন্য Kubernetes-এ একটি নতুন স্থাপনা তৈরি করতে হবে। aspnetcore.yaml
ফাইলের শেষে নিম্নলিখিত যোগ করুন:
--- apiVersion: apps/v1 kind: Deployment metadata: name: aspnetcore-v2 spec: replicas: 1 selector: matchLabels: app: aspnetcore version: v2 template: metadata: labels: app: aspnetcore version: v2 spec: containers: - name: aspnetcore image: gcr.io/YOUR-PROJECT-ID/hello-dotnet:v2 imagePullPolicy: IfNotPresent ports: - containerPort: 8080
kubectl
দিয়ে ডিফল্ট নামস্থানে নতুন সংস্করণ স্থাপন করুন:
kubectl apply -f aspnetcore.yaml
service "aspnetcore" unchanged deployment.extensions "aspnetcore-v1" unchanged deployment.extensions "aspnetcore-v2" created
যাচাই করুন যে প্রত্যাশিত পড চলছে:
kubectl get pods
NAME READY STATUS RESTARTS AGE aspnetcore-v1-6cf64748-mddb 2/2 Running 0 34s aspnetcore-v2-5d765db-l9xmg 2/2 Running 0 1m
এখন, আবেদনটি আবার পরীক্ষা করুন। গেটওয়ের বাহ্যিক আইপি পান:
kubectl get svc istio-ingressgateway -n istio-system
এটি EXTERNAL-IP এর অধীনে তালিকাভুক্ত। একটি ছদ্মবেশী ব্রাউজার খুলুন এবং http://<replace-with-external-ip>
এ যান
আপনি যখন রিফ্রেশ করবেন, মাঝে মাঝে, আপনি "ASP.NET কোর দিয়ে ওয়েব অ্যাপস তৈরি করার বিষয়ে জানুন" বার্তাটি দেখতে পাবেন:
অন্য সময়ে, আপনি "Google ক্লাউডে ASP.NET কোর দিয়ে ওয়েব অ্যাপ তৈরি করার বিষয়ে জানুন" বার্তাটি দেখতে পাবেন:
এর কারণ হল v1
এবং v2
উভয় স্থাপনাই একই Kubernetes পরিষেবার পিছনে উন্মোচিত হয় ( aspnetcore-service
) এবং আপনার পূর্ববর্তী ল্যাবে ( aspnetcore-virtualservice
) তৈরি করা VirtualService হোস্ট হিসাবে সেই পরিষেবাটি ব্যবহার করে৷
পরবর্তী ধাপে, আপনি একটি DestinationRule ব্যবহার করে v2
স্থাপনায় পরিষেবাটি পিন করুন।
7. নতুন সংস্করণে আপনার পরিষেবা পিন করুন৷
এই ধাপে, আপনি v2
ডিপ্লয়মেন্ট ব্যবহার করতে আপনার পরিষেবা পিন করুন এবং আপনি এটি একটি DestinationRule দিয়ে করতে পারেন। একটি DestinationRule একটি VirtualService রাউটিং অপারেশন হওয়ার পরে একটি অনুরোধে প্রয়োগ করার জন্য নীতিগুলির সেট কনফিগার করে৷
একটি DestinationRule সংশ্লিষ্ট গন্তব্য হোস্টের ঠিকানাযোগ্য উপসেটগুলিকেও সংজ্ঞায়িত করে, যার অর্থ নামকৃত সংস্করণ। পরিষেবার নির্দিষ্ট সংস্করণে ট্রাফিক পাঠানোর সময় এই উপসেটগুলি ভার্চুয়াল সার্ভিস রুট স্পেসিফিকেশনে ব্যবহার করা হয়।
aspnetcore-destinationrule.yaml
নামে একটি নতুন ফাইল তৈরি করুন:
apiVersion: networking.istio.io/v1alpha3 kind: DestinationRule metadata: name: aspnetcore-destinationrule spec: host: aspnetcore-service trafficPolicy: tls: mode: ISTIO_MUTUAL subsets: - name: v1 labels: version: v1 - name: v2 labels: version: v2
এরপরে, DestinationRule তৈরি করুন। এটি দুটি উপসেট (v1 এবং v2) তৈরি করে যা আপনি ভার্চুয়াল সার্ভিস থেকে ব্যবহার করতে পারেন:
kubectl apply -f aspnetcore-destinationrule.yaml
destinationrule.networking.istio.io "aspnetcore-destionationrule" created
এখন, v2
উপসেট ব্যবহার করতে VirtualService আপডেট করতে aspnetcore-virtualservice.yaml
ফাইলে ফিরে যান:
apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: aspnetcore-virtualservice spec: hosts: - "*" gateways: - aspnetcore-gateway http: - route: - destination: host: aspnetcore-service subset: v2
ভার্চুয়াল সার্ভিস আপডেট করুন:
kubectl apply -f aspnetcore-virtualservice.yaml
আপনার ব্রাউজার খুলুন এবং http://<replace-with-external-ip>.
এমনকি একাধিক রিফ্রেশ করার পরেও, আপনি "Google ক্লাউডে ASP.NET কোরের সাথে ওয়েব অ্যাপস তৈরি করার বিষয়ে জানুন" বার্তাটি দেখতে পাবেন:
8. সংস্করণগুলির মধ্যে ট্র্যাফিক বিভক্ত করুন
কখনও কখনও, আপনি পরীক্ষার জন্য সংস্করণগুলির মধ্যে ট্র্যাফিক বিভক্ত করতে চাইতে পারেন। উদাহরণস্বরূপ, আপনি ট্রাফিকের 75% v1 এবং 25% ট্রাফিক পরিষেবার v2 সংস্করণে পাঠাতে চাইতে পারেন। আপনি সহজেই ইস্টিও দিয়ে এটি অর্জন করতে পারেন। একটি নতুন aspnetcore-virtualservice-weights.yaml
ফাইল তৈরি করুন বিভিন্ন ওজন সহ দুটি উপসেট উল্লেখ করতে:
apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: aspnetcore-virtualservice spec: hosts: - "*" gateways: - aspnetcore-gateway http: - route: - destination: host: aspnetcore-service subset: v1 weight: 75 - destination: host: aspnetcore-service subset: v2 weight: 25
ভার্চুয়াল সার্ভিস আপডেট করুন:
kubectl apply -f aspnetcore-virtualservice-weights.yaml
এখন, আপনি যখন ব্রাউজারটি রিফ্রেশ করবেন, তখন আপনি দেখতে পাবেন যে v1 বনাম v2 সংস্করণগুলি মোটামুটি 3:1 অনুপাতের সাথে পরিবেশন করা হয়েছে।
আরও জানতে, ইস্টিওতে ট্রাফিক বিভাজন দেখুন।
9. ইনজেকশন ত্রুটি
পরীক্ষার জন্য আরেকটি দরকারী ডেভেলপমেন্ট টাস্ক হল ট্র্যাফিকের মধ্যে ত্রুটি বা বিলম্ব ইনজেক্ট করা এবং পরিষেবাগুলি প্রতিক্রিয়া হিসাবে কীভাবে আচরণ করে তা দেখা।
উদাহরণস্বরূপ, আপনি v1 সংস্করণে ট্রাফিকের 50% জন্য একটি খারাপ অনুরোধ (HTTP 400) প্রতিক্রিয়া ফেরত দিতে চাইতে পারেন। নিম্নলিখিতগুলির সাথে মেলে aspnetcore-virtualservice-fault-abort.yaml
ফাইল তৈরি করুন:
apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: aspnetcore-virtualservice spec: hosts: - "*" gateways: - aspnetcore-gateway http: - fault: abort: percentage: value: 50 httpStatus: 400 route: - destination: host: aspnetcore-service subset: v1
ভার্চুয়াল সার্ভিস আপডেট করুন:
kubectl apply -f aspnetcore-virtualservice-fault-abort.yaml
এখন, আপনি যখন ব্রাউজার রিফ্রেশ করবেন, তখন আপনার দেখতে হবে যে অর্ধেক সময়, v1 পরিষেবাটি একটি HTTP 400s প্রতিক্রিয়া কোড প্রদান করে।
অথবা আপনি অনুরোধে 5 সেকেন্ড বিলম্ব যোগ করতে চান। নিম্নলিখিতগুলির সাথে মেলে aspnetcore-virtualservice-fault-delay.yaml
ফাইল তৈরি করুন:
apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: aspnetcore-virtualservice spec: hosts: - "*" gateways: - aspnetcore-gateway http: - fault: delay: fixedDelay: 5s percentage: value: 100 route: - destination: host: aspnetcore-service subset: v1
ভার্চুয়াল সার্ভিস আপডেট করুন:
kubectl apply -f aspnetcore-virtualservice-fault-delay.yaml
এখন, আপনি যখন ব্রাউজার রিফ্রেশ করবেন, আপনি দেখতে পাবেন যে অনুরোধগুলি 5 সেকেন্ডের জন্য বিলম্বিত হয়েছে।
Istio বৈশিষ্ট্যগুলি যেমন টাইমআউট, পুনরায় চেষ্টা, শর্তসাপেক্ষ নিয়ম, সার্কিট ব্রেকার এবং আরও অনেক কিছু সম্পর্কে আরও জানতে, ট্রাফিক ব্যবস্থাপনা বৈশিষ্ট্যগুলি দেখুন৷
10. অভিনন্দন!
আশা করি, এই ল্যাবটি আপনাকে বাক্সের বাইরে আপনার পরিষেবার জন্য Istio কী করতে পারে তার একটি ওভারভিউ দিয়েছে। Istio এবং GKE সম্পর্কে আরও জানতে।
পরবর্তী পদক্ষেপ
- Istio সম্পর্কে আরও জানুন।
- কুবারনেটস সম্পর্কে আরও জানুন।
- Google Kubernetes Engine সম্পর্কে আরও জানুন।
- Google ক্লাউড প্ল্যাটফর্মে .NET সম্পর্কে আরও জানুন।
লাইসেন্স
এই কাজটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন 2.0 জেনেরিক লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত।
11. পরিষ্কার করা
আপনি অ্যাপটি মুছে ফেলতে পারেন এবং Istio আনইনস্টল করতে পারেন অথবা আপনি কেবল Kubernetes ক্লাস্টার মুছে দিতে পারেন।
অ্যাপ্লিকেশনটি মুছুন
অ্যাপ্লিকেশন মুছে ফেলার জন্য:
kubectl delete -f aspnetcore-gateway.yaml kubectl delete -f aspnetcore-virtualservice.yaml kubectl delete -f aspnetcore-destinationrule.yaml kubectl delete -f aspnetcore.yaml
আবেদনটি চলে গেছে তা নিশ্চিত করতে:
kubectl get gateway kubectl get virtualservices kubectl get destinationrule kubectl get pods
Istio আনইনস্টল করুন
Istio মুছে ফেলতে:
kubectl delete -f install/kubernetes/istio-demo-auth.yaml
ইস্টিও চলে গেছে তা নিশ্চিত করতে:
kubectl get pods -n istio-system
Kubernetes ক্লাস্টার মুছুন
gcloud container clusters delete hello-dotnet-cluster