Linux で open-vswitch をインストールおよびアンインストールする方法

Linux で open-vswitch をインストールおよびアンインストールする方法

1. ソースコードからovsをコンパイルしてインストールします。

依存関係をインストールします:

# apt をインストールします
# gccをインストールします 
# apt をインストールビルド必須
# libssl-dev をインストールします
# libcap-ng-dev をインストールします
# python2.7をインストールします
# apt をインストールします
# pip 6 をインストール
# apt をインストール autoconf 
# apt をインストール automake
# libtoolをインストール

ソースパッケージをダウンロード

# gitをインストール

# git clone https://github.com/openvswitch/ovs.git (ダウンロードした git プロジェクト ディレクトリは ~/ovs です)

設定ファイルを生成する

# ./boot.sh (ovs プロジェクトのルート ディレクトリ内)

構成

# ./configure -with-linux=/lib/modules/$(uname -r)/build

コンパイル

# 作る

# インストールする

# モジュールをインストールします
# config_file="/etc/depmod.d/openvswitch.conf"
# datapath/linux/*.ko内のモジュールの場合、
 modname="\$(ベース名 \${モジュール})"
 echo "\${modname%.ko} * extra を上書きする" >> "\$config_file"
 echo "\${modname%.ko} * 弱い更新を上書きする" >> "\$config_file"
 終わり

# depmod -a
# /sbin/modprobe openvswitch
# /sbin/lsmod | grep openvswitch

起動する

PATH=$PATH:/usr/local/share/openvswitch/scripts をエクスポートします。
# ovs-ctl 開始

テスト

# ovs-vsctl ショー
# ovs-vsctl add-br mybridge
# ovs-vsctl ポート mybridge eth0 を追加します

2. Ovsのアンインストール

ovs を起動した後、ovs ソース コードを変更して ovs サービスを更新する場合は、次の手順を実行します。

# ovs-ctl stop ovsサービスを停止します # ovs-dpctl show カーネルを表示します。ovs-systemのデータパスが表示されます
# ovs-dpctl del-dp ovs-system 前の手順で表示されたデータパスを削除します (この手順を実行しないと、rmmod でエラーが報告される可能性があります)
# rmmod openvswitch openvswitch カーネル モジュールをアンインストールします。lsmod | grep openvswitch を使用して、openvswitch が見つからないことを確認します。
# ovsソースコードディレクトリに入り、前のコンパイル手順に従って再コンパイルしてインストールします

参考文献

Linux、FreeBSD、NetBSD 上の Open vSwitch

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • OpenStack で openvswitch を使用して vxlan を実装する方法
  • DockerでOpenvSwitchブリッジを使用する方法
  • OpenVSwitch を使用して複数のホストに Docker をデプロイするチュートリアル

<<:  MySQLをインストールした後、ログイン時にルートアカウントプロンプトが表示されます。mysql ERROR 1045 (28000): アクセスが拒否されました。解決策

>>:  Vue は PDF.js を統合して PDF プレビューを実装し、透かしを追加する手順を実行します。

推薦する

MySQL 最適化における B ツリー インデックスの知識ポイントのまとめ

SQL を最適化する必要があるのはなぜですか?当然ですが、SQL ステートメントを記述する場合、次の...

MySQLパーティションテーブルは月別に分類されています

目次テーブルを作成するデータベース ファイルを表示します。入れるクエリ消去補足:Mysqlは月テーブ...

js を使用して USB スキャナー データを取得する方法

この記事では、USBバーコードスキャナデータを取得するjsの具体的なプロセスを参考までに紹介します。...

JavaScript の手ぶれ補正とスロットリングの説明

目次安定スロットリング要約する安定自動ドアは人を感知してドアを開け、5 秒間のカウントダウンを開始し...

mysql ルートユーザーを認証できず、Navicat リモート認証プロンプト 1044 の問題を解決します

まず解決策を見てみましょう #------------mysql の root ユーザーに権限を付与...

Reactドラッグフックを実装するための100行以上のコード

序文ソースコードは合計で 100 行強しかありません。これを読めば、react-dnd などの成熟し...

JavaScript はチェックボックスの選択機能を実装します

この記事の例では、すべてのチェックボックスの選択を実現するためのJavaScriptの具体的なコード...

実稼働環境でのNginx高可用性ソリューションの実装プロセスの分析

準備: 192.168.16.128 192.168.16.129 2 台の仮想マシン。 Nginx...

MySQL パフォーマンス チューニングについて知っておくべき 15 個の重要な変数 (要約)

序文: MYSQL は最も人気のある WEB バックエンド データベースです。最近、NOSQL がま...

Tomcat が IDEA のコンソールで文字化けを起こし、IDEA エンコーディングを UTF-8 に設定する方法

1. まず、TomcatログのエンコーディングとIdeaログ表示コンソールのエンコーディングを区別す...

MySQL における tinyint と int の違いの詳細な説明

質問: int(1) と tinyint(1) の違いは何ですか?このような設計では、いずれにしても...

Docker Composeを使用してDOCleverをインストールする詳細なプロセスを説明します

目次1. Docker Composeとは何か、インストールして使用する方法2. DOCleverと...

Vue プロジェクトは、コードの暗号化と難読化を実装するために webpack-obfuscator を設定します。

背景会社のコードは第三者に提供され、利用されます。ソースコードが完全に漏洩しないようにするには、提供...

Vue フォーム入力バインディング v-model

目次1.vモデル2. プロパティとイベントのバインディング3. フォーム要素のバインディング3.1 ...

小さなプログラムが天井に張り付いてしまう問題を完璧に解決するためにposition:stickyを使用する方法

最近、あるプロジェクトのクライアントが、上部に 2 つのタブ メニューを配置することを要求しました。...