Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

2 Biểu đồ Helm với sự phụ thuộc Redis được chia sẻ

Khi bạn cài đặt biểu đồ bằng Helm, nó thường mong đợi mỗi bản phát hành để có bộ đối tượng Kubernetes độc lập của riêng nó. Trong ví dụ cơ bản mà bạn hiển thị, tôi mong đợi thấy các đối tượng Dịch vụ Kubernetes có tên giống như

release-a-application-a
release-a-redis
release-b-application-b
release-b-redis

Có một quy ước chung rằng các đối tượng được đặt tên bắt đầu bằng {{ .Release.Name }} , vì vậy hai Redises là riêng biệt.

Đây thực sự là một thiết lập được mong đợi. Một quy tắc điển hình của việc xây dựng microservices là mỗi dịch vụ chứa bộ nhớ riêng biệt và các dịch vụ không bao giờ chia sẻ bộ nhớ với nhau. Mẫu Helm này hỗ trợ điều đó và thực sự không có gì bất lợi khi thiết lập này.

Nếu bạn thực sự muốn hai biểu đồ chia sẻ một cài đặt Redis duy nhất, bạn có thể viết biểu đồ "ô" không tự làm bất cứ điều gì mà phụ thuộc vào hai biểu đồ ứng dụng. Biểu đồ sẽ có Chart.yaml tệp và (trong Helm 2) a requirements.yaml tệp tham chiếu đến hai biểu đồ khác, nhưng không phải là templates thư mục của riêng nó. Điều đó sẽ khiến Helm kết luận rằng một Redis duy nhất có thể hỗ trợ cả hai ứng dụng và bạn sẽ kết thúc với một cái gì đó như

umbrella-application-a
umbrella-application-b
umbrella-redis

(Theo kinh nghiệm của tôi, bạn thường không muốn cái này - bạn làm muốn có một Redis riêng cho mỗi ứng dụng - và do đó, việc cố gắng quản lý nhiều cài đặt bằng biểu đồ ô không hoạt động đặc biệt tốt.)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 6 chỉ số giám sát Redis quan trọng bạn cần xem

  2. Kết nối trực tiếp với Redis bằng javascript (phía máy khách)?

  3. Ưu và nhược điểm khi sử dụng Cần tây so với RQ

  4. Cách tốt để sử dụng socket.io với cụm trong máy chủ đa lõi?

  5. Làm cách nào để bật TLS cho Redis 6 trên Sidekiq?