أساسيات تنسيق Kubernetes
تعرّف إلى نشر تطبيقات Spring Boot وإدارتها على عناقيد Kubernetes.
أساسيات تنسيق Kubernetes درس مجاني في Spring Boot 4 Complete Guide على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Spring Boot 4 Complete Guide، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Spring Boot 4 Complete Guide 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
Intro to Kubernetes (K8s)
Welcome to Kubernetes basics! Kubernetes (often called K8s) is an open-source system for automating deployment, scaling, and management of containerized applications.
Think of it as an operating system for your cloud. It helps you run your applications reliably, even when traffic spikes or servers fail.
Why K8s for Spring Boot?
For Spring Boot applications, Kubernetes offers huge advantages:
- Automated Scaling: Easily scale your app up or down based on demand.
- Self-Healing: K8s restarts failed containers and replaces unresponsive ones.
- Service Discovery: Helps your microservices find each other.
- Load Balancing: Distributes network traffic to ensure stability.
K8s Cluster: Control & Nodes
A Kubernetes cluster consists of at least one Control Plane (formerly Master) and one or more Nodes (Worker Machines).
- Control Plane: The "brain" of K8s. It manages the cluster, schedules applications, and maintains the desired state.
- Nodes: Where your applications (containers) actually run. Each node has components like a container runtime (e.g., Docker) and a Kubelet agent.
Pods: Your App's Home
A Pod is the smallest, most basic deployable unit in Kubernetes. It represents a single instance of a running process in your cluster.
A Pod typically contains one or more tightly coupled containers (like your Spring Boot app and a sidecar logging agent). All containers in a Pod share the same network namespace and storage.
Deployments: Managing Pods
While Pods are fundamental, you don't usually create them directly. Instead, you use a Deployment.
A Deployment manages a set of identical Pods. It ensures you always have a specified number of Pod replicas running, handles rolling updates, and allows easy scaling of your application.
Services: Exposing Your App
How do users or other applications access your Pods? With a Service!
A Service defines a logical set of Pods and a policy by which to access them. It provides a stable IP address and DNS name, even if the underlying Pods change or scale. Services can also act as load balancers.
`kubectl`: K8s Command Tool
You interact with your Kubernetes cluster using the kubectl command-line tool.
It allows you to run commands against Kubernetes clusters, like deploying applications, inspecting cluster resources, and viewing logs. It's your primary interface to K8s.
kubectl get pods
kubeclt get services
kubeclt apply -f my-app.yamlCreating a Basic Deployment
Let's define a simple Deployment for a 'hello-world' type application using YAML. This tells Kubernetes to run 2 replicas of our image.
Save this as hello-deployment.yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-app
spec:
replicas: 2
selector:
matchLabels:
app: hello-app
template:
metadata:
labels:
app: hello-app
spec:
containers:
- name: hello-container
image: k8s.gcr.io/echoserver:1.4
ports:
- containerPort: 8080Applying Your Deployment
Now, let's apply this definition to our Kubernetes cluster using kubectl. After applying, we can check the status of our Pods.
kubectl apply -f hello-deployment.yaml
kubeclt get deployments
kubeclt get pods --selector app=hello-appExposing with a Service
Our Pods are running, but not accessible externally. Let's create a Service to expose our hello-app Deployment. This will create a load balancer to route traffic.
Save this as hello-service.yaml and apply it:
apiVersion: v1
kind: Service
metadata:
name: hello-service
spec:
selector:
app: hello-app
ports:
- protocol: TCP
port: 80
targetPort: 8080
type: LoadBalancerQuick Check on K8s Basics
Which of the following Kubernetes components is responsible for managing a set of identical Pods, handling scaling, and rolling updates?
Recap: K8s Basics
Great job! In this lesson, you learned the fundamental concepts of Kubernetes:
- What K8s is and why it's useful.
- The core architecture: Control Plane and Nodes.
- Key resources: Pods, Deployments, and Services.
- How to use
kubectlto deploy and manage a basic application.
Next, you'll explore advanced topics like distributed tracing and resilience patterns!
الأسئلة الشائعة
هل درس «أساسيات تنسيق Kubernetes» مجاني؟
نعم — نص درس «أساسيات تنسيق Kubernetes» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Spring Boot 4 Complete Guide، انتقل إلى CoddyKit PRO. تتضمن دورة Spring Boot 4 Complete Guide 4 دروس في المجموع.
ماذا ستتعلم في «أساسيات تنسيق Kubernetes»؟
تعرّف إلى نشر تطبيقات Spring Boot وإدارتها على عناقيد Kubernetes. تتمرن على Spring Boot 4 Complete Guide مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Spring Boot 4 Complete Guide؟
لا تُشترط خبرة سابقة. Spring Boot 4 Complete Guide على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «أساسيات تنسيق Kubernetes»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Spring Boot 4 Complete Guide هذا؟
نعم. كل درس في Spring Boot 4 Complete Guide يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- أساسيات تنسيق Kubernetes
- التتبّع الموزّع باستخدام Sleuth وZipkin
- فحوصات الصحة وأنماط المرونة
- المقاييس ولوحات المعلومات باستخدام Micrometer وPrometheus