1

プライマリ、セカンダリ、およびアービターで構成されるレプリカセットがあります。mongodb websiteの指示に従って、それらをアップグレードしていました。

これが私がしたことです:

  1. アービターで mongod をシャットダウンし、アービターで mongod をアップグレードし、アービターで mongod を起動します。

  2. セカンダリで mongod をシャットダウンし、セカンダリで mongod をアップグレードし、セカンダリで mongod を起動します。

  3. (推奨されるようにプライマリで rs.stepDown() を呼び出すのを忘れていました...) プライマリで mongod をシャットダウンし、プライマリで mongod をアップグレードし、プライマリで mongod を起動します。

  4. セカンダリで rs.stepDown() を呼び出して、プライマリが再びステップアップできるようにします。

プライマリをシャットダウンする前にプライマリで rs.stepDown() を呼び出すのを忘れましたが、stepDown はフェイルオーバーを高速化するためだけに想定されているため、それが問題だとは思いません。

現在、プライマリとセカンダリの両方が互いに同期していることを示しています。これについて心配する必要がありますか?他のすべてはうまくいくようです。

rs.status() の結果は次のとおりです。

"members" : [
    {
        "_id" : 0,
        "name" : "primary:27017",
        "health" : 1,
        "state" : 1,
        "stateStr" : "PRIMARY",
        "uptime" : 3274,
        "optime" : {
            "t" : 1367879796,
            "i" : 6
        },
        "optimeDate" : ISODate("2013-05-06T22:36:36Z"),
        "lastHeartbeat" : ISODate("2013-05-06T22:35:06Z"),
        "lastHeartbeatRecv" : ISODate("1970-01-01T00:00:00Z"),
        "pingMs" : 1,
        "syncingTo" : "secondary:27017"
    },
    {
        "_id" : 1,
        "name" : "arbiter:27017",
        "health" : 1,
        "state" : 7,
        "stateStr" : "ARBITER",
        "uptime" : 3571,
        "self" : true
    },
    {
        "_id" : 2,
        "name" : "secondary:27017",
        "health" : 1,
        "state" : 2,
        "stateStr" : "SECONDARY",
        "uptime" : 3570,
        "optime" : {
            "t" : 1367879796,
            "i" : 6
        },
        "optimeDate" : ISODate("2013-05-06T22:36:36Z"),
        "lastHeartbeat" : ISODate("2013-05-06T22:35:06Z"),
        "lastHeartbeatRecv" : ISODate("1970-01-01T00:00:00Z"),
        "pingMs" : 6,
        "syncingTo" : "primary:27017"
    }
4

0 に答える 0