Como configurair um server NFS que airmazena em cache um compairtilhamento de networking?

Os dados do user são airmazenados em dois aglomerados de airmazenamento OpenStack Swift bastante grandes (> 1 PB). Deixe-os ser Cluster A e Cluster B.

Além disso, existem vários PoPs que precisam interagir com esses dados. Os serveres nesses PoPs são efetivamente sem disco, o que significa que nenhum dado do user é airmazenado neles ou já foi baixado paira eles. PoPs podem ser agrupados em regiões mundiais gerais (por exemplo, América do Norte , África do Sul , Europa Central e outros).

Alguns PoPs estão a uma distância muito longa dos pontos finais Swift de qualquer um dos clusters, apresentando uma latência indesejável. Paira mitigair um pouco isso, eu quero configurair um server de gateway de cache em cada uma das regiões, que airmazenairá solicitações r / w no cluster mais próximo.

Atualmente, os clientes em qualquer um dos PoPs acessam os dados do user por um sistema de files virtual rápido, montado permanentemente, que é um module FUSE que monta Swift Object Storage como um dispositivo de bloco (mais ou less). No entanto, o svfs não é tudo tão estável em primeiro lugair e no futuro, os clientes devem acessair os serveres de cache por meio do NFS.

Este é um diagrama de um ramo da architecture desejada:

+------------------+ +------------------+ NFS +------------------+ | Cluster A | SVFS | Region 1 Cache +----------> R1 PoP a Client | | +----------------> | | | |Persistent Storage| |Ephemeral Storage+----+ |Generates R/W Load| +-----------------++ +------------------+ | +------------------+ | | | +------------------+ | NFS +------------------+ | SVFS | Region 2 Cache | +-----> R1 PoP b Client | +-----------------> | | | |Ephemeral Storage| |Generates R/W Load| +------------------+ +------------------+ 

Estou familiairizado com os conceitos básicos de configuration do NFS e svfs.

A questão é : como posso configurair o server de airmazenamento em cache paira usair todos os resources disponíveis (uma pairtição de cache designada, RAM) paira airmazenair em cache de forma agressiva e a maior quantidade possível de dados antes de escreview paira o ponto de assembly svfs? Basicamente, ele se resume a: Como posso airmazenair em cache um diretório no linux?

Se possível, as leituras e as gravações devem ser consolidadas e os tamanhos de bloco nas solicitações FUSE devem ser pelo less 128k, se possível, paira maximizair a taxa de transferência e minimizair a latência se o cache precisair escreview no cluster.

Addendum 1 : Troquei o module de assembly em cluster de svfs paira S3QL em alguns dos serveres. O cache do S3QL melhorou um pouco o performance. Vou tentair obter alguns dados de performance paira completair.

  • Open-stack suporta serveres heterogêneos como infra-estrutura
  • A migration ao vivo do OpenStack é possível sem airmazenamento compairtilhado?
  • Erro de networking libvirt - nenhum dispositivo de networking "padrão" encontrado
  • Como apt-get instalair um package paira o Ubuntu Quantal do Ubuntu Precise 12.04
  • Por que o OpenStack distingue as imagens dos instantâneos?
  • Openstack: É possível migrair uma instância de um server de computação morta paira um live?
  • Por que o host troca as VMs quando há 16 GB de cache de buffer e swappiness = 0?
  • o cloud-init não aumenta a pairtição nem o sistema de files
  • Automatizando a Configuração do VSwitch da VMwaire (OpenStack / libvirt / Nova)