Rumah pangkalan data Redis Penjelasan terperinci tentang aplikasi Redis dalam Kubernetes

Penjelasan terperinci tentang aplikasi Redis dalam Kubernetes

Jun 20, 2023 am 11:17 AM
redis permohonan kubernetes

Kubernetes ialah sistem orkestrasi kontena moden. Skala dan kebolehpercayaannya yang kukuh sudah pasti sangat penting untuk pembangunan dan operasi serta kakitangan penyelenggaraan. Salah satu aplikasi utama ialah Redis Sebagai gabungan cache dan pangkalan data berprestasi tinggi, aplikasi Redis dalam Kubernetes telah menarik lebih banyak perhatian. Artikel ini akan memperkenalkan aplikasi Redis dalam Kubernetes secara terperinci dan menggunakan kes praktikal untuk menggambarkan cara menggunakan, mengurus dan memantau aplikasi kelompok Redis pada platform Kubernetes.

  1. Pengenalan kepada Redis

Redis ialah pangkalan data NoSQL berprestasi tinggi yang juga digunakan secara meluas sebagai perkhidmatan caching. Ia menyokong pelbagai struktur data, termasuk rentetan, cincang, senarai, set, set tersusun, dsb. Redis mencapai prestasi tinggi dan masa tindak balas yang pantas dengan menyimpan data dalam ingatan. Berbanding dengan pangkalan data tradisional yang disimpan pada cakera, Redis boleh bertindak balas kepada permintaan pertanyaan dengan lebih pantas dan boleh mengendalikan konkurensi tinggi dan sejumlah besar operasi tulis dengan baik.

  1. Pengenalan kepada Kubernetes

Kubernetes ialah sistem orkestrasi kontena untuk mengatur, menskala dan mengurus kontena Docker. Ia menyediakan pelbagai ciri, seperti pengimbangan beban, penemuan perkhidmatan, penskalaan automatik dan naik taraf rolling, dsb. Ciri ini boleh menjadikan penggunaan dan pengurusan bekas Docker lebih mudah dan lebih dipercayai.

  1. Menggunakan Redis dalam Kubernetes

Kluster Redis boleh digunakan dalam Kubernetes dengan menggunakan StatefulSet dan Deployment. StatefulSet ialah penyelesaian penggunaan kluster stateful dalam Kubernetes, sesuai untuk aplikasi teratur yang memerlukan pengenalan unik dan identiti rangkaian yang stabil. Penerapan lebih sesuai untuk aplikasi tanpa kewarganegaraan, dan ia boleh mengurus operasi dengan lebih fleksibel seperti penciptaan, kemas kini dan pemadaman bekas.

Apabila menggunakan gugusan Redis, anda perlu memberi perhatian kepada isu berikut:

  • Data dalam bekas perlu disimpan secara berterusan
  • Keperluan Redis untuk menggunakan No. port tertentu untuk berkomunikasi;
  • Semua nod dalam kelompok perlu boleh mengakses satu sama lain.

Mari perkenalkan secara terperinci cara menggunakan StatefulSet dan Deployment untuk menggunakan Redis dalam Kubernetes.

3.1 Gunakan StatefulSet untuk menggunakan Redis

Apabila menggunakan Redis menggunakan StatefulSet, anda perlu membuat persediaan berikut:

  • Buat volum storan untuk storan berterusan data Redis ;
  • tulis fail konfigurasi Redis;
  • Contoh fail konfigurasi Redis:

1

2

3

4

5

6

7

8

bind 0.0.0.0

port 6379

cluster-enabled yes

cluster-config-file nodes.conf

cluster-node-timeout 15000

cluster-announce-ip $(MY_POD_IP)

cluster-announce-port 6379

cluster-announce-bus-port 6380

Salin selepas log masuk
Salin selepas log masuk

Contoh fail penerangan StatefulSet:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

apiVersion: apps/v1beta2

kind: StatefulSet

metadata:

  name: redis-cluster

spec:

  serviceName: "redis-cluster"

  replicas: 3

  selector:

    matchLabels:

      app: redis-cluster

  template:

    metadata:

      labels:

        app: redis-cluster

    spec:

      containers:

      - name: redis

        image: redis:latest

        args: ["redis-server", "/redis-config/redis.conf"]

        ports:

        - containerPort: 6379

          name: redis

        volumeMounts:

        - name: redis-data

          mountPath: /data

        - name: redis-config

          mountPath: /redis-config

        readinessProbe:

          tcpSocket:

            port: redis

          initialDelaySeconds: 5

          periodSeconds: 10

        env:

        - name: MY_POD_IP

          valueFrom:

            fieldRef:

              fieldPath: status.podIP

      volumes:

      - name: redis-data

        persistentVolumeClaim:

          claimName: redis-data

      - name: redis-config

        configMap:

          name: redis-config

  volumeClaimTemplates:

  - metadata:

      name: redis-data

    spec:

      accessModes: [ "ReadWriteOnce" ]

      resources:

        requests:

          storage: 1Gi

Salin selepas log masuk

Dengan mencipta volum storan berterusan bernama redis-data, dan Melekapkannya pada / direktori data bekas Redis memastikan bahawa data Redis masih wujud apabila bekas itu dipadamkan atau dibuat semula. Replika parameter dalam fail penerangan StatefulSet mentakrifkan bilangan kejadian Redis untuk dimulakan.

3.2 Gunakan Redis menggunakan kaedah Deployment

Apabila menggunakan Redis menggunakan kaedah Deployment, anda perlu membuat persediaan berikut:

Tulis fail konfigurasi Redis;
    Tulis fail penerangan Deployment.
  • Contoh fail konfigurasi Redis:
  • 1

    2

    3

    4

    5

    6

    7

    8

    bind 0.0.0.0

    port 6379

    cluster-enabled yes

    cluster-config-file nodes.conf

    cluster-node-timeout 15000

    cluster-announce-ip $(MY_POD_IP)

    cluster-announce-port 6379

    cluster-announce-bus-port 6380

    Salin selepas log masuk
    Salin selepas log masuk
Contoh fail perihalan agihan:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

apiVersion: apps/v1

kind: Deployment

metadata:

  name: redis

spec:

  selector:

    matchLabels:

      app: redis

  replicas: 3

  template:

    metadata:

      labels:

        app: redis

    spec:

      containers:

      - name: redis

        image: redis:latest

        args: ["redis-server", "/redis-config/redis.conf"]

        ports:

        - containerPort: 6379

          name: redis

        volumeMounts:

        - name: redis-config

          mountPath: /redis-config

        readinessProbe:

          tcpSocket:

            port: redis

          initialDelaySeconds: 5

          periodSeconds: 10

        env:

        - name: MY_POD_IP

          valueFrom:

            fieldRef:

              fieldPath: status.podIP

      volumes:

      - name: redis-config

        configMap:

          name: redis-config

Salin selepas log masuk

Dalam fail penerangan Deployment, tetapkan bilangan kejadian bekas Redis kepada 3 , gunakan configMap melekapkan fail konfigurasi Redis.

Urus gugusan Redis dalam Kubernetes

  1. Menguruskan gugusan Redis dalam Kubernetes perlu menyelesaikan masalah berikut:

Bagaimana untuk menjalankan antara- komunikasi kelompok;

    Cara melakukan pengimbangan beban;
  • 4.1 Komunikasi antara gugusan
  • Memandangkan Redis memerlukan komunikasi dan penyegerakan data dalam gugusan, kami perlu membuat pelarasan yang sesuai pada gugusan dalam Kubernetes. Khususnya, anda hanya perlu menambah beberapa pembolehubah persekitaran khas pada fail penerangan StatefulSet atau fail penerangan Deployment untuk merealisasikan interkoneksi dan penyegerakan data gugusan Redis.
Pembolehubah persekitaran dalam fail perihalan Redis adalah seperti berikut:

1

2

3

4

5

6

7

8

- name: POD_NAMESPACE

  valueFrom:

    fieldRef:

      fieldPath: metadata.namespace

- name: STATEFUL_SET_NAME

  value: "redis-cluster"

- name: MASTER_NAME

  value: "redis-cluster-0.redis-cluster.headless.default.svc.cluster.local"

Salin selepas log masuk

Antaranya, POD_NAMESPACE dan STATEFUL_SET_NAME digunakan untuk menetapkan ruang nama dan nama set status gugusan Redis. MASTER_NAME ialah nama nod Induk yang digunakan untuk menetapkan gugusan Redis.

4.2 Pengimbangan Beban

Dalam Kubernetes, anda boleh menggunakan Perkhidmatan untuk mengikat berbilang nod gugusan Redis ke IP dan port yang sama. Dengan cara ini, gugusan Redis boleh dimuatkan seimbang dalam gugusan Kubernetes sambil mengekalkan ketersediaan gugusan yang tinggi.

1

2

3

4

5

6

7

8

9

10

11

12

apiVersion: v1

kind: Service

metadata:

  name: redis

spec:

  selector:

    app: redis

  ports:

    - name: redis-service

      port: 6379

      targetPort: 6379

  clusterIP: None

Salin selepas log masuk
Dalam fail perihalan Perkhidmatan, clusterIP ditetapkan kepada Tiada, yang akan mencipta Perkhidmatan Tanpa Kepala ini tidak akan mencipta ClusterIP untuk nod Redis, tetapi memajukan permintaan terus ke setiap nod IP. Ini membolehkan pengimbangan beban kelompok dalam Kubernetes sambil mengekalkan ketersediaan tinggi kelompok Redis.

4.3 Pemantauan dan nyahpepijat Redis

Terdapat banyak cara untuk memantau dan nyahpepijat gugusan Redis dalam Kubernetes. Sebagai contoh, anda boleh menggunakan alat pemantauan seperti Papan Pemuka Kubernetes atau Prometheus untuk memantau dan log status berjalan Redis dalam masa nyata. Pada masa yang sama, anda boleh menggunakan alat baris arahan Kubectl untuk mengurus gugusan Redis, seperti melihat status gugusan, menambah atau memadam nod dan operasi lain.

  1. Ringkasan

Dengan menggunakan StatefulSet dan Deployment dalam Kubernetes, kami boleh menggunakan gugusan Redis dalam Kubernetes dengan mudah dan memastikan pengimbangan beban dan ketersediaan yang tinggi. Kubernetes menyediakan pelbagai alatan pengurusan yang membolehkan kami mengurus penciptaan, kemas kini dan pemadaman gugusan Redis dengan lebih mudah. Dalam persekitaran pengeluaran sebenar, ia perlu dikonfigurasikan dan diselaraskan mengikut keperluan perniagaan tertentu untuk memastikan kestabilan dan prestasi tinggi kelompok Redis.

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

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Penyelesaian kepada ralat 0x80242008 semasa memasang Windows 11 10.0.22000.100 Penyelesaian kepada ralat 0x80242008 semasa memasang Windows 11 10.0.22000.100 May 08, 2024 pm 03:50 PM

1. Mulakan menu [Start], masukkan [cmd], klik kanan [Command Prompt], dan pilih Run as [Administrator]. 2. Masukkan arahan berikut mengikut turutan (salin dan tampal dengan teliti): SCconfigwuauservstart=auto, tekan Enter SCconfigbitsstart=auto, tekan Enter SCconfigcryptsvcstart=auto, tekan Enter SCconfigtrustedinstallerstart=auto, tekan Enter SCconfigwuauservtype=share, tekan Enter netstopwuauserv , tekan enter netstopcryptS

Strategi dan pengoptimuman caching API Golang Strategi dan pengoptimuman caching API Golang May 07, 2024 pm 02:12 PM

Strategi caching dalam GolangAPI boleh meningkatkan prestasi dan mengurangkan beban pelayan Strategi yang biasa digunakan ialah: LRU, LFU, FIFO dan TTL. Teknik pengoptimuman termasuk memilih storan cache yang sesuai, caching hierarki, pengurusan ketidaksahihan dan pemantauan dan penalaan. Dalam kes praktikal, cache LRU digunakan untuk mengoptimumkan API untuk mendapatkan maklumat pengguna daripada pangkalan data Data boleh diambil dengan cepat daripada cache Jika tidak, cache boleh dikemas kini selepas mendapatkannya daripada pangkalan data.

Mekanisme caching dan amalan aplikasi dalam pembangunan PHP Mekanisme caching dan amalan aplikasi dalam pembangunan PHP May 09, 2024 pm 01:30 PM

Dalam pembangunan PHP, mekanisme caching meningkatkan prestasi dengan menyimpan sementara data yang kerap diakses dalam memori atau cakera, dengan itu mengurangkan bilangan akses pangkalan data. Jenis cache terutamanya termasuk memori, fail dan cache pangkalan data. Caching boleh dilaksanakan dalam PHP menggunakan fungsi terbina dalam atau perpustakaan pihak ketiga, seperti cache_get() dan Memcache. Aplikasi praktikal biasa termasuk caching hasil pertanyaan pangkalan data untuk mengoptimumkan prestasi pertanyaan dan caching halaman output untuk mempercepatkan pemaparan. Mekanisme caching berkesan meningkatkan kelajuan tindak balas laman web, meningkatkan pengalaman pengguna dan mengurangkan beban pelayan.

Bagaimana untuk menggunakan cache Redis dalam penomboran tatasusunan PHP? Bagaimana untuk menggunakan cache Redis dalam penomboran tatasusunan PHP? May 01, 2024 am 10:48 AM

Menggunakan cache Redis boleh mengoptimumkan prestasi halaman tatasusunan PHP. Ini boleh dicapai melalui langkah berikut: Pasang klien Redis. Sambung ke pelayan Redis. Cipta data cache dan simpan setiap halaman data ke dalam cincangan Redis dengan kunci "halaman:{page_number}". Dapatkan data daripada cache dan elakkan operasi mahal pada tatasusunan besar.

Bagaimana untuk menaik taraf Win11 English 21996 kepada Simplified Chinese 22000_Cara untuk menaik taraf Win11 English 21996 kepada Simplified Chinese 22000 Bagaimana untuk menaik taraf Win11 English 21996 kepada Simplified Chinese 22000_Cara untuk menaik taraf Win11 English 21996 kepada Simplified Chinese 22000 May 08, 2024 pm 05:10 PM

Mula-mula anda perlu menetapkan bahasa sistem kepada paparan Bahasa Cina Mudah dan mulakan semula. Sudah tentu, jika anda telah menukar bahasa paparan kepada Bahasa Cina Ringkas sebelum ini, anda boleh melangkau langkah ini sahaja. Seterusnya, mula mengendalikan pendaftaran, regedit.exe, navigasi terus ke HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNlsLanguage dalam bar navigasi kiri atau bar alamat atas, dan kemudian ubah suai nilai kunci InstallLanguage dan nilai kunci Lalai kepada 0804 (jika anda ingin menukarnya ke Bahasa Inggeris en- kami, anda perlu Mula-mula tetapkan bahasa paparan sistem kepada en-us, mulakan semula sistem dan kemudian tukar semuanya kepada 0409) Anda mesti memulakan semula sistem pada ketika ini.

Bagaimana untuk mencari fail kemas kini yang dimuat turun oleh Win11_Share lokasi fail kemas kini yang dimuat turun oleh Win11 Bagaimana untuk mencari fail kemas kini yang dimuat turun oleh Win11_Share lokasi fail kemas kini yang dimuat turun oleh Win11 May 08, 2024 am 10:34 AM

1. Mula-mula, klik dua kali ikon [PC ini] pada desktop untuk membukanya. 2. Kemudian klik dua kali butang tetikus kiri untuk memasuki [pemacu C]. 3. Kemudian cari folder [windows] dalam pemacu C dan klik dua kali untuk masuk. 4. Selepas memasukkan folder [windows], cari folder [SoftwareDistribution]. 5. Selepas masuk, cari folder [muat turun], yang mengandungi semua fail muat turun dan kemas kini win11. 6. Jika kita ingin memadam fail-fail ini, hanya padamkannya terus dalam folder ini.

Aplikasi caching PHP Redis dan amalan terbaik Aplikasi caching PHP Redis dan amalan terbaik May 04, 2024 am 08:33 AM

Redis ialah cache nilai kunci berprestasi tinggi. Sambungan PHPRedis menyediakan API untuk berinteraksi dengan pelayan Redis. Gunakan langkah berikut untuk menyambung ke Redis, menyimpan dan mendapatkan semula data: Sambung: Gunakan kelas Redis untuk menyambung ke pelayan. Penyimpanan: Gunakan kaedah yang ditetapkan untuk menetapkan pasangan nilai kunci. Retrieval: Gunakan kaedah get untuk mendapatkan nilai kunci.

Apl Buku tidak berfungsi pada iPhone: Cara membetulkannya Apl Buku tidak berfungsi pada iPhone: Cara membetulkannya May 03, 2024 pm 09:07 PM

Tidak boleh membaca buku kegemaran anda dalam apl Buku? Seperti apl asli lain pada iOS, apl Buku juga mungkin menghadapi beberapa isu. Jika apl Buku tidak berfungsi dengan betul, anda harus bermula dengan menutup paksa apl Buku. Jika kaedah mudah ini tidak menyelesaikan aplikasi, mengikut langkah yang selebihnya harus menyelesaikan isu tersebut. Betulkan 1 – Paksa Tutup Buku Apl Paksa tutup contoh apl Buku daripada iPhone. Langkah 1 – Buka apl Buku. Jika ia tidak terpakai atau terus ranap, abaikan ia. Langkah 2 – Seterusnya, semasa contoh apl Buku dibuka, leret dari sudut kiri bawah telefon anda. Langkah 3 – Anda boleh melihat semua aplikasi terbuka di sana. Leret ke atas untuk mematikan setiap satu

See all articles