内容

概要

前提条件

要件

使用するコンポーネント

バックアッププロセス

バックアップバンドルの作成

ハイアベイラビリティ設定のバックアップ

CMXから別のマシンへのバンドルの移動

CMXからのバックアップアーカイブの削除

バックアップの復元

追加情報

バックアップおよび復元プロセスの制限

バックアップと仮想マシンスナップショットの違い

概要

このドキュメントでは、Cisco CMX 10.5以降の設定およびクライアントデータをバックアップおよび復元する方法について説明します

前提条件

要件

CMXに関する一般的な知識が必要です。

使用するコンポーネント

すべてのテストは、MSE 3375アプライアンス、MacOS 10.4、およびWindows 10 2018年10月アップデートで動作するCMX 10.6.0-177で実行されました。

これには、物理3365/3375アプライアンスおよび仮想マシンにインストールされたCMXが含まれます。CMXの次のコンポーネントをバックアップできます。

- データベース：マップ、コントローラ、ロケーション、集約された分析データなどの設定データを保存します。

- キャッシュ：分析の繰り返しアクセスを保存

- Cassandra – ロケーション履歴データと分析の未加工の訪問を保存します。

- Influxdb – システムのメトリックデータを保存します（デフォルトでは含まれません）。

- Consul - Consulの設定を保存します。

- フロアマップ – UI表示用のフロアイメージを保存します。

- [ライセンス(Licenses)]:Cisco CMXライセンス情報を保存します

- Setup:CMX設定データを保存します。

- Connectimages:Connectキャプティブポータルにイメージを保存します。

- Conf：ノード設定を保存します。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

バックアッププロセス

バックアップバンドルの作成

CMXは、インストールされている場所に関係なく、cmxos backupコマンドを使用してバックアップできます。デフォルトでは、バックアップにはデータベース、キャッシュ、cassandra、フロアマップ、ライセンス、セットアップ、接続、および設定が含まれます。—allパラメータを追加して、Influxdbデータも含めます。デフォルトでは、バックアッププロセスは実行中のCMXサービスを停止します。パラメータ—onlineを追加して、CMXサービスを停止せずにバックアップを実行します。バックアップtar.gzアーカイブを保存するディレクトリを入力するよう求められます。ディレクトリには、読み取り、書き込み、および実行の権限が必要です。デフォルトの/tmpディレクトリを使用することをお勧めします。

新しくインストールされたCMXでは、バックアッププロセスに約30秒かかります。完全にロードされ使用されているCMXでは、バックアップバンドルの作成に最大1時間かかる場合があります。

バックアップの作成中にセッションがタイムアウトしないように、SSHクライアントでキープアライブメッセージを有効にしてください。PuTTYでは、これは[Connection]タブで実行できます。

[cmxadmin@mse33752 ~]$ cmxos backup --online --all

Please enter the path for backup file [/tmp]:

backup name: cmx_backup_mse33752_2019_04_28_22_39

backup dir: /tmp/cmx_backup_mse33752_2019_04_28_22_39

tar file: /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz

running: sudo -u cmx /opt/cmx/bin/cmxctl version

----------------------------------------------------------------------

Build Version   : 10.6.0-331

Build Time      : 2019-01-24 13:27:35.937025

----------------------------------------------------------------------

Image Version   : 10.6.0-177

----------------------------------------------------------------------

Preparing backup of following services: ['database', 'cache', 'cassandra', 'influxdb', 'floormaps', 'licenses', 'setup', 'connectimages', 'conf']

[22:39:56] Preparing for backup...

Preparing for backup...

Database size 51226723

Cache size 7794

Cassandra size 67462961

Floormaps size 1014394

Licenses size 6

Setup size 1912

Connectimages size 6

running: sudo -u cmx /opt/cmx/bin/cmxctl dump

running locally

Dumping configuration information...

[localhost] Executing task 'dump_config_only'

Done.

.

.

.

.

.

.

.

copy snapshot took 0.804718971252 seconds

Backup Cassandra DB took: 8.50579595566 seconds

[22:40:07] Backup InfluxDb...

Backup InfluxDb...

Backup Influx DB took: 0.0411479473114 seconds

[22:40:07] Backup Floormaps...

Backup Floormaps...

Backup floor maps took: 0.055881023407 seconds

[22:40:07] Backup licenses...

Backup licenses...

Backup licenses took: 0.000136137008667 seconds

[22:40:07] Backup setup...

Backup setup...

Backup setup took: 0.00061297416687 seconds

[22:40:07] Backup connect images...

Backup connect images...

Backup connect images took: 0.000127077102661 seconds

[22:40:07] Backup node configuration...

Backup node configuration...

running: sudo -u cmx /opt/cmx/bin/cmxctl dump

running locally

Dumping configuration information...

[localhost] Executing task 'dump_config_only'

Done.

Backup configuration took: 0.383893013 seconds

[22:40:07] Creating tar file..

Creating tar file..

running: tar -chf /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz --use-compress-program=pigz -C /tmp cmx_backup_mse33752_2019_04_28_22_39

running: chmod a+rw /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz

running: chown cmxadmin:cmxadmin /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz

Post backup took: 0.17880988121 seconds

Done Backup. Created backup file /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz

[22:40:07] Done Backup. Created backup file /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz

running: /opt/apache-cassandra-3.9/bin/nodetool --ssl -h cassandra.service.consul -p 7199 clearsnapshot

Requested clearing snapshot(s) for [all keyspaces]

出力の最後に、バックアップアーカイブの名前が指定されます。

[22:40:07] Done Backup. Created backup file /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz

ハイアベイラビリティ設定のバックアップ

すべてのデータベースがプライマリとセカンダリの間で同期されるため、ハイアベイラビリティが現在稼働している場合は、プライマリCMXからバックアップを取得するだけで、すべてのクライアントデータを保存できます。cmxos backup —all —onlineコマンドを実行し、プライマリサーバからファイルを転送するだけです。

現在、プライマリとセカンダリのサーバ間でハイアベイラビリティが確立されていない場合は、最初にどのCMXに完全な最新のデータがあるかを判断し、そこからバックアップを作成します。

注：ハイアベイラビリティが確立されている場合、オンラインバックアップはプライマリサーバでのみサポートされます。ハイアベイラビリティが無効になっている場合は、プライマリとセカンダリの両方でオンラインバックアップとオフラインバックアップがサポートされます。

CMXから別のマシンへのバンドルの移動

CMXのハードドライブに何かが発生したり、アップグレードプロセス中にファイルが破損したりすると、CMXに保存されたバックアップファイルが失われる可能性があります。Secure Copy Protocol(SCP)を使用して、CMXから別のマシンにデータを移動することを推奨します。Windows、MacOS、およびLinux PCで実行する方法の例を次に示します。

Windows：

Windowsでこれを行う最も簡単な方法は、WinSCPプログラムを使用することです。インストール後、cmxadminユーザのIPアドレスとクレデンシャルを入力し、SCP接続を確立します。バックアップが保存されているフォルダに移動し、バックアップファイルを見つけて、ローカルマシン上の目的の場所（左側のウィンドウ）にドラッグします。

重要:CMX 10.6.xのルートアクセスの制限により、WinSCPがディレクトリの移動に使用するコマンドcdが存在しません。この場合、WinSCPを使用することはできません。ルートパッチにアクセスするか、別のSCPユーティリティを検索する場合は、Cisco TACに連絡してください。

MacOSおよびLinux:

MacOSとほとんどのLinuxディストリビューションには、ネイティブのscpクライアントが付属しています。ファイルを移動するには、単純な端末コマンドを使用します。

scp cmxadmin@<cmx_ip_address>:/<file_path_and_name_on_cmx> <file_path_and_name_on_local_machine>

例：

VAPEROVI-M-H1YM:~ vaperovi$ scp cmxadmin@10.48.71.41:/tmp/cmx_backup_mse33752_2019_04_28_19_38.tar.gz /Users/vaperovi/cmx_backup_mse33752_2019_04_28_19_38.tar.gz

cmxadmin@10.48.71.41's password:

cmx_backup_mse33752_2019_04_28_19_38.tar.gz                                           100%  186KB   1.4MB/s   00:00

CMXは、cmxadminユーザのクレデンシャルを入力するプロンプトを表示します。この後、データはローカルマシン内の指定された場所に転送されます。

注:CMX 10.5以降がCentOS 7で実行されていることを考慮すると、このコマンドを使用して、あるCMXから新しくインストールしたCMXにデータを移動できます。一度に1つのワイヤレスコントローラは1つのCMXとしか同期できないため、バックアップバンドルをダウンロードするCMXを必ずシャットダウンしてください。

CMXからのバックアップアーカイブの削除

CMXバージョン10.5.xでは、suコマンドでrootユーザとしてログインし、バックアップファイルが保存されている/tmpディレクトリに移動してrm -f コマンドで削除することで、ファイルを削除できます。

[cmxadmin@mse33752 ~]$ su

Password:

[root@mse33752 cmxadmin]#

[root@mse33752 cmxadmin]# cd /tmp

[root@mse33752 tmp]# rm -f cmx_backup_mse33752_2019_04_28_19_38.tar.gz

バージョン10.6.0以降では、ルートアクセスが制限されています。Cisco TACのみが提供できる特別なパッチがない場合、10.5のようなファイルを削除することはできません。cmxos clean normal —deleteコマンドを使用すると、一部の領域を解放できます。

[cmxadmin@mse33752 ~]$ cmxos clean normal --delete

Are you sure you wish to remove files? [y/N]: y

Removing files in: /opt/cmx/var/log

Remove: /opt/cmx/var/log/entropy.err

Remove: /opt/cmx/var/log/backup.log.2

Remove: /opt/cmx/var/log/techsupport/cmx_tech_support_2019-04-28.log

Removing files in: /opt/influxdb/shared

Removing files in: /tmp

重要:cmxos clean normal —deleteの実行後もバックアップを実行するための十分なスペースがない場合は、Cisco TACに連絡してルートにアクセスし、スペースを占めているファイルを削除する必要があります。

バックアップの復元

バックアップを復元する場合は、バックアップファイルをリモートマシンからCMXに転送します。Windowsでは、WinSCPを使用してファイルをドラッグアンドドロップするだけです。MacOSおよびLinuxでは、次のコマンドを使用します。

$ scp <file_path_and_name_on_local_machine> cmxadmin@<cmx_ip_address>:/tmp

例：

VAPEROVI-M-H1YM:~ vaperovi$ scp /Users/vaperovi/cmx_backup_mse33752_2019_04_28_19_38.tar.gz cmxadmin@10.48.71.41:/tmp

cmxadmin@10.48.71.41's password:

cmx_backup_mse33752_2019_04_28_19_38_copy.tar.gz                                     100%  186KB   1.3MB/s   00:00

重要:Cisco CMXデータの復元は、同じローカル時間のデバイスから行う必要があります。そうしないと、分析データに正しくアクセスできません。また、データの結果として、レポートにエラーまたはゼロ値が発生します。

データを復元するには、CMXにバックアップバンドルの4倍の空きディスク領域が必要です。十分なスペースがない場合は、VMのスペースを増やすか、cmxos clean normal —deleteコマンドを実行します。復元プロセスは、cmxos restoreコマンドを使用して開始できます。-iパラメータを追加すると、特定の要素(database、cache、cassandra、floormaps、licenses、setup、conf)のみをバックアップできます。完全バックアップを実行することをお勧めします。

復元プロセスでは、すべてのサービスを停止する必要があります。このプロセスには1時間以上かかることがあるため、十分に大きなメンテナンスウィンドウを準備してください。

[cmxadmin@mse33752 ~]$ cmxos restore

Please enter the backup file path: /tmp/cmx_backup_mse33752_2019_04_28_22_39.tar.gz

Please enter the path for untar backup file [/tmp]:

Stopping monit (via systemctl):                            [  OK  ]

[23:49:19] Preparing for restore...

Restore size 30383753

Available disk space in /tmp is 1812541169664

Available disk space is 1817753817088

[23:49:19] Untarring backup file...

Backing up existing licenses on the system...

Successfully saved existing licenses

Stopping all services...

Pre restore took: 41.672647953 seconds

[23:50:00] Restoring Database...

Created temporary database temp_mse

Running command /usr/bin/sudo -u postgres  pg_restore -j 8 -d temp_mse -Fc /tmp/cmx_backup_mse33752_2019_04_28_22_39/postgres/mse.dump

Restored temporary database temp_mse

Dropping database mse

Renaming database temp_mse to mse

Restarting database...

Starting database...

Restore database took: 10.2765719891 seconds

[23:50:11] Restoring Cache...

Stopping cache_6378...

Restarting cache_6378...

Stopping cache_6379...

Restarting cache_6379...

Stopping cache_6385...

Restarting cache_6385...

Stopping cache_6380...

Restarting cache_6380...

Stopping cache_6381...

Restarting cache_6381...

Stopping cache_6382...

Restarting cache_6382...

Stopping cache_6383...

Restarting cache_6383...

Stopping cache_6384...

Restarting cache_6384...

Restore Cache took: 61.1865711212 seconds

[23:51:12] Restoring Cassandra...

Stopping Cassandra...

Starting Cassandra after wipe...

starting cassandra

Creating empty cassandra schemas

Stopping Cassandra...

Starting Cassandra after restore ...

starting cassandra

Restore Cassandra took: 117.123826981 seconds

[23:53:09] Restoring floormaps...

Restore floor maps took: 0.0736980438232 seconds

[23:53:09] Restoring licenses...

Restore licenses took: 0.000176906585693 seconds

[23:53:09] Restoring setup...

Restore setup took: 0.00758194923401 seconds

[23:53:09] Restoring connect images...

Restore connect images took: 0.000188827514648 seconds

[23:53:09] Running Post Restore Tasks...

[23:53:09] Migrating Schemas...

[23:53:10] Migrating Cassandra Schemas...

stopping cassandra

Local licenses wont be retained.

Running full vacuum command on postgres

Performing cleanup of redis cache 6378 and 6383 to evict bloom filter stale entries.

Performing cleanup of redis cache 6378 to evict stale records by qlesspyworker.

Update CMX default certificate

Post restore took: 61.7358779907 seconds

[23:54:11] Starting all services...

[23:56:04] Done

Starting monit (via systemctl):                            [  OK  ]

追加情報

バックアップおよび復元プロセスの制限

- CMX 10.3以前のバージョンからのバックアップは、CMX 10.5.x以降にインポートできません。10.5.xからのバックアップはCMX 10.6.xにインポートできます

- GDPRへの準拠を維持するには、データベース、フロアマップ、ライセンス、セットアップコンポーネントのバックアップを実行する必要があります

- CMXと、CMXへのアクセスに使用されるマシンとの間で、ポート22がブロックされていないことを確認します

- 別のタイプのCMX導入からバックアップを復元する場合は、次の表を参照して互換性があるかどうかを確認してください。

復元元…

復元先…

推奨事項

同じマシン仕様

同じマシン仕様

OK

Cisco MSE 3365アプライアンス

Cisco 3375アプライアンス

OK

Cisco MSE 3365アプライアンス

ハイエンドMSE仮想(vMSE)

OK

ハイエンドvMSE

Cisco 3375およびCisco MSE 3365アプライアンス

ハイエンドマシンに推奨される仕様よりも多くのRAMが割り当てられていない場合はOK

標準vMSE

Cisco 3375およびCisco MSE 3365アプライアンス

OK

標準vMSE

ハイエンドvMSE

OK

ローエンドvMSE

Cisco 3375およびCisco MSE 3365アプライアンス

OK

ローエンドvMSE

ハイエンドvMSE

OK

ローエンドvMSE

標準vMSE

OK

Cisco 3375アプライアンス

Cisco MSE 3365アプライアンス

非推奨

Cisco MSE 3365アプライアンス

標準vMSE

非推奨

Cisco MSE 3365アプライアンス

ローエンドvMSE

非推奨

ハイエンドvMSE

標準vMSE

非推奨

ハイエンドvMSE

ローエンドvMSE

非推奨

標準vMSE

ローエンドvMSE

非推奨

バックアップと仮想マシンスナップショットの違い

仮想マシンのスナップショットは、仮想マシンがデータストレージに使用するVMDKファイルの整合性を維持するために何も行わないため、バックアップツールと見なすことはできません。

スナップショットは、元のVMDKストレージ・ファイルを「凍結」し、元のVMDKファイルに加えられた変更をキャプチャする追加のスナップショット・ファイル（ディスク・チェーンと呼ばれます）を作成することによって動作します。これにより、ディスクファイルの状態を時間の経過に従って維持し、必要に応じて変更を加えた後にロールバックすることができます。

したがって、元の（親）VMDKファイルが失われたり、何らかの方法で破損したりした場合、スナップショットデータを使用して元の状態に復元することはできず、保存されたデータは実質的に失われます。

vSphere環境でスナップショットを使用するためのVMwareのベストプラクティスには、次の項目が記載されています。

- スナップショットをバックアップとして使用しない（理由を概説）

- VMwareでは、1つのスナップショットを72時間を超えて使用しないことをお勧めします（スナップショット・ファイルは、より長い期間保持されるとサイズが増大し続けます）。これにより、スナップショットの保存場所の領域が不足し、システムのパフォーマンスに影響を与える可能性があります)。

- 1つのチェーンで最大32個のスナップショットがサポートされます。ただし、パフォーマンスを向上させるには、使用するスナップショットを2 ～ 3つに制限します。

詳細については、VMwareスナップショットのベストプラクティスの記事を参照してください。