Bagaimana untuk membina platform orkestrasi kontena yang selamat dan boleh dipercayai di Linux?

PHPz
Lepaskan: 2023-08-02 21:27:16
asal
848 orang telah melayarinya

Bagaimana untuk membina platform orkestrasi kontena yang selamat dan boleh dipercayai di Linux?

Pengenalan:
Teknologi kontena telah digunakan dan dibangunkan secara meluas sejak beberapa tahun kebelakangan ini. Kemunculannya telah menjadikan penggunaan dan peningkatan aplikasi lebih fleksibel dan cekap. Platform orkestrasi kontena boleh meningkatkan lagi automasi dan kebolehpercayaan pengurusan kontena. Artikel ini akan memperkenalkan cara membina platform orkestrasi kontena yang selamat dan boleh dipercayai di Linux dan memberikan contoh kod yang berkaitan.

  1. Pasang Docker
    Docker ialah enjin kontena sumber terbuka yang boleh membungkus aplikasi secara automatik dalam bekas untuk penggunaan dan pengendalian yang mudah. Sebelum membina platform orkestrasi kontena, anda perlu memasang Docker pada Linux.

Arahan untuk memasang Docker pada Ubuntu adalah seperti berikut:

sudo apt update
sudo apt install docker.io
Salin selepas log masuk
  1. Pasang Kubernetes
    Kubernetes ialah platform orkestrasi kontena sumber terbuka yang boleh digunakan untuk mengurus dan menjadualkan bekas, menyediakan ketersediaan tinggi, penskalaan anjal dan penggunaan kontena automatik. Sebelum membina platform orkestrasi kontena, anda perlu memasang Kubernetes.

Arahan untuk memasang Kubernetes pada Ubuntu adalah seperti berikut:

sudo apt update
sudo apt install kubeadm kubelet kubectl
Salin selepas log masuk
  1. Inisialisasikan gugusan Kubernetes
    Sebelum membina platform orkestrasi kontena, anda perlu memulakan gugusan Kubernetes. Mula-mula, jalankan arahan berikut pada nod induk untuk permulaan:

    sudo kubeadm init
    Salin selepas log masuk

    Kemudian, mengikut output terminal, simpan token yang dijana. Seterusnya, jalankan arahan berikut pada nod pekerja untuk menyertai kluster:

    sudo kubeadm join <master-ip>:<master-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
    Salin selepas log masuk

    di mana, <master-ip>是主节点的IP地址,<master-port>是主节点的端口号,<token><hash> ialah token dan cincang yang dijana semasa memulakan nod induk.

  2. Pasang pemalam rangkaian kontena
    Seterusnya, kita perlu memasang pemalam rangkaian kontena untuk membolehkan komunikasi antara bekas. Dalam artikel ini, kami memilih untuk memasang pemalam rangkaian Calico.

Jalankan arahan berikut pada nod induk untuk memasang:

kubectl create -f https://docs.projectcalico.org/v3.14/manifests/calico.yaml
Salin selepas log masuk
  1. Kerahkan aplikasi kontena
    Kini, kami telah membina platform orkestrasi kontena yang selamat dan boleh dipercayai serta boleh menggunakan aplikasi kontena. Pertama, anda perlu menulis fail YAML yang mengandungi konfigurasi aplikasi kontena.

Contoh fail YAML adalah seperti berikut:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
      - name: my-app-container
        image: my-app-image:latest
        ports:
        - containerPort: 80
Salin selepas log masuk

Kemudian, jalankan arahan berikut untuk digunakan:

kubectl apply -f my-app.yaml
Salin selepas log masuk
  1. Pemantauan dan pengurusan log
    Dalam platform orkestrasi kontena, pemantauan dan pengurusan log adalah bahagian yang sangat penting. Anda boleh menggunakan Prometheus dan Grafana untuk pemantauan, dan EFK (Elasticsearch+Fluentd+Kibana) untuk pengurusan log. Berikut ialah contoh mudah untuk rujukan:

Deploy Prometheus dan Grafana:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.28.0/deploy/mandatory.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.28.0/deploy/provider/cloud-generic.yaml
Salin selepas log masuk

Deploy EFK:

kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/es-statefulset.yaml
kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/es-service.yaml
kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml
kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-ds.yaml
kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/kibana-service.yaml
Salin selepas log masuk

Kesimpulan:
Artikel ini memperkenalkan cara membina platform orkestrasi kontena yang selamat dan boleh dipercayai di Linux. Dengan memasang Docker dan Kubernetes dan menggunakan pemalam rangkaian Calico, anda boleh mencapai ketersediaan tinggi dan penskalaan elastik bekas. Selain itu, dengan menggunakan Prometheus dan Grafana untuk pemantauan, dan menggunakan EFK untuk pengurusan log, kebolehpercayaan dan keselamatan pengurusan kontena boleh dipertingkatkan. Saya harap artikel ini akan membantu semua orang dalam membina platform orkestrasi kontena.

Atas ialah kandungan terperinci Bagaimana untuk membina platform orkestrasi kontena yang selamat dan boleh dipercayai di Linux?. 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