휴 며칠동안 삽집에. ...
openvswitch 이 뭐하는 넘인가 궁금 하죠.
linux 9 이전 버젼은 bridge network 을 묶기위해선 해야할 작업이 많았다.
그래서 brtul 이 라는것이 있었는데. linux 9 에선 openvswitch 라는 opensource
로 변경 도었다. 우애곡절 끝에 설치 되었고 .. 정말 좋다.
vmware 나 오라클 vm 에서 브리지 네트워을 만들려면 지랄 같은 과정을 해야만
했는데 이 openvswitch 는 그런 과정을 너무쉽게 해주 는 것이다
다음은 설치후 어떻게 사용 하는지 다음편에서=====
1. 기본 라이브러리 update
sudo dnf groupinstall "Development Tools"
sudo dnf install libssl-devel python3-devel
2. cd /usr/local/src
wget https://www.openvswitch.org/releases/openvswitch-3.4.0.tar.gz
tar -xzf openvswitch-3.4.0.tar.gz
cd openvswitch-3.4.0
3# Configure the build
./configure --prefix=/usr/local
# Build the software
make
make install
4.Open vSwitch 설치 후, /usr/local/bin/와 /usr/local/sbin/ 디렉토리 확인[ 관련 util ]
5. root 계정에 환경변수추가
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
6. 실행 /로그 디렉터리 생성
sudo mkdir -p /usr/local/etc/openvswitch
sudo chown -R root:root /usr/local/etc/openvswitch
sudo chmod 755 /usr/local/etc/openvswitch
sudo chmod 666 /usr/local/var/run/openvswitch/db.sock
sudo chown -R root:root /usr/local/var/run/openvswitch
sudo chmod 755 /usr/local/var/run/openvswitch
sudo chown -R root:root /usr/local/var/run/openvswitch
sudo chmod 755 /usr/local/var/run/openvswitch
sudo mkdir -p /usr/local/var/log/openvswitch
sudo chown -R root:root /usr/local/var/log/openvswitch
sudo chmod 755 /usr/local/var/log/openvswitch
sudo touch /usr/local/var/log/openvswitch/ovs-vswitchd.log
sudo chown root:root /usr/local/var/log/openvswitch/ovsdb-server.log
sudo chown root:root /usr/local/var/log/openvswitch/ovs-vswitchd.log
sudo chmod 644 /usr/local/var/log/openvswitch/ovsdb-server.log
sudo chmod 644 /usr/local/var/log/openvswitch/ovs-vswitchd.log
mkdir -p /usr/local/var/run/openvswitch/
sudo chown -R root:root /usr/local/var/run/openvswitch/
============================================
7. conf.db db 생성 중요
/usr/local/bin/ovsdb-tool create /usr/local/etc/openvswitch/conf.db /usr/local/share/openvswitch/vswitch.ovsschema
chown root:root /usr/local/var/run/openvswitch/db.sock
8. 개별프로그램 테스트
/usr/local/sbin/ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock --pidfile --detach
/usr/local/sbin/ovs-vswitchd --pidfile --detach
<== test 후 프로 세스 확인 해서 정리 한다
9 .systemctl 등록
vi /etc/systemd/system/openvswitch.service
[Unit]
Description=Open vSwitch
After=network.target
Wants=network.target
[Service]
Type=simple
ExecStart=/usr/local/sbin/ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock --pidfile
ExecStartPost=/usr/local/bin/ovs-vsctl --no-wait init
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
TimeoutStartSec=600 # 타임아웃 값 추가
[Install]
WantedBy=multi-user.target
===========================================
서비스등록
systemctl daemon-reload
systemctl start openvswitch
systemctl status openvswitch
systemctl enable openvswitch
=============================================
로깅
journalctl -u openvswitch.service -f