sh.addShard()
Nesta página
Definição
sh.addShard(<url>)
Adiciona um conjunto de réplicas fragmentadas em umcluster fragmentado . Este método deve ser executado em uma instância
mongos
.Importante
Método mongosh
Esta página documenta um método
mongosh
. Esta não é a documentação de comandos de banco de dados nem drivers específicos de linguagem, como Node.js.Para o comando do banco de dados, consulte o comando
addShard
.Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
O método
sh.addShard()
tem o seguinte parâmetro:ParâmetroTipoDescriçãohost
stringO nome do conjunto de réplicas, nome do host e porta de pelo menos um membro do conjunto de réplicas do shard. Quaisquer nomes de host do membro do conjunto de réplicas adicionais devem ser separados por vírgula. Por exemplo:
<replica_set>/<hostname><:port>,<hostname><:port>, ... O método
sh.addShard()
tem a seguinte forma de protótipo:sh.addShard("<replica_set>/<hostname><:port>") Aviso
Não use
localhost
para o nome do host, a menos que seu servidor de configuração também esteja sendo executado emlocalhost
.mongos
instalados a partir de arquivos .deb oficiais e .rpm pacote têm a configuraçãobind_ip
definida como127.0.0.1
por padrão.mongos
usa"majority"
no comandoaddShard
e seu assistentesh.addShard()
.
Considerações
Equilíbrio
Quando você adiciona um shard a um cluster fragmentado, afeta o equilíbrio de blocos entre os shards de um cluster para todas as coleções fragmentadas existentes. O balancer começará a migrar blocos para que o cluster atinja o equilíbrio. Consulte Internais do Balancer para mais informações.
As migrações de chunks podem ter um impacto no espaço em disco, pois o shard de origem arquiva automaticamente os documentos migrados por padrão. Para detalhes, consulte o diretório moveChunk
.
membro oculto
Importante
Não é possível incluir um membro oculto na lista de sementes fornecida a sh.addShard()
.
Exemplo
Para adicionar um shard, especifique o nome do conjunto de réplicas e o nome do host de pelo menos um membro do conjunto de réplicas, como semente. Se você especificar nomes de host adicionais, todos deverão ser membros do mesmo conjunto de réplicas.
O exemplo a seguir adiciona um conjunto de réplicas chamado repl0
e especifica um membro do conjunto de réplicas:
sh.addShard("repl0/mongodb3.example.net:27327")