Search
Search titles only
By:
Search titles only
By:
Log in
Register
Search
Search titles only
By:
Search titles only
By:
Menu
Install the app
Install
Forums
New posts
All threads
Latest threads
New posts
Trending threads
Trending
Search forums
What's new
New posts
New ads
New profile posts
Latest activity
Free Ads
Latest reviews
Search ads
Members
Current visitors
New profile posts
Search profile posts
Contact us
Latest ads
RHCSA, RHCE, AWS, Docker, Kubernetes Training
Sanjeewani95
Updated:
Tuesday at 10:28 AM
🛡️ Kaspersky Antivirus – 1 Year / 1 Device | Rs. 2,300 | Only 9 Left
KSPathirana
Updated:
Monday at 2:42 PM
Ad icon
Professional CCTV Installation Service
Techguy231
Updated:
Sunday at 10:50 AM
Ad icon
I'll research & write an article - Rs. 2000 onwards
Blogerwiki
Updated:
Sep 3, 2026
House Plan
lenura
Updated:
Sep 2, 2026
Electronics
Vehicles
Property
Search
Reply to thread
Forums
General
ElaKiri Help
How to remember the Kubernetes yaml syntax and structures? --help
Get the App
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Message
<blockquote data-quote="6h057" data-source="post: 30530399" data-attributes="member: 587218"><p>Hope the following helps:</p><p></p><table style='width: 100%'><tr><td> <h3>1. Pod</h3> [CODE=yaml]apiVersion: v1<br /> kind: Pod<br /> metadata:<br /> name: my-pod<br /> labels:<br /> app: my-app<br /> spec:<br /> containers:<br /> - name: my-container<br /> image: nginx<br /> ports:<br /> - containerPort: 80<br /> env:<br /> - name: ENV_VAR<br /> value: "value"<br /> volumeMounts:<br /> - name: my-volume<br /> mountPath: /path/in/container<br /> volumes:<br /> - name: my-volume<br /> emptyDir: {}[/CODE]</td><td> <h3 style="text-align: left">2. Deployment</h3> [CODE=yaml]apiVersion: apps/v1<br /> kind: Deployment<br /> metadata:<br /> name: my-deployment<br /> spec:<br /> replicas: 3<br /> selector:<br /> matchLabels:<br /> app: my-app<br /> template:<br /> metadata:<br /> labels:<br /> app: my-app<br /> spec:<br /> containers:<br /> - name: my-container<br /> image: nginx<br /> ports:<br /> - containerPort: 80[/CODE]</td></tr><tr><td> <h3>3. Service</h3> [CODE=yaml]apiVersion: v1<br /> kind: Service<br /> metadata:<br /> name: my-service<br /> spec:<br /> selector:<br /> app: my-app<br /> ports:<br /> - protocol: TCP<br /> port: 80<br /> targetPort: 9376<br /> type: ClusterIP[/CODE]</td><td> <h3>4. ConfigMap</h3> [CODE=yaml]apiVersion: v1<br /> kind: ConfigMap<br /> metadata:<br /> name: my-config<br /> data:<br /> key1: value1<br /> key2: value2[/CODE]</td></tr><tr><td> <h3>5. Secret</h3> [CODE=yaml]apiVersion: v1<br /> kind: Secret<br /> metadata:<br /> name: my-secret<br /> type: Opaque<br /> data:<br /> username: <base64-encoded><br /> password: <base64-encoded>[/CODE]</td><td> <h3>6. PersistentVolume (PV)</h3> [CODE=yaml]apiVersion: v1<br /> kind: PersistentVolume<br /> metadata:<br /> name: my-pv<br /> spec:<br /> capacity:<br /> storage: 10Gi<br /> accessModes:<br /> - ReadWriteOnce<br /> hostPath:<br /> path: /mnt/data[/CODE]</td></tr><tr><td> <h3>7. PersistentVolumeClaim (PVC)</h3> [CODE=yaml]apiVersion: v1<br /> kind: PersistentVolumeClaim<br /> metadata:<br /> name: my-pvc<br /> spec:<br /> accessModes:<br /> - ReadWriteOnce<br /> resources:<br /> requests:<br /> storage: 5Gi[/CODE]</td><td> <h3>8. Job</h3> [CODE=yaml]apiVersion: batch/v1<br /> kind: Job<br /> metadata:<br /> name: my-job<br /> spec:<br /> template:<br /> spec:<br /> containers:<br /> - name: my-container<br /> image: busybox<br /> command: ["echo", "Hello, Kubernetes!"]<br /> restartPolicy: Never<br /> backoffLimit: 4[/CODE]</td></tr><tr><td> <h3>9. CronJob</h3> [CODE=yaml]apiVersion: batch/v1<br /> kind: CronJob<br /> metadata:<br /> name: my-cronjob<br /> spec:<br /> schedule: "*/1 * * * *"<br /> jobTemplate:<br /> spec:<br /> template:<br /> spec:<br /> containers:<br /> - name: my-container<br /> image: busybox<br /> command: ["echo", "Hello, Kubernetes!"]<br /> restartPolicy: OnFailure[/CODE]</td><td> <h3>10. Namespace</h3> [CODE=yaml]apiVersion: v1<br /> kind: Namespace<br /> metadata:<br /> name: my-namespace[/CODE]</td></tr><tr><td> <h3>11. Ingress</h3> [CODE=yaml]apiVersion: networking.k8s.io/v1<br /> kind: Ingress<br /> metadata:<br /> name: my-ingress<br /> spec:<br /> rules:<br /> - host: my-app.com<br /> http:<br /> paths:<br /> - path: /<br /> pathType: Prefix<br /> backend:<br /> service:<br /> name: my-service<br /> port:<br /> number: 80[/CODE]</td><td> <h3>12. Role</h3> [CODE=yaml]apiVersion: rbac.authorization.k8s.io/v1<br /> kind: Role<br /> metadata:<br /> name: my-role<br /> namespace: my-namespace<br /> rules:<br /> - apiGroups: [""]<br /> resources: ["pods"]<br /> verbs: ["get", "list", "create"][/CODE]</td></tr><tr><td> <h3>13. RoleBinding</h3> [CODE=yaml]apiVersion: rbac.authorization.k8s.io/v1<br /> kind: RoleBinding<br /> metadata:<br /> name: my-rolebinding<br /> namespace: my-namespace<br /> subjects:<br /> - kind: User<br /> name: my-user<br /> apiGroup: rbac.authorization.k8s.io<br /> roleRef:<br /> kind: Role<br /> name: my-role<br /> apiGroup: rbac.authorization.k8s.io[/CODE]</td><td> <h3>14. ServiceAccount</h3> [CODE=yaml]apiVersion: v1<br /> kind: ServiceAccount<br /> metadata:<br /> name: my-serviceaccount[/CODE]</td></tr><tr><td> <h3>15. Resource Quota</h3> [CODE=yaml]apiVersion: v1<br /> kind: ResourceQuota<br /> metadata:<br /> name: my-resourcequota<br /> spec:<br /> hard:<br /> requests.cpu: "1"<br /> requests.memory: 1Gi<br /> limits.cpu: "2"<br /> limits.memory: 2Gi[/CODE]</td><td> <h3>16. HorizontalPodAutoscaler (HPA)</h3> [CODE=yaml]apiVersion: autoscaling/v2<br /> kind: HorizontalPodAutoscaler<br /> metadata:<br /> name: my-hpa<br /> spec:<br /> scaleTargetRef:<br /> apiVersion: apps/v1<br /> kind: Deployment<br /> name: my-deployment<br /> minReplicas: 1<br /> maxReplicas: 10<br /> metrics:<br /> - type: Resource<br /> resource:<br /> name: cpu<br /> target:<br /> type: Utilization<br /> averageUtilization: 50[/CODE]</td></tr><tr><td> <h3>17. NetworkPolicy</h3> [CODE=yaml]apiVersion: networking.k8s.io/v1<br /> kind: NetworkPolicy<br /> metadata:<br /> name: my-networkpolicy<br /> spec:<br /> podSelector:<br /> matchLabels:<br /> app: my-app<br /> policyTypes:<br /> - Ingress<br /> - Egress<br /> ingress:<br /> - from:<br /> - podSelector:<br /> matchLabels:<br /> role: frontend<br /> egress:<br /> - to:<br /> - ipBlock:<br /> cidr: 10.0.0.0/24[/CODE]</td><td></td></tr></table><p></p><h3><strong><span style="color: rgb(226, 80, 65)">Key Fields to Remember</span></strong></h3> <ul> <li data-xf-list-type="ul"><strong>apiVersion:</strong> The API version<em> (e.g., v1, apps/v1, batch/v1).</em></li> <li data-xf-list-type="ul"><strong>kind:</strong> The type of resource <em>(e.g., Pod, Deployment, Service).</em></li> <li data-xf-list-type="ul"><strong>metadata:</strong> Includes name, labels, and namespace.</li> <li data-xf-list-type="ul"><strong>spec:</strong> Defines the desired state of the resource.</li> <li data-xf-list-type="ul"><strong>selector:</strong> Used to match resources<em> (e.g., in Deployments and Services).</em></li> <li data-xf-list-type="ul"><strong>template:</strong> Defines the Pod template in Deployments and Jobs.</li> <li data-xf-list-type="ul"><strong>containers:</strong> List of containers in a Pod.</li> <li data-xf-list-type="ul"><strong>ports:</strong> Exposes container ports.</li> <li data-xf-list-type="ul"><strong>env:</strong> Environment variables for containers.</li> <li data-xf-list-type="ul"><strong>volumes:</strong> Storage volumes for Pods.</li> </ul><p></p><ol> <li data-xf-list-type="ol">ඉහත සඳහන් දේ මුද්රණය කරන්න හෝ practice කරන අතරතුර විවෘතව තබා ගන්න.</li> <li data-xf-list-type="ol">ඔබේ YAML files cross-check කිරීමට එය භාවිතා කරන්න.</li> <li data-xf-list-type="ol">ඔබ ඉගෙන ගන්නා පරිදි ඔබේම සටහන් හෝ උදාහරණ එක් කරන්න.</li> </ol></blockquote><p></p>
[QUOTE="6h057, post: 30530399, member: 587218"] Hope the following helps: [TABLE] [TR] [TD][HEADING=2]1. Pod[/HEADING] [CODE=yaml]apiVersion: v1 kind: Pod metadata: name: my-pod labels: app: my-app spec: containers: - name: my-container image: nginx ports: - containerPort: 80 env: - name: ENV_VAR value: "value" volumeMounts: - name: my-volume mountPath: /path/in/container volumes: - name: my-volume emptyDir: {}[/CODE][/TD] [TD][HEADING=2][LEFT]2. Deployment[/LEFT][/HEADING] [CODE=yaml]apiVersion: apps/v1 kind: Deployment metadata: name: my-deployment spec: replicas: 3 selector: matchLabels: app: my-app template: metadata: labels: app: my-app spec: containers: - name: my-container image: nginx ports: - containerPort: 80[/CODE][/TD] [/TR] [TR] [TD][HEADING=2]3. Service[/HEADING] [CODE=yaml]apiVersion: v1 kind: Service metadata: name: my-service spec: selector: app: my-app ports: - protocol: TCP port: 80 targetPort: 9376 type: ClusterIP[/CODE][/TD] [TD][HEADING=2]4. ConfigMap[/HEADING] [CODE=yaml]apiVersion: v1 kind: ConfigMap metadata: name: my-config data: key1: value1 key2: value2[/CODE][/TD] [/TR] [TR] [TD][HEADING=2]5. Secret[/HEADING] [CODE=yaml]apiVersion: v1 kind: Secret metadata: name: my-secret type: Opaque data: username: <base64-encoded> password: <base64-encoded>[/CODE][/TD] [TD][HEADING=2]6. PersistentVolume (PV)[/HEADING] [CODE=yaml]apiVersion: v1 kind: PersistentVolume metadata: name: my-pv spec: capacity: storage: 10Gi accessModes: - ReadWriteOnce hostPath: path: /mnt/data[/CODE][/TD] [/TR] [TR] [TD][HEADING=2]7. PersistentVolumeClaim (PVC)[/HEADING] [CODE=yaml]apiVersion: v1 kind: PersistentVolumeClaim metadata: name: my-pvc spec: accessModes: - ReadWriteOnce resources: requests: storage: 5Gi[/CODE][/TD] [TD][HEADING=2]8. Job[/HEADING] [CODE=yaml]apiVersion: batch/v1 kind: Job metadata: name: my-job spec: template: spec: containers: - name: my-container image: busybox command: ["echo", "Hello, Kubernetes!"] restartPolicy: Never backoffLimit: 4[/CODE][/TD] [/TR] [TR] [TD][HEADING=2]9. CronJob[/HEADING] [CODE=yaml]apiVersion: batch/v1 kind: CronJob metadata: name: my-cronjob spec: schedule: "*/1 * * * *" jobTemplate: spec: template: spec: containers: - name: my-container image: busybox command: ["echo", "Hello, Kubernetes!"] restartPolicy: OnFailure[/CODE][/TD] [TD][HEADING=2]10. Namespace[/HEADING] [CODE=yaml]apiVersion: v1 kind: Namespace metadata: name: my-namespace[/CODE][/TD] [/TR] [TR] [TD][HEADING=2]11. Ingress[/HEADING] [CODE=yaml]apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-ingress spec: rules: - host: my-app.com http: paths: - path: / pathType: Prefix backend: service: name: my-service port: number: 80[/CODE][/TD] [TD][HEADING=2]12. Role[/HEADING] [CODE=yaml]apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: my-role namespace: my-namespace rules: - apiGroups: [""] resources: ["pods"] verbs: ["get", "list", "create"][/CODE][/TD] [/TR] [TR] [TD][HEADING=2]13. RoleBinding[/HEADING] [CODE=yaml]apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: my-rolebinding namespace: my-namespace subjects: - kind: User name: my-user apiGroup: rbac.authorization.k8s.io roleRef: kind: Role name: my-role apiGroup: rbac.authorization.k8s.io[/CODE][/TD] [TD][HEADING=2]14. ServiceAccount[/HEADING] [CODE=yaml]apiVersion: v1 kind: ServiceAccount metadata: name: my-serviceaccount[/CODE][/TD] [/TR] [TR] [TD][HEADING=2]15. Resource Quota[/HEADING] [CODE=yaml]apiVersion: v1 kind: ResourceQuota metadata: name: my-resourcequota spec: hard: requests.cpu: "1" requests.memory: 1Gi limits.cpu: "2" limits.memory: 2Gi[/CODE][/TD] [TD][HEADING=2]16. HorizontalPodAutoscaler (HPA)[/HEADING] [CODE=yaml]apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: my-hpa spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: my-deployment minReplicas: 1 maxReplicas: 10 metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 50[/CODE][/TD] [/TR] [TR] [TD][HEADING=2]17. NetworkPolicy[/HEADING] [CODE=yaml]apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: my-networkpolicy spec: podSelector: matchLabels: app: my-app policyTypes: - Ingress - Egress ingress: - from: - podSelector: matchLabels: role: frontend egress: - to: - ipBlock: cidr: 10.0.0.0/24[/CODE][/TD] [TD][/TD] [/TR] [/TABLE] [HEADING=2][B][COLOR=rgb(226, 80, 65)]Key Fields to Remember[/COLOR][/B][/HEADING] [LIST] [*][B]apiVersion:[/B] The API version[I] (e.g., v1, apps/v1, batch/v1).[/I] [*][B]kind:[/B] The type of resource [I](e.g., Pod, Deployment, Service).[/I] [*][B]metadata:[/B] Includes name, labels, and namespace. [*][B]spec:[/B] Defines the desired state of the resource. [*][B]selector:[/B] Used to match resources[I] (e.g., in Deployments and Services).[/I] [*][B]template:[/B] Defines the Pod template in Deployments and Jobs. [*][B]containers:[/B] List of containers in a Pod. [*][B]ports:[/B] Exposes container ports. [*][B]env:[/B] Environment variables for containers. [*][B]volumes:[/B] Storage volumes for Pods. [/LIST] [LIST=1] [*]ඉහත සඳහන් දේ මුද්රණය කරන්න හෝ practice කරන අතරතුර විවෘතව තබා ගන්න. [*]ඔබේ YAML files cross-check කිරීමට එය භාවිතා කරන්න. [*]ඔබ ඉගෙන ගන්නා පරිදි ඔබේම සටහන් හෝ උදාහරණ එක් කරන්න. [/LIST] [/QUOTE]
Insert quotes…
Verification
Hathara warak wissa keeyada? (Hathara wadi karanna 20)
Post reply
Top
Bottom