Kubernetes dalam PHP

王林
Lepaskan: 2023-05-26 22:12:01
asal
1475 orang telah melayarinya

Kubernetes ialah alat orkestrasi dan pengurusan kontena yang sangat popular sejak beberapa tahun kebelakangan ini Sebagai bahasa pembangunan web yang sangat popular, PHP juga perlu menyesuaikan diri dengan aliran ini dan mengurus aplikasinya sendiri melalui Kubernetes. Dalam artikel ini, kami akan meneroka cara menggunakan Kubernetes dengan aplikasi PHP.

1. Gambaran Keseluruhan Kubernetes

Kubernetes ialah alat orkestrasi dan pengurusan kontena yang dibangunkan oleh Google untuk mengurus aplikasi kontena. Kubernetes mengautomasikan penggunaan, penskalaan dan pengurusan bekas, dan ia menyediakan platform berskala tinggi yang boleh mengendalikan aplikasi kontena dengan cepat dan boleh dipercayai.

Kubernetes mempunyai konsep utama berikut:

  1. Pod: unit penggunaan terkecil Kubernetes, termasuk satu atau lebih bekas, rangkaian perkongsian dan sumber storan.
  2. Perkhidmatan: Entiti serentak yang boleh menemui dan memuatkan perkhidmatan aplikasi baki secara automatik.
  3. Pengawal Replikasi: digunakan untuk mengekalkan bilangan salinan set Pod untuk mencapai pengimbangan beban dan pemulihan kerosakan.
  4. Deployment: Digunakan untuk mengurus proses keluaran aplikasi dan boleh mengawal penempatan, pengembangan, peningkatan dan rollback aplikasi.

2. Sebarkan aplikasi PHP menggunakan Kubernetes

  1. Menulis Fail Docker

Pertama, kita perlu menulis fail Fail Docker untuk mencipta imej daripada aplikasi PHP. Berikut ialah contoh mudah:

FROM php:7.2-apache
COPY app/ /var/www/html/
Salin selepas log masuk

Fail Docker ini menggunakan imej PHP 7.2-apache rasmi sebagai imej asas dan menyalin aplikasi kami ke direktori /var/www/html.

  1. Bina imej Docker dan muat naik ke Docker Hub

Gunakan arahan berikut untuk membina imej Docker:

$ docker build -t username/appname:version .
Salin selepas log masuk

di mana nama pengguna ialah Docker anda Nama pengguna hab , nama aplikasi ialah nama aplikasi anda, versi ialah nombor versi aplikasi anda dan titik terakhir menunjukkan direktori semasa di mana Fail Docker berada.

Seterusnya, muat naik imej Docker ke Docker Hub:

$ docker push username/appname:version
Salin selepas log masuk

Di sini anda perlu mencipta Repositori pada Docker Hub terlebih dahulu dan tetapkan bukti kelayakan log masuk.

  1. Buat Penerapan Kubernetes

Dalam Kubernetes, Deployment digunakan untuk mengurus proses keluaran permohonan. Untuk membuat Deployment, fail YAML diperlukan untuk menerangkan konfigurasi Deployment. Berikut ialah contoh mudah:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: appname
spec:
  replicas: 3
  selector:
    matchLabels:
      app: appname
  template:
    metadata:
      labels:
        app: appname
    spec:
      containers:
      - name: appname
        image: username/appname:version
Salin selepas log masuk

Fail konfigurasi Deployment ini digunakan untuk menggunakan replika=3 Pod Setiap Pod mengandungi bekas bernama appname, menggunakan imej Docker yang dimuat naik sebelum ini ke Docker Hub.

Sekarang gunakan arahan berikut untuk mencipta Deployment:

$ kubectl apply -f deployment.yaml
Salin selepas log masuk
  1. Cipta Perkhidmatan Kubernetes

Dalam Kubernetes, Perkhidmatan digunakan untuk mendedahkan perkhidmatan aplikasi. Terdapat banyak jenis perkhidmatan, seperti ClusterIP, NodePort, LoadBalancer, dll. Untuk kesederhanaan, di sini kami menggunakan Perkhidmatan jenis ClusterIP. Berikut ialah contoh mudah:

apiVersion: v1
kind: Service
metadata:
  name: appname
spec:
  selector:
    app: appname
  ports:
  - name: http
    protocol: TCP
    port: 80
    targetPort: 80
Salin selepas log masuk

Fail konfigurasi Perkhidmatan ini menggunakan Perkhidmatan jenis ClusterIP untuk mendedahkan perkhidmatan aplikasi Gunakan Pemilih bernama appname untuk mencari Pod yang sepadan dan mengikatnya pada port 80 bekas .

Sekarang gunakan arahan berikut untuk mencipta Perkhidmatan:

$ kubectl apply -f service.yaml
Salin selepas log masuk
  1. Lihat perkhidmatan aplikasi

Akhir sekali, anda boleh menggunakan arahan berikut untuk melihat perkhidmatan aplikasi:

$ kubectl get service
Salin selepas log masuk

Arahan ini akan menyenaraikan semua Perkhidmatan dan memaparkan ClusterIP dan port mereka.

Pada ketika ini, kami telah berjaya menggunakan aplikasi PHP menggunakan Kubernetes.

3. Ringkasan

Artikel ini memperkenalkan proses penggunaan Kubernetes dalam aplikasi PHP, termasuk mencipta Dockerfile, membina imej Docker, memuat naik ke Docker Hub, mencipta Kubernetes Deployment and Service, dsb. Dengan menggunakan Kubernetes, kami boleh mengurus dan menskalakan aplikasi kami dengan lebih mudah.

Atas ialah kandungan terperinci Kubernetes dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!