Vertica高可用性テスト

1802 ワード

  • 1.基本概念紹介
  • 2.ノードサービスを停止する
  • 3.他のノードアクセスのテスト
  • 1.基本概念の紹介


    VerticaもMPPアーキテクチャのデータベースであり、Greenplumやhadoopなどの製品よりも、Verticaの最大の違いはプライマリノードという概念がないことです.すなわち、Verticaクラスタ(K-safe=1の場合)では、どのノードがダウンタイムしても、他のノードが外部にサービスを提供することには影響しません.他のプライマリノードを持つアーキテクチャでは、プライマリノードが一時停止するとクラスタ全体が停止するため、プライマリノードをさらに冗長化することも考慮する必要があります.
    アーキテクチャをよく知っている人は、プライマリノードがない場合、Verticaのメタデータはどこに保存されていますか?答えは、メタデータが大きくないため、各ノードの冗長メタデータが実行可能であるため、各ノードに格納されます.
    以上の理解に基づいて,我々は3ノードのVerticaクラスタテスト環境において,任意に1つのノードを停止し,他のノードは対外的にサービスを提供することができる.

    2.ノードサービスの停止

    admintoolsツール「7 Advanced Menu」を選択し、「2 Stop Vertica on Host」または「3 Kill Vertica Process on Host」を選択し、最後にサービスを停止するノードを選択します.
    admintools -> 7  Advanced Menu -> 2  Stop Vertica on Host / 3  Kill Vertica Process on Host -> Select host(s) 

    注:「2 Stop Vertica on Host」または「3 Kill Vertica Processon Host」を選択し、前者を優先し、前者は止まらず後者を殺すことを考えます.ここでは2番目のノードのverticaプロセスを殺します.
    dbadmin=> select node_name, node_state from nodes;
         node_name     | node_state 
    -------------------+------------
     v_testdb_node0001 | UP
     v_testdb_node0002 | DOWN
     v_testdb_node0003 | UP
    (3 rows)

    3.他のノードアクセスのテスト


    2番目のノードはダウンタイムですが、予想通り、1番目のノードと3番目のノードからのアクセスデータは正常にアクセスできます.
    -- 1 :
    [dbadmin@vertica1 ~]$ vsql
    Password: 
    
    -- 3 :
    [dbadmin@vertica3 ~]$ vsql
    Password: 

    ノード2からアクセスすると、エラーが表示されます.
    [dbadmin@vertica2 ~]$ vsql
    vsql: could not connect to server:  
            Is the server running on host "???" and accepting
            TCP/IP connections on port 5433?

    そのため、アプリケーション側は接続を配置して、簡単にクラスタのあるノードのIPアドレスを固定しないことを提案して、方法を考えて1組のIPを配置して、IPアドレスがあってアクセスできないことを発見して、他のノードのIPアドレスに接続して正常にデータベースにアクセスする論理を実現するべきです.