docker のインストールが完了し、bridge-nf-call-iptables が無効であると報告される問題を解決します

docker のインストールが完了し、bridge-nf-call-iptables が無効であると報告される問題を解決します

Centos マシンで docker のインストールが完了したら、docker info コマンドを入力すると、次の警告情報が報告されます。

1) 警告メッセージは次のとおりです。

警告: bridge-nf-call-iptables が無効になっています

警告: bridge-nf-call-ip6tables が無効になっています

2) 解決策:

システムファイルを変更してマシンブリッジモードを有効にする

起動時に次の2つのコマンドを実行するように設定します

vim /etc/rc.d/rc.localを編集し、次の2つのコマンドを追加します。

エコー 1 > /proc/sys/net/bridge/bridge-nf-call-iptables

エコー 1 > /proc/sys/net/bridge/bridge-nf-call-ip6tables

CentOS 7 では実行権限を増やす必要があります:

chmod +x /etc/rc,d/rc.local

3) システムを再起動する

追加知識: Kubernetes Pod を再起動するいくつかの方法

序文

docker を使用する場合、docker restart {container_id} を使用してコンテナを再起動できますが、kubernetes には再起動コマンドがありません (kubectl restart {podname} はありません)。バグにより Pod が予期せず終了し、Pod を再起動する必要が生じることがありますが、特に yaml ファイルがない場合、良い方法がないため、Pod を再起動する方法を以下にまとめました。

方法1

最新のyamlファイルがあります。

yaml ファイルがある場合は、 kubectl replace --force -f xxxx.yaml を直接使用して、Pod の API オブジェクトの置き換えを強制し、再起動の目的を達成できます。次のように:

[root@test-129-70 viua]# kubectl replace --force -f viua.yml
名前空間「viua」が削除されました
サービス「viua-app-cms」が削除されました
デプロイメント アプリ「viua-app-cms」が削除されました
サービス「viua-app-command」が削除されました
デプロイメント.apps「viua-app-command」が削除されました
サービス「viua-show-service」が削除されました
デプロイメント アプリ「viua-show-service」が削除されました
サービス「viua-skills-service」が削除されました
デプロイメントアプリ「viua-skills-service」が削除されました
名前空間/viua が置き換えられました
secret/xa-harbor-ca が置き換えられました
service/viua-app-cms が置き換えられました
deploy.apps/viua-app-cms が置き換えられました
service/viua-app-command が置き換えられました
deploy.apps/viua-app-command が置き換えられました
サービス/viua-show-service が置き換えられました
deploy.apps/viua-show-service が置き換えられました
service/viua-skills-service が置き換えられました
deploy.apps/viua-skills-service が置き換えられました

方法2

yaml ファイルはありませんが、Deployment オブジェクトが使用されます。

kubectlスケールデプロイviua-app-cms --replicas=0 -n viua

kubectl scale deploy {オブジェクトをデプロイ} --replicas=0 -n {名前空間}

[root@test-129-70 pvd]# kubectl get deploy -n viua
名前 準備完了 最新 利用可能 年齢
viua-app-cms 1/1 1 1 48分
viuaアプリコマンド 1/1 1 1 48分
viua-ショーサービス 1/1 1 1 48m
viua-スキルサービス 1/1 1 1 48m
[root@test-129-70 pvd]# kubectl scale deploy viua-app-cms --replicas=0 -n viua
展開.apps/viua-app-cms スケール
[root@test-129-70 pvd]# kubectl get deploy -n viua
名前 準備完了 最新 利用可能 年齢
viua-app-cms 0/0 0 0 49分
viuaアプリコマンド 1/1 1 1 49分
viua-ショーサービス 1/1 1 1 49m
viua-スキルサービス 1/1 1 1 49m
[root@test-129-70 pvd]# kubectl get po -n viua
名前 準備完了 ステータス 再起動 年齢
viua-app-command-95f7b6f7f-rb7mh 1/1 実行中 0 49分
viua-show-service-85565b9dcf-ss8qp 1/1 実行中 0 49m
viua-skills-service-65447f9b94-fhqhr 1/1 実行中 0 49m

Deployment オブジェクトは Pod オブジェクトを直接制御するのではなく、ReplicaSet オブジェクトを制御し、ReplicaSet オブジェクトはレプリカ数の定義と Pod テンプレートから構成されるためです。したがって、このコマンドは、ReplicaSet の数を 0 にスケールし、その後 1 に戻して、Pod を再起動します。

方法3

yaml ファイルもありませんが、Deployment オブジェクトが使用されます。

kubectl delete pod {podname} -n {namespace}コマンドを使用します。

この方法は非常に単純で大雑把です。Pod を削除するだけです。Kubernetes は宣言型 API なので、削除後は Pod API オブジェクトが期待したものと不整合になるため、期待したものと整合するように Pod が自動的に再作成されます。ただし、ReplicaSet で管理されている Pod オブジェクトが多数ある場合、手動で 1 つずつ削除するのは面倒です。そのため、kubectl delete replicaset {rs_name} -n {namespace} コマンドを使用して ReplicaSet を削除できます。

方法4

yaml ファイルはなく、Pod オブジェクトが直接使用されます。

コマンド kubectl get pod {podname} -n {namespace} -o yaml | kubectl replace --force -f - を使用します。

この場合、YAML ファイルがなく、Pod オブジェクトが起動しているため、直接削除したり 0 にスケールしたりすることはできませんが、上記のコマンドを使用して再起動することはできます。このコマンドは、現在実行中のポッドの YAML 宣言を取得し、その出力を kubectl replace コマンドの標準入力にリダイレクトして、再起動の目的を達成することを意味します。

要約する

オブジェクトを再起動する方法は多数あります。一般的に、多くのオブジェクトに適用できるため、最も推奨される方法は kubectl get pod {podname} -n {namespace} -o yaml | kubectl replace --force -f - を使用することです。また、Pod を再起動しても実行中のプログラムのバグは修正されません。プログラムの予期しない終了を解決したい場合は、最終的にはバグを修正する必要があります。

上記のdockerインストール完了報告の問題を解決する記事:bridge-nf-call-iptablesが無効ですは、編集者があなたと共有した内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。

以下もご興味があるかもしれません:
  • DockerにRedisをインストールし、設定ファイルとして起動する詳細な説明
  • Docker インストール rocketMQ チュートリアル (最も詳細)
  • DockerでRedashの中国語版をデプロイしてインストールする方法の詳細な説明
  • 5分でDockerをインストールする詳細な手順

<<:  IDEAでVUEプロジェクトをデバッグするための詳細な手順

>>:  ウェブデザインにおけるテキスト入力ボックスのパラメータの説明

推薦する

Linux LVM 論理ボリューム構成プロセス (作成、増加、削減、削除、アンインストール) の詳細な説明

Linux LVM論理ボリューム構成プロセスの詳細な説明多くの Linux ユーザーは、オペレーティ...

MySQL 5.7 共通データ型

——「MySQL in Simple Terms (第 2 版)」からのメモ数値型整数型バイト最小最...

IE8互換表示(IE7モード)とスタンドアロンIE7の違いの詳細な説明

1つ。 IE8 互換表示の概要<br />新しいバージョンのブラウザが古い Web サイ...

MySQL 8.0.18コマンドの詳細な説明

解凍したフォルダ C:\web\mysql-8.0.11 を開き、フォルダ内に my.ini 構成フ...

カルーセル効果を作成するためのjs

カルーセルはフロントエンド開発において比較的重要なポイントだと思います。ネイティブjsの知識ポイント...

フェッチネットワークリクエストのカプセル化例の詳細な説明

エクスポートデフォルト({ URL、 メソッド = 'GET'、 データ = nu...

MySQL 5.x 以降を使用している場合のエラー #1929 列 ''createtime'' の日付時刻値が正しくありません: '''' の簡単な解決方法

MySQL をインストールした後、テーブル データを保存および削除しようとすると、常にエラー メッセ...

VMware ワークステーション 12 に Ubuntu 14.04 (64 ビット) をインストール

1. インストール環境コンピュータモデル: Lenovo Y471a (i5) ノートパソコンシステ...

測定画像HTTPリクエスト

一般的なブラウザでテスト ページを開き、Fiddler で http リクエストを表示してください。...

Vue はシームレスなカルーセル効果 (マーキー) を実現します

この記事では、シームレスなカルーセル効果を実現するためのVueの具体的なコードを例として紹介します。...

HTMLの空リンクの役割についての簡単な説明

空のリンク:つまり、ターゲット エンドポイントとのリンクはありません。フォーマット <a hr...

CSS3 を使用して色付きのプログレスバーアニメーションを実装する例

簡単なチュートリアルこれは CSS3 カラー プログレス バー アニメーション効果です。 CSS3 ...

MySQL 8.0.12 のインストールと設定のチュートリアル

この記事はMySQL 8.0.12のインストールと設定に関する詳細なチュートリアルを記録しています。...

Mysql Workbench クエリ mysql データベース メソッド

Mysql Workbench はオープンソースのデータベース クライアントです。このオープンソース...

MySQL 条件付きクエリと使用法および優先順位の例の分析

この記事では、例を使用して、MySQL 条件クエリ and or の使用方法と優先順位を説明します。...