rs.initiate()
Descrição
rs.initiate(configuration)
Inicia um conjunto de réplicas. Como opção, o método pode receber um argumento na forma de um documento que contém a configuração de um conjunto de réplicas.
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
replSetInitiate
.Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
O método
rs.initiate()
tem o seguinte parâmetro:ParâmetroTipoDescriçãoconfiguration
documentoOpcional. Um documento que especifica configuração para o novo conjunto de réplicas. Se uma configuração não for especificada, o MongoDB usa uma configuração padrão de conjunto de réplicas.
Vinculação IP
Aviso
Antes de vincular sua instância a um endereço IP acessível publicamente, você deve proteger seu cluster contra o acesso não autorizado. Para obter uma lista completa de recomendações de segurança, consulte Lista de verificação de segurança para implantações autogerenciadas. No mínimo, considere habilitar a autenticação e fortalecer a infraestrutura de rede.
Os binários do MongoDB, mongod
e mongos
, são vinculados ao host local por padrão. Se a configuração do arquivo de configuração net.ipv6
ou a opção de linha de comando --ipv6
estiver definida para o binário, o binário também será vinculado ao endereço IPv6 do host local.
Por padrão, mongod
e mongos
que estão vinculados a localhost só aceitam conexões de clientes executados no mesmo computador. Este comportamento vinculativo inclui mongosh
e outros membros do seu conjunto de réplica ou cluster fragmentado. Clientes remotos não podem se conectar a binários vinculados apenas ao localhost.
Para substituir a associação padrão e vincular a outros endereços IP, use a net.bindIp
configuração do arquivo de configuração ou a --bind_ip
opção de linha de comando para especificar uma lista de nomes de host ou endereços IP.
Aviso
A partir do MongDB 5.0, DNS de horizonte dividido nós que são configurados apenas com um endereço IP falham na validação de inicialização e relatam um erro. Consulte disableSplitHorizonIPCheck
.
Por exemplo, a instância mongod
a seguir é vinculada ao host local e ao nome de host My-Example-Associated-Hostname
, que está associado ao endereço IP 198.51.100.1
:
mongod --bind_ip localhost,My-Example-Associated-Hostname
Para se conectar a esta instância, os clientes remotos devem especificar o nome do host ou seu endereço IP associado 198.51.100.1
:
mongosh --host My-Example-Associated-Hostname mongosh --host 198.51.100.1
Configuração do conjunto de réplica
Consulte Exemplo de documento de configuração do conjunto de réplicas para obter detalhes sobre o documento de configuração do conjunto de réplicas.
Importante
Para evitar atualizações de configuração devido a alterações de endereço IP, use nomes de host DNS em vez de endereços IP. É particularmente importante usar um nome de host DNS em vez de um endereço IP ao configurar membros de conjunto de réplicas ou membros de cluster fragmentado.
Use nomes de host em vez de endereços IP para configurar cluster em um horizonte de rede dividido. Começando no MongoDB 5.0, nós configurados apenas com um endereço IP falham na validação de inicialização e não são iniciados.
Exemplo
O exemplo a seguir inicia um novo conjunto de réplicas com três membros.
As três instâncias mongod
devem ter começado com a opção de linha de comando--replSet
(ou replication.replSetName
se estiver usando um arquivo de configuração) definida como myReplSet
e o --bind_ip
(ou net.bindIp
se estiver usando um arquivo de configuração) definido adequadamente para que outros membros do conjunto de réplicas e clientes possam se conectar.
Aviso
Antes de vincular sua instância a um endereço IP acessível publicamente, você deve proteger seu cluster contra o acesso não autorizado. Para obter uma lista completa de recomendações de segurança, consulte Lista de verificação de segurança para implantações autogerenciadas. No mínimo, considere habilitar a autenticação e fortalecer a infraestrutura de rede.
Conecte o mongosh
a uma das instâncias do mongod
e execute o rs.initiate()
.
Observação
Execute rs.initiate()
em uma apenas e apenas uma instânciamongod
para o conjunto de réplicas.
Importante
Para evitar atualizações de configuração devido a alterações de endereço IP, use nomes de host DNS em vez de endereços IP. É particularmente importante usar um nome de host DNS em vez de um endereço IP ao configurar membros de conjunto de réplicas ou membros de cluster fragmentado.
Use nomes de host em vez de endereços IP para configurar cluster em um horizonte de rede dividido. Começando no MongoDB 5.0, nós configurados apenas com um endereço IP falham na validação de inicialização e não são iniciados.
rs.initiate( { _id: "myReplSet", version: 1, members: [ { _id: 0, host : "mongodb0.example.net:27017" }, { _id: 1, host : "mongodb1.example.net:27017" }, { _id: 2, host : "mongodb2.example.net:27017" } ] } )
Para obter detalhes sobre a configuração do conjunto de réplicas, veja Campos de Configuração do Conjunto de Réplicas.
Para obter detalhes sobre a implantação de um conjunto de réplicas, veja Implantar um Conjunto de Réplicas Autogerenciado.