Kubernetes クラスターでの Etcd データのバックアップと復元

Kubernetes クラスターでの Etcd データのバックアップと復元

最も人気のあるコンテナ オーケストレーション ソフトウェアとして、Kubernetes はますます多くのインターネット企業に支持されています。この現象が起こる理由は、このオーケストレーション ソフトウェアが強力であるだけでなく、二次開発にも非常に便利だからです。 Kubernetes エコシステム全体が非常に活発です。 Kubernetes の「スケルトン」を使用すると、多数のミドルウェアとアプリケーションを実行できます。 Apiserver、Controller Manager、Scheduler、および Proxy は、この「スケルトン」のコンポーネントと見なすことができ、Etcd はこのシステムのベースです。システム全体のデータがここに保存されるため、Etcd の安定性とコンテナ オーケストレーション システム全体の安定性が確保されます。

正式に開始する前に、実験環境について説明させてください。 5 つのホストが Kubernetes クラスターを形成します。

  • コントロール プレーン ホスト: p1.xufu.xyz、p2.xufu.xyz、p3.xufu.xyz
  • 動作中のホスト: p4.xufu.xyz、p5.xufu.xyz
  • ホストシステム: CentOS Linux リリース 7.9.2009 (コア)
  • その他バージョン: 3.5.1

その他

  • 導入

これはキーバリューデータベースです。 Kubernetes は、デプロイメント、ポッド、デーモンセットなどのさまざまなオブジェクトを含む独自のステータス データを Etcd に保存します。クラスター コンポーネント全体のうち、Apiserver のみが Etcd と直接通信し、他のコンポーネントは Apiserver と直接通信します。実稼働環境では、Etcd をクラスター内で実行するのが最適です。公式の推奨事項では、2 つのノードが失われた場合でもデータの可用性が保証されるように、5 つのノードを実行してクラスターを形成することが推奨されています。

  • アクセス

Etcd には多くの機密データが保存されているため、アクセスするには公開鍵と秘密鍵を使用する必要があります。簡単にアクセスできるように、ホーム ディレクトリの「.bashrc」ファイルに次のコマンド エイリアスを設定します。

 エイリアスectl = 'etcdctl --endpoints p1.xufu.xyz:2379 \ --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key \ --cacert=/etc/kubernetes/pki/etcd/ca.crt'

現在 Etcd に保存されているすべてのキーを表示します。

 ectl get / -- プレフィックス-- キーのみ
  • バックアップ

kubeadm を使用してデプロイされたクラスターの場合、Etcd はデフォルトでホスト ディレクトリ /var/lib/etcd にデータを保存します。

Etcd データディレクトリ

etcd のバージョン 2 と 3 には大きな違いがあります。私はバージョン 3 を使用しています。バックアップ コマンドは次のとおりです (どのコントロール プレーン ホストでも操作できます)。このコマンドではetcdをシャットダウンする必要はありません。

 ectl スナップショットスナップショットを保存- $ ( 日付+% F )

バックアップのスナップショットを表示します。

スナップショット情報

  • 回復する

復元操作はバックアップ操作よりも少し面倒です。次の手順は、3 つのコントロール プレーン ホストすべてで実行する必要があります。

1. kubelet をシャットダウンします。シャットダウンしない場合は、apiserver が自動的に再起動されます。

 systemctl kubelet .service を停止します

2. apiserver コンテナを閉じ、docker コマンドを使用してコンテナを見つけて、直接停止します。

 docker stop apiservername

3. ディレクトリ /var/lib/etcd の名前を変更し、新しいディレクトリを作成して、ディレクトリの権限を変更します。

 mv / var / lib / etcd / var / lib / etcd_oldmkdir / var / lib / etcdchmod 700 / var / lib / etcd

4. バックアップ スナップショットを使用してデータを復元します。

 ectl snapshot restore / data / etcd_backup / etcd - snapshot - 2022-08-03.db \ -- ​​name p1 .     xufuxyz \ -- 初期- クラスター"etcd-0=https://p1.xufu.xyz:2380,etcd-1=https://p2.xufu.xyz:2380,etcd-2=https://p3.xufu.xyz:2380" \ -- 初期- アドバタイズ- ピア- URL https : //p1.xufu.xyz:2380 \ --data-dir=/var/lib/etcd

p2 ノードと p3 ノードは類似しています。

5. 3 つの etcd サーバーを起動し、クラスターが正常かどうかを確認します。

 [ root @p1 etcd ] # ectl -- エンドポイント= https : //p1.xufu.xyz:2379、https://p2.xufu.xyz:2379、https://p3.xufu.xyz:2379 エンドポイントの健全性https://p2.xufu.xyz:2379 は正常です: 提案にコミットされました: かかった時間 = 100.193247msp1.xufu.xyz:2379 は正常です: 提案にコミットされました: かかった時間 = 111.234607mshttps://p1.xufu.xyz:2379 は正常です: 提案にコミットされました: かかった時間 = 113.788721mshttps://p3.xufu.xyz:2379 は正常です: 提案にコミットされました: かかった時間 = 118.403445ms

問題がないことを確認したら、apiserverコンテナを起動します。

この時点で、バックアップ回復プロセス全体が完了します。

<<:  ターゲットの 10 年にわたるクラウドへの取り組みから学んだ教訓

>>:  Kubernetesの可観測性: 4つのオープンソースツールを活用する

推薦する

検索エンジン最適化のための代替技術の解釈

Baidu SEO の世界で、2012 年に何か覚えていることがあるとすれば、それは最も深刻な Ba...

クラウドネイティブアプリケーションの完全なライフサイクル管理

ゲスト |テンセントクラウド副社長 黄俊宏編集:呂新王51CTO 読者成長計画コミュニティ募集、コン...

imidc: (物理マシン) 香港サーバー\台湾サーバー、生涯 30% 割引、$39-e3+16g+1T+10M、$50-2*e5/32g+1t+10M

imidc は、香港と台湾のデータ センターの独立サーバーを 30% 割引という大幅な割引価格で提供...

mycustomhosting-20 USD/年/512M メモリ/KVM/20G ハードディスク/500G トラフィック

MyCustom Hosting のプロモーション版 VPS をお勧めします。米国とカナダにデータ ...

私の国の通信事業者はクラウドコンピューティングの導入において3つの大きな課題に直面しています

デジタル経済の時代において、コンピューティングパワーは重要なリソースの一つであり、世界各国が開発を競...

クラウド移行戦略を成功させる方法

しばらくデータセンターで運用してきた場合は、特定の目的のためにクラウド移行戦略に移行する可能性があり...

グーグルの中国での検索事業は再び困難に直面し、モバイル広告市場に目を向ける

昨日、Google のグローバル副社長兼中国社長である Liu Yun 氏が Google Crea...

最後の頑固者、羅永浩

敗者の道徳次回の携帯電話発表会は開催されません。借金は増え続けています。 2018年末、羅永浩氏がS...

初心者のためのクラウドコンピューティング入門

2006 年 8 月 9 日、当時 Google の CEO であった Eric Sc​​hmidt...

ウェブサイトのホームページの価値に影響を与えるいくつかの主要な要因の分析

ご存知のとおり、ウェブサイトを最適化して運用する過程で、ホームページはウェブサイト全体の中で最も重み...

クラウド コンピューティングの基礎: CPU 仮想化

仮想化技術の分類には、主にサーバー仮想化、ストレージ仮想化、ネットワーク仮想化、アプリケーション仮想...

SEO最適化に別れを告げ、Q&Aを使ってウェブサイトを宣伝しましょう

以前、私はウェブサイトのプロモーションに関する 2 つの記事、「SEO 最適化に別れを告げる: フォ...

Baiduスナップショットの停滞に対する解決策の簡単な分析

スナップショットが更新されないと、含まれているコンテンツがリリースされないことを意味し、重量も増加し...

時間を旅するエンジン: Kafka メッセージのタイミングの謎を解明

1. 要約1. Kafka メッセージの遅延とタイミングの概要Kafka メッセージのレイテンシとタ...

ウェブサイトのバックリンクとインデックスの急激な低下を引き起こす要因を探る

検索エンジン最適化に取り組んでいる友人は、ウェブサイトのバックリンク(フレンドリーリンクを除く)とコ...