SlideShare a Scribd company logo
1 of 30
Download to read offline
ver1.4 中井悦司
Twitter @enakai00
オープンクラウド・キャンパス
RHEL7/CentOS7
NetworkManager徹底入門
2
RHEL7/CentOS7 NetworkManager徹底入門
自己紹介
 中井悦司(なかいえつじ)
– Twitter @enakai00
 日々の仕事
– Senior Solution Architect and
Cloud Evangelist at Red Hat K.K.
企業システムでオープンソースの活用を希望される
お客様を全力でご支援させていただきます。
 昔とった杵柄
– 素粒子論の研究(超弦理論とか)
– 予備校講師(物理担当)
– インフラエンジニア(Unix/Linux専門)
好評発売中!
3
RHEL7/CentOS7 NetworkManager徹底入門
Contents
 NetworkManagerの概要
 nmcliによる設定
 仮想ブリッジ/VLANデバイスの作成
 Teamデバイスの作成
 参考資料
NetworkManagerの概要
5
RHEL7/CentOS7 NetworkManager徹底入門
NetworkManagerとは?
 NetworkManagerは、RHEL7のネットワークを動的に設定するサービスです。
– ネットワークデバイスが動的に追加・削除される環境に対応することができます。 
RHEL7ではデフォルトのネットワーク管理機能となっており、動的変更が不要な場合で
も利用が必須です。
 設定内容を表す「接続(Connection)」とネットワークデバイスを表す「(デバ
イス)Device」を別々に定義して、それらを紐付けるという処理を行います。
– 新しい「デバイス(Device)」が追加された際に、既存の「接続(Connection)」に自
動で紐付けることで動的変更に対応します。管理者が明示的に紐付けを指定することも
できます。
NAME="Ethernet connection 1"
UUID="bc302e8f-f5f3-478d-bf87-e77d3288dac7"
TYPE="Ethernet"
BOOTPROTO="static"
IPADDR0="192.168.122.10"
...
NAME="Wi-Fi connection 1"
UUID=6fda7095-1685-468f-a138-608f53eb6048
TYPE=Wireless
BOOTPROTO=dhcp
ESSID="mynet"
...
eth0
接続(Connection)
適用
デバイス
(Device)
6
RHEL7/CentOS7 NetworkManager徹底入門
NICのネーミングルールについて
 RHEL7では、NICのネーミングルールに「Predictable Network Interface
Names」が採用されています。
– 典型的には、「ens6」「enp0s25」「wlp2s0」などのデバイス名になります(*)
。
 デバイスの物理ロケーションに応じて、固定的なデバイス名を割り当てます。
– 後半の「s6」の部分は、BIOSから取得した論理番号で、PCIスロット番号などに基いて、
BIOSが独自に提供します。BIOSが論理番号を提供しない場合は、カーネルが認識したPCI
バス番号とスロット番号に基いて、「p<Bus>s<Slot>」のルールになります。
– ロケーション情報を取得できないデバイスは、古典的な「ethX」になります。Linux
KVMのvirtio NICなどが該当します。
ens6
en:イーサネット
wl:ワイヤレス
o:オンボード
s:PCI Express
デバイス番号(PCIスロット番号などに対応)
(*) DELL製のサーバーでは、また異なるネーミングルール(biosdevname)になります。
 (参考)「RHEL7のNICのネーミングルール」http://d.hatena.ne.jp/enakai00/20140728/1406504163
7
RHEL7/CentOS7 NetworkManager徹底入門
net-toolsとiproute2について
 RHEL7を最小構成でインストールした環境では、「ifconfig, route, netstat,
arp」などのネットワーク関連コマンドが入っていません。
– これらのコマンドは、「net-tools」パッケージを追加することで利用可能になります。
 「net-tools」パッケージを導入しない環境では、「iproute2」パッケージに含ま
れる「ip, ss」などのコマンドを使用してください。
– 今後は、iproute2パッケージの方が標準になる予定です。
# yum -y install net-tools
net-tools iproute2
ifconfig ip addr, ip link
route ip route
netstat ss
netstat -i ip -s link
arp ip neighbor
主なコマンドの対応表
(参考)「RHEL7/CentOS7でipコマンドをマスター」http://d.hatena.ne.jp/enakai00/20140712/1405139841
8
RHEL7/CentOS7 NetworkManager徹底入門
デフォルトでの環境構成例
 RHEL7インストーラーのGUIでネットワークを設定すると次のような構成になり
ます。
– デバイスと同じ名前の「接続」が定義されて、該当デバイスに紐付けられます。「接
続」の名前は、一般には、デバイス名と無関係なので注意してください。
# nmcli d
デバイス タイプ 状態 接続
eth2 ethernet 接続済み eth2
ens6 ethernet 切断済み --
ens7 ethernet 切断済み --
lo loopback 管理無し --
# nmcli c
名前 UUID タイプ デバイス
eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2
「デバイス」の確認(「d」は「device」の略)
「接続」の確認(「c」は「connection」の略)
「デバイス」が紐付けられた「接続」
eth2
ens6
ens7
virtio NIC
rtl8139
Linux KVMの仮想マシンに
「Realtek」と「virtio」の
仮想NICをアサインした場合の例
9
RHEL7/CentOS7 NetworkManager徹底入門
設定内容の確認方法 (1)
 NetworkManagerで定義した「接続」の設定内容は、下記の設定ファイルに保存
されます。
– /etc/sysconfig/network-scripts/ifcfg-<接続名>
• インストーラーが作成する設定ファイルでは「” ”」でクォートされていますが、これは必須では
ありません。
– 設定ファイルを編集した場合は、次のコマンドで変更を反映します。
• 実際の設定変更は、設定ファイルの編集ではなく、後述のnmcliコマンドの使用が推奨です。
# nmcli c reload <接続名>
# nmcli c down <接続名>; nmcli c up <接続名>
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
...(中略)...
NAME="eth2"
UUID="bc302e8f-f5f3-478d-bf87-e77d3288dac7"
ONBOOT="yes"
HWADDR="52:54:00:84:56:D9"
IPADDR0="192.168.122.102"
PREFIX0="24"
GATEWAY0="192.168.122.1"
DNS1="192.168.122.1"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
10
RHEL7/CentOS7 NetworkManager徹底入門
設定内容の確認方法 (2)
 特定デバイスの設定内容は、次のコマンドで確認します。
– これは、該当デバイスに紐付けられた「接続」を通して設定された内容になります。
 「接続」の設定内容を直接に確認する際は、次のコマンドを使用します。
# nmcli c show eth2
connection.id: eth2
connection.uuid: bc302e8f-f5f3-478d-bf87-e77d3288dac7
...(中略)...
ipv4.method: manual
ipv4.dns: 192.168.122.1
ipv4.dns-search:
ipv4.addresses: { ip = 192.168.122.102/24, gw = 192.168.122.1 }
...(以下省略)...
# nmcli d show eth2
GENERAL.デバイス: eth2
GENERAL.タイプ: ethernet
GENERAL.HWADDR: 52:54:00:84:56:D9
GENERAL.MTU: 1500
GENERAL.状態: 100 (接続済み)
GENERAL.接続: eth0
GENERAL.CON パス: /org/freedesktop/NetworkManager/ActiveConnection/1
WIRED-PROPERTIES.キャリア: オン
IP4.アドレス[1]: ip = 192.168.122.102/24, gw = 192.168.122.1
IP4.DNS[1]: 192.168.122.1
IP6.アドレス[1]: ip = fe80::5054:ff:fe84:56d9/64, gw = ::
「デバイス名」
「接続名」
11
RHEL7/CentOS7 NetworkManager徹底入門
(参考)nmtuiコマンド
 nmtuiコマンドを使用すると、テキストベースのUIで対話的に設定変更が可能で
す。
– テスト環境などで、簡易的に設定変更を行う際は便利ですが、設定手順をコマンドとし
て記録/再現することができませんので、本番環境では使用しない方がよいでしょう。
nmcliによる設定
13
RHEL7/CentOS7 NetworkManager徹底入門
新規接続の追加
 次は、デバイス「ens6」に紐付けられた接続「ens6-con」を作成して、IPアドレ
スの設定を行う例です。
– デバイス名と接続名が独立していることに注意してください。
– 「nmcli c mod」では、次のように複数の項目をまとめて設定可能です。
• nmcli c mod <接続名> <設定項目> <設定内容> <設定項目> <設定内容> ...
– 設定可能な項目は、現在の設定内容をすべて出力すると分かります。
# nmcli c add type eth ifname ens6 con-name ens6-con
# nmcli c mod ens6-con ipv4.method manual ipv4.addresses "192.168.1.11/24" ipv4.gateway "192.168.1.1"
# nmcli c down ens6-con; nmcli c up ens6-con
「デバイス名」 「接続名」
「設定変更を反映」
# nmcli c show ens6-con
connection.id: ens6-con
connection.uuid: d9388c4e-31af-4ba9-bfda-c58e74316b14
connection.interface-name: ens6
...(中略)...
ipv4.method: manual
ipv4.dns:
ipv4.dns-search:
ipv4.addresses: { ip = 192.168.100.11/24, gw = 0.0.0.0 }
ipv4.routes:
...(以下省略)...
「IP/Mask」 「Gateway」
14
RHEL7/CentOS7 NetworkManager徹底入門
既存接続の変更
 既存の接続を設定変更する際は、先に説明した「nmcli c mod」を使用します。
– 次は、IPアドレスの設定をDHCPに変更する例です。
– 「nmcli c edit」は対話的に変更するオプションですが、次の「describe」コマンドで設
定項目の説明が表示できます。
# nmcli c mod ens6-con ipv4.method auto ipv4.addresses "" ipv4.gateway ""
# nmcli c down ens6-con; nmcli c up ens6-con
# nmcli c edit ens6-con
...
nmcli> describe ipv4.addresses
=== [addresses] ===
[NM プロパティの詳細]
Array of IPv4 address structures. Each IPv4 address structure is composed of 3 32-bit values; the
first being the IPv4 address (network byte order), the second the prefix (1 - 32), and last the
IPv4 gateway (network byte order). The gateway may be left as 0 if no gateway exists for that
subnet. For the 'auto' method, given IP addresses are appended to those returned by automatic
configuration. Addresses cannot be used with the 'shared', 'link-local', or 'disabled' methods as
addressing is either automatic or disabled with these methods.
[nmcli 固有の詳細]
次のような形式で IPv4 アドレスの一覧を入力してください。
ip[/prefix] [gateway], ip[/prefix] [gateway],...
プレフィックスがないものはプレフィックス 32 とみなします。
例: 192.168.1.5/24 192.168.1.1, 10.0.0.11/24
nmcli> quit
15
RHEL7/CentOS7 NetworkManager徹底入門
接続の削除
 既存の接続を削除する際は、「nmcli c delete」を使用します。
– 次は、先に作成した「ens6-con」を削除する例です。
 nmcliの使い方は、次のオンラインドキュメントも参考になります。
– # man nmcli
• nmcliコマンドの全般的な説明
– # man nmcli-examples
• Bonding, Teaming, Bridgeなどの構成例が記載されています
# nmcli c
名前 UUID タイプ デバイス
eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2
ens6-con d9388c4e-31af-4ba9-bfda-c58e74316b14 802-3-ethernet ens6
# nmcli c delete ens6-con
# nmcli c
名前 UUID タイプ デバイス
eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2
16
RHEL7/CentOS7 NetworkManager徹底入門
ホストネームの設定について
 nmcliコマンドでホストネームを設定することもできます。
– 次はホストネームを「rhel7」に変更する例です。
 RHEL7では、ホストネームの管理はsystemdが行っており、本来は、hostnamectl
コマンドで設定します。
– ncmliは、hostnamectlコマンドに相当するAPIでsystemdを呼び出して、ホストネームを
変更しています。
– 次はhostnamectlコマンドでホストネームを変更する例です。
# hostnamectl set-hostname rhel7
# hostnamectl
Static hostname: rhel7
Icon name: computer
Chassis: n/a
Machine ID: d16c14e0d938a994f66447949c8f070e
Boot ID: 84e3caad343e436eb0ad6663e64f92ab
Virtualization: kvm
Operating System: Employee SKU
CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server
Kernel: Linux 3.10.0-123.13.2.el7.x86_64
Architecture: x86_64
# nmcli g hostname rhel7
# nmcli g hostname
rhel7
仮想ブリッジ/VLANデバイスの作成
18
RHEL7/CentOS7 NetworkManager徹底入門
仮想ブリッジの作成手順 (1)
 次は、仮想ブリッジ「br0」を作成して、物理NIC「ens6」を接続する手順です。
– 確認用にbrctlコマンドを提供する「bridge-utils」を導入しておきます。
– 仮想ブリッジ「br0」とその接続「bridge-br0」を作成します。
• 「con-name」オプションを省略すると、接続名は「bridge-<デバイス名>」になります。
– 仮想ブリッジにIPアドレスなどの設定を追加します。
– 仮想ブリッジに物理NIC「ens6」を接続するための接続「bridge-slave-ens6」を追加し
ます。
• 「con-name」オプションを省略すると、接続名は「bridge-slave-<デバイス名>」になります。
# nmcli c add type bridge ifname br0 con-name bridge-br0
# yum -y install bridge-utils
# nmcli c mod bridge-br0 bridge.stp no
# nmcli c mod bridge-br0 ipv4.method manual ipv4.addresses "192.168.1.11/24" ipv4.gateway "192.168.1.1"
# nmcli c mod bridge-br0 ipv4.dns 8.8.8.8 ipv4.dns-search redhat.com
# nmcli c add type bridge-slave ifname ens6 con-name bridge-slave-ens6 master bridge-br0
19
RHEL7/CentOS7 NetworkManager徹底入門
仮想ブリッジの作成手順 (2)
– それぞれの「接続」をdown/upして、設定変更を反映します。
– 設定結果を確認します。
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.525400eb919c no ens6
# ip addr show br0
6: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 52:54:00:eb:91:9c brd ff:ff:ff:ff:ff:ff
inet 192.168.1.11/24 brd 192.168.1.255 scope global br0
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:feeb:919c/64 scope link
valid_lft forever preferred_lft forever
# nmcli c down bridge-slave-ens6
# nmcli c down bridge-br0
# nmcli c up bridge-br0
# nmcli c up bridge-slave-ens6
eth2
ens7
br0 192.168.1.11
ens6
20
RHEL7/CentOS7 NetworkManager徹底入門
VLANデバイスの作成手順 (1)
 次は、物理NIC「ens7」にVLAN IDが10と11のVLANデバイスを接続する例です。
– VLANデバイス「vlan10」と、それを物理デバイス「ens7」にVLAN ID「10」で接続す
るための接続「vlan-vlan10」を作成します。
• 「con-name」オプションを省略すると、接続名は「bridge-<デバイス名>」になります。
– VLANデバイス「vlan10」にIPアドレスの設定を追加します。
– 同様にVLANデバイス「vlan11」を作成して、IPアドレスを設定します。
– それぞれの「接続」をdown/upして、設定変更を反映します。
# nmcli c add type vlan ifname vlan10 con-name vlan-vlan10 dev ens7 id 10
# nmcli c mod vlan-vlan10 ipv4.method manual ipv4.addresses "192.168.10.101/24"
eth2
ens6
vlan10 192.168.10.101
192.168.11.101
# nmcli c add type vlan ifname vlan11 con-name vlan-vlan11 dev ens7 id 11
# nmcli c mod vlan-vlan11 ipv4.method manual ipv4.addresses "192.168.11.101/24"
vlan11
ens7
# nmcli c down vlan-vlan10; nmcli c up vlan-vlan10
# nmcli c down vlan-vlan11; nmcli c up vlan-vlan11
21
RHEL7/CentOS7 NetworkManager徹底入門
VLANデバイスの作成手順 (2)
– 設定結果を確認します。
# cat /proc/net/vlan/config
VLAN Dev name | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
vlan10 | 10 | ens7
vlan11 | 11 | ens7
# ip addr show vlan10
17: vlan10@ens7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 52:54:00:aa:a4:66 brd ff:ff:ff:ff:ff:ff
inet 192.168.10.101/24 brd 192.168.10.255 scope global vlan10
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:feaa:a466/64 scope link
valid_lft forever preferred_lft forever
# ip addr show vlan11
18: vlan11@ens7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 52:54:00:aa:a4:66 brd ff:ff:ff:ff:ff:ff
inet 192.168.11.101/24 brd 192.168.11.255 scope global vlan11
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:feaa:a466/64 scope link
valid_lft forever preferred_lft forever
Teamデバイスの作成
23
RHEL7/CentOS7 NetworkManager徹底入門
Teamデバイスとは?
 RHEL7では、物理NICの冗長化について、Bondingドライバーに加えて、Teamド
ライバーが使用できます。
– BondingドライバーとTeamドライバーの比較は次の資料が参考になります。
• If You Like Bonding, You Will Love Teaming
http://rhelblog.redhat.com/2014/06/23/team-driver/
 Teamドライバーの機能は、基本的にはBondingドライバーと同じですが、実装上
で次のような違いがあります。
– Bondingドライバーはすべての機能がカーネルモジュールとして実装されており、機能拡
張が困難。また、設定変更にはモジュールの再読み込みが必要。
– Teamドライバーは、カーネルモジュールとユーザーランドで機能を分離したデザインに
なっており、機能拡張や管理ツールの実装が容易。
 ここでは、nmcliコマンドを用いて、TeamドライバーによるNIC冗長化を設定する
手順を紹介します。
24
RHEL7/CentOS7 NetworkManager徹底入門
Teamデバイスの作成 (1)
 次は、物理デバイス「ens6」「ens7」をまとめたTeamデバイス「team0」を作成
する手順です。
– Teamデバイス「team0」とその接続「team-team0」を作成した上で、IPアドレスを設
定しておきます。
• 「con-name」オプションを省略すると、接続名は「team-<デバイス名>」になります。
– 物理NIC「ens6」と「ens7」をTeamデバイスのスレーブとして追加する接続「team-
slave-ens6」と「team-slave-ens7」を作成します。
• 「con-name」オプションを省略すると、接続名は「team-slave-<デバイス名>」になります。
– Teamingの構成は、デフォルトではラウンドロビン方式になります。デフォルトの構成で
かまわない場合は、それぞれの接続をdown/upしてTeamデバイスを有効化します。
# nmcli c add type team-slave ifname ens6 con-name team-slave-ens6 master team-team0
# nmcli c add type team-slave ifname ens7 con-name team-slave-ens7 master team-team0
# nmcli c add type team ifname team0 con-name team-team0
# nmcli c mod team-team0 ipv4.method manual ipv4.addresses "192.168.1.101/24"
# nmcli c down team-team0
# nmcli c down team-slave-ens6
# nmcli c down team-slave-ens7
# nmcli c up team-slave-ens6
# nmcli c up team-slave-ens7
# nmcli c up team-team0
25
RHEL7/CentOS7 NetworkManager徹底入門
Teamデバイスの作成 (2)
 Teamデバイスの稼動状態を確認します。
– 接続の状態は次のようになります。
– Teamデバイスの稼動状態は、「teamdctl」コマンドで確認します。
# teamdctl team0 state
setup:
runner: roundrobin
ports:
ens7
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
ens6
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
# nmcli c
名前 UUID タイプ デバイス
team-slave-ens7 0114a0a7-e3f0-43aa-9ba8-b716ca9d55f9 802-3-ethernet ens7
eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2
team-slave-ens6 00d62380-6f5a-4d53-887d-3509d65ec400 802-3-ethernet ens6
Team-team0 869751cf-d123-4fa1-88a6-ce7d86474e5a team team0
26
RHEL7/CentOS7 NetworkManager徹底入門
Teamデバイスの構成変更 (1)
 Teamデバイスの構成は、JSONファイルに記載して、それを読み込みます。
– 下記のディレクトリーにサンプルの設定ファイルが用意されています。
– ロードバランス方式の他に、NICの死活監視方法(ethtoolによるリンク監視、ARPリク
エストの応答確認など)が設定可能です。
# ls /usr/share/doc/teamd-1.9/example_configs/
activebackup_arp_ping_1.conf activebackup_multi_lw_1.conf loadbalance_2.conf
activebackup_arp_ping_2.conf activebackup_nsna_ping_1.conf loadbalance_3.conf
activebackup_ethtool_1.conf broadcast.conf random.conf
activebackup_ethtool_2.conf lacp_1.conf roundrobin.conf
activebackup_ethtool_3.conf loadbalance_1.conf roundrobin_2.conf
27
RHEL7/CentOS7 NetworkManager徹底入門
Teamデバイスの構成変更 (2)
 次は、TeamデバイスをActive-Bakcup(自動切り戻し無し)に設定する例です。
# cat myconfig.conf
{
"device": "team0",
"runner": {"name": "activebackup"},
"link_watch": {"name": "ethtool"},
"ports": {
"ens6": {
"prio": -10,
"sticky": true
},
"ens7": {
"prio": 100
}
}
}
# nmcli c mod team-team0 team.config myconfig.conf
# nmcli c down team-team0
# nmcli c down team-slave-ens6
# nmcli c down team-slave-ens7
# nmcli c up team-slave-ens6
# nmcli c up team-slave-ens7
# nmcli c up team-team0
# teamdctl team01 state
setup:
runner: activebackup
ports:
ens6
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
ens7
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
runner:
active port: ens7
自動切り戻し無し
eth2
ens6
ens7
team0
192.168.1.101
Active
Backup
参考資料
29
RHEL7/CentOS7 NetworkManager徹底入門
参考資料
 RHEL7/CentOS7の新規コマンド総まとめ!
– http://www.school.ctc-g.co.jp/columns/nakai/nakai47.html 
 RHEL7/CentOS7を満喫するための情報まとめ
– http://d.hatena.ne.jp/enakai00/20141202/1417492840
 RHEL7/CentOS7のnmcliコマンドでTeamデバイス/Bonding/VLAN/ブリッジを組み合わせる
方法
– http://d.hatena.ne.jp/enakai00/20150118/1421587442
中井悦司
Twitter @enakai00
オープンクラウド・キャンパス
RHEL7/CentOS7でLinux最新技術を
学びましょう!

More Related Content

What's hot

新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみたShuntaro Saiba
 
OpenStackで始めるクラウド環境構築入門
OpenStackで始めるクラウド環境構築入門OpenStackで始めるクラウド環境構築入門
OpenStackで始めるクラウド環境構築入門VirtualTech Japan Inc.
 
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)Tetsuya Hasegawa
 
AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較beyond Co., Ltd.
 
DockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐるDockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐるKohei Tokunaga
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンKentaro Yoshida
 
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方Toru Makabe
 
OpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれOpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれToru Makabe
 
TIME_WAITに関する話
TIME_WAITに関する話TIME_WAITに関する話
TIME_WAITに関する話Takanori Sejima
 
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!NGINX, Inc.
 
大規模DCのネットワークデザイン
大規模DCのネットワークデザイン大規模DCのネットワークデザイン
大規模DCのネットワークデザインMasayuki Kobayashi
 
知っているようで知らないPAMのお話
知っているようで知らないPAMのお話知っているようで知らないPAMのお話
知っているようで知らないPAMのお話Serverworks Co.,Ltd.
 
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたtoshi_pp
 
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法Takuya ASADA
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyYahoo!デベロッパーネットワーク
 
root権限無しでKubernetesを動かす
root権限無しでKubernetesを動かす root権限無しでKubernetesを動かす
root権限無しでKubernetesを動かす Akihiro Suda
 
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep DiveToru Makabe
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたakira6592
 

What's hot (20)

新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
 
OpenStackで始めるクラウド環境構築入門
OpenStackで始めるクラウド環境構築入門OpenStackで始めるクラウド環境構築入門
OpenStackで始めるクラウド環境構築入門
 
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
 
AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較
 
DockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐるDockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐる
 
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについてeBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
 
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
 
OpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれOpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれ
 
TIME_WAITに関する話
TIME_WAITに関する話TIME_WAITに関する話
TIME_WAITに関する話
 
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
 
大規模DCのネットワークデザイン
大規模DCのネットワークデザイン大規模DCのネットワークデザイン
大規模DCのネットワークデザイン
 
知っているようで知らないPAMのお話
知っているようで知らないPAMのお話知っているようで知らないPAMのお話
知っているようで知らないPAMのお話
 
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
 
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
 
root権限無しでKubernetesを動かす
root権限無しでKubernetesを動かす root権限無しでKubernetesを動かす
root権限無しでKubernetesを動かす
 
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 

Similar to RHEL7/CentOS7 NetworkManager徹底入門

RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料
RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料
RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料VirtualTech Japan Inc.
 
OSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGOSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGHideki Saito
 
RDOを使ったOpenStack Havana - Neutron 構築編
RDOを使ったOpenStack Havana - Neutron 構築編RDOを使ったOpenStack Havana - Neutron 構築編
RDOを使ったOpenStack Havana - Neutron 構築編VirtualTech Japan Inc.
 
[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編
[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編
[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編Amazon Web Services Japan
 
Hyper-V を Windows PowerShell から管理する
Hyper-V を Windows PowerShell から管理するHyper-V を Windows PowerShell から管理する
Hyper-V を Windows PowerShell から管理するjunichi anno
 
OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月
OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月
OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月VirtualTech Japan Inc.
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストールYasuhiro Arai
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Yasuhiro Arai
 
クックパッドでのVPC移行について
クックパッドでのVPC移行についてクックパッドでのVPC移行について
クックパッドでのVPC移行についてSugawara Genki
 
20131211 Neutron Havana
20131211 Neutron Havana20131211 Neutron Havana
20131211 Neutron HavanaAkihiro Motoki
 
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデートKazumasa Ikuta
 
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1Etsuji Nakai
 
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...Insight Technology, Inc.
 
OpenStack with OpenFlow
OpenStack with OpenFlowOpenStack with OpenFlow
OpenStack with OpenFlowToshiki Tsuboi
 
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~cyberblack28 Ichikawa
 
VlanManagerを使ってみた
VlanManagerを使ってみたVlanManagerを使ってみた
VlanManagerを使ってみたHiroki Ishikawa
 
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf) Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf) VirtualTech Japan Inc.
 

Similar to RHEL7/CentOS7 NetworkManager徹底入門 (20)

Lxc on cloud
Lxc on cloudLxc on cloud
Lxc on cloud
 
RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料
RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料
RDOを使ったOpenStack Havana - Neutron 構築編 :補足資料
 
OSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGOSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUG
 
RDOを使ったOpenStack Havana - Neutron 構築編
RDOを使ったOpenStack Havana - Neutron 構築編RDOを使ったOpenStack Havana - Neutron 構築編
RDOを使ったOpenStack Havana - Neutron 構築編
 
[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編
[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編
[AWS Summit 2012] クラウドデザインパターン#4 CDP VPC移行編
 
Hyper-V を Windows PowerShell から管理する
Hyper-V を Windows PowerShell から管理するHyper-V を Windows PowerShell から管理する
Hyper-V を Windows PowerShell から管理する
 
OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月
OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月
OpenStack-Ansibleで作るOpenStack HA環境 手順書解説 - OpenStack最新情報セミナー 2016年3月
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストール
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)
 
クックパッドでのVPC移行について
クックパッドでのVPC移行についてクックパッドでのVPC移行について
クックパッドでのVPC移行について
 
20131211 Neutron Havana
20131211 Neutron Havana20131211 Neutron Havana
20131211 Neutron Havana
 
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート
 
IOS/IOS-XE 運用管理機能アップデート
IOS/IOS-XE 運用管理機能アップデートIOS/IOS-XE 運用管理機能アップデート
IOS/IOS-XE 運用管理機能アップデート
 
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:ハンズオンNo1
 
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
 
OpenStack with OpenFlow
OpenStack with OpenFlowOpenStack with OpenFlow
OpenStack with OpenFlow
 
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
 
VlanManagerを使ってみた
VlanManagerを使ってみたVlanManagerを使ってみた
VlanManagerを使ってみた
 
Osc2009 Do Xen Hara
Osc2009 Do Xen HaraOsc2009 Do Xen Hara
Osc2009 Do Xen Hara
 
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf) Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
 

More from Etsuji Nakai

「ITエンジニアリングの本質」を考える
「ITエンジニアリングの本質」を考える「ITエンジニアリングの本質」を考える
「ITエンジニアリングの本質」を考えるEtsuji Nakai
 
Googleのインフラ技術に見る基盤標準化とDevOpsの真実
Googleのインフラ技術に見る基盤標準化とDevOpsの真実Googleのインフラ技術に見る基盤標準化とDevOpsの真実
Googleのインフラ技術に見る基盤標準化とDevOpsの真実Etsuji Nakai
 
Introducton to Convolutional Nerural Network with TensorFlow
Introducton to Convolutional Nerural Network with TensorFlowIntroducton to Convolutional Nerural Network with TensorFlow
Introducton to Convolutional Nerural Network with TensorFlowEtsuji Nakai
 
Googleにおける機械学習の活用とクラウドサービス
Googleにおける機械学習の活用とクラウドサービスGoogleにおける機械学習の活用とクラウドサービス
Googleにおける機械学習の活用とクラウドサービスEtsuji Nakai
 
Spannerに関する技術メモ
Spannerに関する技術メモSpannerに関する技術メモ
Spannerに関する技術メモEtsuji Nakai
 
Googleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsGoogleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsEtsuji Nakai
 
A Brief History of My English Learning
A Brief History of My English LearningA Brief History of My English Learning
A Brief History of My English LearningEtsuji Nakai
 
TensorFlowプログラミングと分類アルゴリズムの基礎
TensorFlowプログラミングと分類アルゴリズムの基礎TensorFlowプログラミングと分類アルゴリズムの基礎
TensorFlowプログラミングと分類アルゴリズムの基礎Etsuji Nakai
 
TensorFlowによるニューラルネットワーク入門
TensorFlowによるニューラルネットワーク入門TensorFlowによるニューラルネットワーク入門
TensorFlowによるニューラルネットワーク入門Etsuji Nakai
 
Using Kubernetes on Google Container Engine
Using Kubernetes on Google Container EngineUsing Kubernetes on Google Container Engine
Using Kubernetes on Google Container EngineEtsuji Nakai
 
Lecture note on PRML 8.2
Lecture note on PRML 8.2Lecture note on PRML 8.2
Lecture note on PRML 8.2Etsuji Nakai
 
Machine Learning Basics for Web Application Developers
Machine Learning Basics for Web Application DevelopersMachine Learning Basics for Web Application Developers
Machine Learning Basics for Web Application DevelopersEtsuji Nakai
 
Your first TensorFlow programming with Jupyter
Your first TensorFlow programming with JupyterYour first TensorFlow programming with Jupyter
Your first TensorFlow programming with JupyterEtsuji Nakai
 
Deep Q-Network for beginners
Deep Q-Network for beginnersDeep Q-Network for beginners
Deep Q-Network for beginnersEtsuji Nakai
 
TensorFlowで学ぶDQN
TensorFlowで学ぶDQNTensorFlowで学ぶDQN
TensorFlowで学ぶDQNEtsuji Nakai
 
DevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきかDevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきかEtsuji Nakai
 
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜Etsuji Nakai
 

More from Etsuji Nakai (20)

PRML11.2-11.3
PRML11.2-11.3PRML11.2-11.3
PRML11.2-11.3
 
「ITエンジニアリングの本質」を考える
「ITエンジニアリングの本質」を考える「ITエンジニアリングの本質」を考える
「ITエンジニアリングの本質」を考える
 
Googleのインフラ技術に見る基盤標準化とDevOpsの真実
Googleのインフラ技術に見る基盤標準化とDevOpsの真実Googleのインフラ技術に見る基盤標準化とDevOpsの真実
Googleのインフラ技術に見る基盤標準化とDevOpsの真実
 
Introducton to Convolutional Nerural Network with TensorFlow
Introducton to Convolutional Nerural Network with TensorFlowIntroducton to Convolutional Nerural Network with TensorFlow
Introducton to Convolutional Nerural Network with TensorFlow
 
Googleにおける機械学習の活用とクラウドサービス
Googleにおける機械学習の活用とクラウドサービスGoogleにおける機械学習の活用とクラウドサービス
Googleにおける機械学習の活用とクラウドサービス
 
Spannerに関する技術メモ
Spannerに関する技術メモSpannerに関する技術メモ
Spannerに関する技術メモ
 
Googleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsGoogleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOps
 
A Brief History of My English Learning
A Brief History of My English LearningA Brief History of My English Learning
A Brief History of My English Learning
 
TensorFlowプログラミングと分類アルゴリズムの基礎
TensorFlowプログラミングと分類アルゴリズムの基礎TensorFlowプログラミングと分類アルゴリズムの基礎
TensorFlowプログラミングと分類アルゴリズムの基礎
 
TensorFlowによるニューラルネットワーク入門
TensorFlowによるニューラルネットワーク入門TensorFlowによるニューラルネットワーク入門
TensorFlowによるニューラルネットワーク入門
 
Using Kubernetes on Google Container Engine
Using Kubernetes on Google Container EngineUsing Kubernetes on Google Container Engine
Using Kubernetes on Google Container Engine
 
Lecture note on PRML 8.2
Lecture note on PRML 8.2Lecture note on PRML 8.2
Lecture note on PRML 8.2
 
Machine Learning Basics for Web Application Developers
Machine Learning Basics for Web Application DevelopersMachine Learning Basics for Web Application Developers
Machine Learning Basics for Web Application Developers
 
Your first TensorFlow programming with Jupyter
Your first TensorFlow programming with JupyterYour first TensorFlow programming with Jupyter
Your first TensorFlow programming with Jupyter
 
Deep Q-Network for beginners
Deep Q-Network for beginnersDeep Q-Network for beginners
Deep Q-Network for beginners
 
Life with jupyter
Life with jupyterLife with jupyter
Life with jupyter
 
TensorFlowで学ぶDQN
TensorFlowで学ぶDQNTensorFlowで学ぶDQN
TensorFlowで学ぶDQN
 
DevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきかDevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきか
 
PRML7.2
PRML7.2PRML7.2
PRML7.2
 
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
 

Recently uploaded

ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦Sadao Tokuyama
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 

Recently uploaded (12)

ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 
2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 

RHEL7/CentOS7 NetworkManager徹底入門

  • 2. 2 RHEL7/CentOS7 NetworkManager徹底入門 自己紹介  中井悦司(なかいえつじ) – Twitter @enakai00  日々の仕事 – Senior Solution Architect and Cloud Evangelist at Red Hat K.K. 企業システムでオープンソースの活用を希望される お客様を全力でご支援させていただきます。  昔とった杵柄 – 素粒子論の研究(超弦理論とか) – 予備校講師(物理担当) – インフラエンジニア(Unix/Linux専門) 好評発売中!
  • 3. 3 RHEL7/CentOS7 NetworkManager徹底入門 Contents  NetworkManagerの概要  nmcliによる設定  仮想ブリッジ/VLANデバイスの作成  Teamデバイスの作成  参考資料
  • 5. 5 RHEL7/CentOS7 NetworkManager徹底入門 NetworkManagerとは?  NetworkManagerは、RHEL7のネットワークを動的に設定するサービスです。 – ネットワークデバイスが動的に追加・削除される環境に対応することができます。  RHEL7ではデフォルトのネットワーク管理機能となっており、動的変更が不要な場合で も利用が必須です。  設定内容を表す「接続(Connection)」とネットワークデバイスを表す「(デバ イス)Device」を別々に定義して、それらを紐付けるという処理を行います。 – 新しい「デバイス(Device)」が追加された際に、既存の「接続(Connection)」に自 動で紐付けることで動的変更に対応します。管理者が明示的に紐付けを指定することも できます。 NAME="Ethernet connection 1" UUID="bc302e8f-f5f3-478d-bf87-e77d3288dac7" TYPE="Ethernet" BOOTPROTO="static" IPADDR0="192.168.122.10" ... NAME="Wi-Fi connection 1" UUID=6fda7095-1685-468f-a138-608f53eb6048 TYPE=Wireless BOOTPROTO=dhcp ESSID="mynet" ... eth0 接続(Connection) 適用 デバイス (Device)
  • 6. 6 RHEL7/CentOS7 NetworkManager徹底入門 NICのネーミングルールについて  RHEL7では、NICのネーミングルールに「Predictable Network Interface Names」が採用されています。 – 典型的には、「ens6」「enp0s25」「wlp2s0」などのデバイス名になります(*) 。  デバイスの物理ロケーションに応じて、固定的なデバイス名を割り当てます。 – 後半の「s6」の部分は、BIOSから取得した論理番号で、PCIスロット番号などに基いて、 BIOSが独自に提供します。BIOSが論理番号を提供しない場合は、カーネルが認識したPCI バス番号とスロット番号に基いて、「p<Bus>s<Slot>」のルールになります。 – ロケーション情報を取得できないデバイスは、古典的な「ethX」になります。Linux KVMのvirtio NICなどが該当します。 ens6 en:イーサネット wl:ワイヤレス o:オンボード s:PCI Express デバイス番号(PCIスロット番号などに対応) (*) DELL製のサーバーでは、また異なるネーミングルール(biosdevname)になります。  (参考)「RHEL7のNICのネーミングルール」http://d.hatena.ne.jp/enakai00/20140728/1406504163
  • 7. 7 RHEL7/CentOS7 NetworkManager徹底入門 net-toolsとiproute2について  RHEL7を最小構成でインストールした環境では、「ifconfig, route, netstat, arp」などのネットワーク関連コマンドが入っていません。 – これらのコマンドは、「net-tools」パッケージを追加することで利用可能になります。  「net-tools」パッケージを導入しない環境では、「iproute2」パッケージに含ま れる「ip, ss」などのコマンドを使用してください。 – 今後は、iproute2パッケージの方が標準になる予定です。 # yum -y install net-tools net-tools iproute2 ifconfig ip addr, ip link route ip route netstat ss netstat -i ip -s link arp ip neighbor 主なコマンドの対応表 (参考)「RHEL7/CentOS7でipコマンドをマスター」http://d.hatena.ne.jp/enakai00/20140712/1405139841
  • 8. 8 RHEL7/CentOS7 NetworkManager徹底入門 デフォルトでの環境構成例  RHEL7インストーラーのGUIでネットワークを設定すると次のような構成になり ます。 – デバイスと同じ名前の「接続」が定義されて、該当デバイスに紐付けられます。「接 続」の名前は、一般には、デバイス名と無関係なので注意してください。 # nmcli d デバイス タイプ 状態 接続 eth2 ethernet 接続済み eth2 ens6 ethernet 切断済み -- ens7 ethernet 切断済み -- lo loopback 管理無し -- # nmcli c 名前 UUID タイプ デバイス eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2 「デバイス」の確認(「d」は「device」の略) 「接続」の確認(「c」は「connection」の略) 「デバイス」が紐付けられた「接続」 eth2 ens6 ens7 virtio NIC rtl8139 Linux KVMの仮想マシンに 「Realtek」と「virtio」の 仮想NICをアサインした場合の例
  • 9. 9 RHEL7/CentOS7 NetworkManager徹底入門 設定内容の確認方法 (1)  NetworkManagerで定義した「接続」の設定内容は、下記の設定ファイルに保存 されます。 – /etc/sysconfig/network-scripts/ifcfg-<接続名> • インストーラーが作成する設定ファイルでは「” ”」でクォートされていますが、これは必須では ありません。 – 設定ファイルを編集した場合は、次のコマンドで変更を反映します。 • 実際の設定変更は、設定ファイルの編集ではなく、後述のnmcliコマンドの使用が推奨です。 # nmcli c reload <接続名> # nmcli c down <接続名>; nmcli c up <接続名> # cat /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE="Ethernet" ...(中略)... NAME="eth2" UUID="bc302e8f-f5f3-478d-bf87-e77d3288dac7" ONBOOT="yes" HWADDR="52:54:00:84:56:D9" IPADDR0="192.168.122.102" PREFIX0="24" GATEWAY0="192.168.122.1" DNS1="192.168.122.1" IPV6_PEERDNS="yes" IPV6_PEERROUTES="yes"
  • 10. 10 RHEL7/CentOS7 NetworkManager徹底入門 設定内容の確認方法 (2)  特定デバイスの設定内容は、次のコマンドで確認します。 – これは、該当デバイスに紐付けられた「接続」を通して設定された内容になります。  「接続」の設定内容を直接に確認する際は、次のコマンドを使用します。 # nmcli c show eth2 connection.id: eth2 connection.uuid: bc302e8f-f5f3-478d-bf87-e77d3288dac7 ...(中略)... ipv4.method: manual ipv4.dns: 192.168.122.1 ipv4.dns-search: ipv4.addresses: { ip = 192.168.122.102/24, gw = 192.168.122.1 } ...(以下省略)... # nmcli d show eth2 GENERAL.デバイス: eth2 GENERAL.タイプ: ethernet GENERAL.HWADDR: 52:54:00:84:56:D9 GENERAL.MTU: 1500 GENERAL.状態: 100 (接続済み) GENERAL.接続: eth0 GENERAL.CON パス: /org/freedesktop/NetworkManager/ActiveConnection/1 WIRED-PROPERTIES.キャリア: オン IP4.アドレス[1]: ip = 192.168.122.102/24, gw = 192.168.122.1 IP4.DNS[1]: 192.168.122.1 IP6.アドレス[1]: ip = fe80::5054:ff:fe84:56d9/64, gw = :: 「デバイス名」 「接続名」
  • 11. 11 RHEL7/CentOS7 NetworkManager徹底入門 (参考)nmtuiコマンド  nmtuiコマンドを使用すると、テキストベースのUIで対話的に設定変更が可能で す。 – テスト環境などで、簡易的に設定変更を行う際は便利ですが、設定手順をコマンドとし て記録/再現することができませんので、本番環境では使用しない方がよいでしょう。
  • 13. 13 RHEL7/CentOS7 NetworkManager徹底入門 新規接続の追加  次は、デバイス「ens6」に紐付けられた接続「ens6-con」を作成して、IPアドレ スの設定を行う例です。 – デバイス名と接続名が独立していることに注意してください。 – 「nmcli c mod」では、次のように複数の項目をまとめて設定可能です。 • nmcli c mod <接続名> <設定項目> <設定内容> <設定項目> <設定内容> ... – 設定可能な項目は、現在の設定内容をすべて出力すると分かります。 # nmcli c add type eth ifname ens6 con-name ens6-con # nmcli c mod ens6-con ipv4.method manual ipv4.addresses "192.168.1.11/24" ipv4.gateway "192.168.1.1" # nmcli c down ens6-con; nmcli c up ens6-con 「デバイス名」 「接続名」 「設定変更を反映」 # nmcli c show ens6-con connection.id: ens6-con connection.uuid: d9388c4e-31af-4ba9-bfda-c58e74316b14 connection.interface-name: ens6 ...(中略)... ipv4.method: manual ipv4.dns: ipv4.dns-search: ipv4.addresses: { ip = 192.168.100.11/24, gw = 0.0.0.0 } ipv4.routes: ...(以下省略)... 「IP/Mask」 「Gateway」
  • 14. 14 RHEL7/CentOS7 NetworkManager徹底入門 既存接続の変更  既存の接続を設定変更する際は、先に説明した「nmcli c mod」を使用します。 – 次は、IPアドレスの設定をDHCPに変更する例です。 – 「nmcli c edit」は対話的に変更するオプションですが、次の「describe」コマンドで設 定項目の説明が表示できます。 # nmcli c mod ens6-con ipv4.method auto ipv4.addresses "" ipv4.gateway "" # nmcli c down ens6-con; nmcli c up ens6-con # nmcli c edit ens6-con ... nmcli> describe ipv4.addresses === [addresses] === [NM プロパティの詳細] Array of IPv4 address structures. Each IPv4 address structure is composed of 3 32-bit values; the first being the IPv4 address (network byte order), the second the prefix (1 - 32), and last the IPv4 gateway (network byte order). The gateway may be left as 0 if no gateway exists for that subnet. For the 'auto' method, given IP addresses are appended to those returned by automatic configuration. Addresses cannot be used with the 'shared', 'link-local', or 'disabled' methods as addressing is either automatic or disabled with these methods. [nmcli 固有の詳細] 次のような形式で IPv4 アドレスの一覧を入力してください。 ip[/prefix] [gateway], ip[/prefix] [gateway],... プレフィックスがないものはプレフィックス 32 とみなします。 例: 192.168.1.5/24 192.168.1.1, 10.0.0.11/24 nmcli> quit
  • 15. 15 RHEL7/CentOS7 NetworkManager徹底入門 接続の削除  既存の接続を削除する際は、「nmcli c delete」を使用します。 – 次は、先に作成した「ens6-con」を削除する例です。  nmcliの使い方は、次のオンラインドキュメントも参考になります。 – # man nmcli • nmcliコマンドの全般的な説明 – # man nmcli-examples • Bonding, Teaming, Bridgeなどの構成例が記載されています # nmcli c 名前 UUID タイプ デバイス eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2 ens6-con d9388c4e-31af-4ba9-bfda-c58e74316b14 802-3-ethernet ens6 # nmcli c delete ens6-con # nmcli c 名前 UUID タイプ デバイス eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2
  • 16. 16 RHEL7/CentOS7 NetworkManager徹底入門 ホストネームの設定について  nmcliコマンドでホストネームを設定することもできます。 – 次はホストネームを「rhel7」に変更する例です。  RHEL7では、ホストネームの管理はsystemdが行っており、本来は、hostnamectl コマンドで設定します。 – ncmliは、hostnamectlコマンドに相当するAPIでsystemdを呼び出して、ホストネームを 変更しています。 – 次はhostnamectlコマンドでホストネームを変更する例です。 # hostnamectl set-hostname rhel7 # hostnamectl Static hostname: rhel7 Icon name: computer Chassis: n/a Machine ID: d16c14e0d938a994f66447949c8f070e Boot ID: 84e3caad343e436eb0ad6663e64f92ab Virtualization: kvm Operating System: Employee SKU CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server Kernel: Linux 3.10.0-123.13.2.el7.x86_64 Architecture: x86_64 # nmcli g hostname rhel7 # nmcli g hostname rhel7
  • 18. 18 RHEL7/CentOS7 NetworkManager徹底入門 仮想ブリッジの作成手順 (1)  次は、仮想ブリッジ「br0」を作成して、物理NIC「ens6」を接続する手順です。 – 確認用にbrctlコマンドを提供する「bridge-utils」を導入しておきます。 – 仮想ブリッジ「br0」とその接続「bridge-br0」を作成します。 • 「con-name」オプションを省略すると、接続名は「bridge-<デバイス名>」になります。 – 仮想ブリッジにIPアドレスなどの設定を追加します。 – 仮想ブリッジに物理NIC「ens6」を接続するための接続「bridge-slave-ens6」を追加し ます。 • 「con-name」オプションを省略すると、接続名は「bridge-slave-<デバイス名>」になります。 # nmcli c add type bridge ifname br0 con-name bridge-br0 # yum -y install bridge-utils # nmcli c mod bridge-br0 bridge.stp no # nmcli c mod bridge-br0 ipv4.method manual ipv4.addresses "192.168.1.11/24" ipv4.gateway "192.168.1.1" # nmcli c mod bridge-br0 ipv4.dns 8.8.8.8 ipv4.dns-search redhat.com # nmcli c add type bridge-slave ifname ens6 con-name bridge-slave-ens6 master bridge-br0
  • 19. 19 RHEL7/CentOS7 NetworkManager徹底入門 仮想ブリッジの作成手順 (2) – それぞれの「接続」をdown/upして、設定変更を反映します。 – 設定結果を確認します。 # brctl show bridge name bridge id STP enabled interfaces br0 8000.525400eb919c no ens6 # ip addr show br0 6: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP link/ether 52:54:00:eb:91:9c brd ff:ff:ff:ff:ff:ff inet 192.168.1.11/24 brd 192.168.1.255 scope global br0 valid_lft forever preferred_lft forever inet6 fe80::5054:ff:feeb:919c/64 scope link valid_lft forever preferred_lft forever # nmcli c down bridge-slave-ens6 # nmcli c down bridge-br0 # nmcli c up bridge-br0 # nmcli c up bridge-slave-ens6 eth2 ens7 br0 192.168.1.11 ens6
  • 20. 20 RHEL7/CentOS7 NetworkManager徹底入門 VLANデバイスの作成手順 (1)  次は、物理NIC「ens7」にVLAN IDが10と11のVLANデバイスを接続する例です。 – VLANデバイス「vlan10」と、それを物理デバイス「ens7」にVLAN ID「10」で接続す るための接続「vlan-vlan10」を作成します。 • 「con-name」オプションを省略すると、接続名は「bridge-<デバイス名>」になります。 – VLANデバイス「vlan10」にIPアドレスの設定を追加します。 – 同様にVLANデバイス「vlan11」を作成して、IPアドレスを設定します。 – それぞれの「接続」をdown/upして、設定変更を反映します。 # nmcli c add type vlan ifname vlan10 con-name vlan-vlan10 dev ens7 id 10 # nmcli c mod vlan-vlan10 ipv4.method manual ipv4.addresses "192.168.10.101/24" eth2 ens6 vlan10 192.168.10.101 192.168.11.101 # nmcli c add type vlan ifname vlan11 con-name vlan-vlan11 dev ens7 id 11 # nmcli c mod vlan-vlan11 ipv4.method manual ipv4.addresses "192.168.11.101/24" vlan11 ens7 # nmcli c down vlan-vlan10; nmcli c up vlan-vlan10 # nmcli c down vlan-vlan11; nmcli c up vlan-vlan11
  • 21. 21 RHEL7/CentOS7 NetworkManager徹底入門 VLANデバイスの作成手順 (2) – 設定結果を確認します。 # cat /proc/net/vlan/config VLAN Dev name | VLAN ID Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD vlan10 | 10 | ens7 vlan11 | 11 | ens7 # ip addr show vlan10 17: vlan10@ens7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP link/ether 52:54:00:aa:a4:66 brd ff:ff:ff:ff:ff:ff inet 192.168.10.101/24 brd 192.168.10.255 scope global vlan10 valid_lft forever preferred_lft forever inet6 fe80::5054:ff:feaa:a466/64 scope link valid_lft forever preferred_lft forever # ip addr show vlan11 18: vlan11@ens7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP link/ether 52:54:00:aa:a4:66 brd ff:ff:ff:ff:ff:ff inet 192.168.11.101/24 brd 192.168.11.255 scope global vlan11 valid_lft forever preferred_lft forever inet6 fe80::5054:ff:feaa:a466/64 scope link valid_lft forever preferred_lft forever
  • 23. 23 RHEL7/CentOS7 NetworkManager徹底入門 Teamデバイスとは?  RHEL7では、物理NICの冗長化について、Bondingドライバーに加えて、Teamド ライバーが使用できます。 – BondingドライバーとTeamドライバーの比較は次の資料が参考になります。 • If You Like Bonding, You Will Love Teaming http://rhelblog.redhat.com/2014/06/23/team-driver/  Teamドライバーの機能は、基本的にはBondingドライバーと同じですが、実装上 で次のような違いがあります。 – Bondingドライバーはすべての機能がカーネルモジュールとして実装されており、機能拡 張が困難。また、設定変更にはモジュールの再読み込みが必要。 – Teamドライバーは、カーネルモジュールとユーザーランドで機能を分離したデザインに なっており、機能拡張や管理ツールの実装が容易。  ここでは、nmcliコマンドを用いて、TeamドライバーによるNIC冗長化を設定する 手順を紹介します。
  • 24. 24 RHEL7/CentOS7 NetworkManager徹底入門 Teamデバイスの作成 (1)  次は、物理デバイス「ens6」「ens7」をまとめたTeamデバイス「team0」を作成 する手順です。 – Teamデバイス「team0」とその接続「team-team0」を作成した上で、IPアドレスを設 定しておきます。 • 「con-name」オプションを省略すると、接続名は「team-<デバイス名>」になります。 – 物理NIC「ens6」と「ens7」をTeamデバイスのスレーブとして追加する接続「team- slave-ens6」と「team-slave-ens7」を作成します。 • 「con-name」オプションを省略すると、接続名は「team-slave-<デバイス名>」になります。 – Teamingの構成は、デフォルトではラウンドロビン方式になります。デフォルトの構成で かまわない場合は、それぞれの接続をdown/upしてTeamデバイスを有効化します。 # nmcli c add type team-slave ifname ens6 con-name team-slave-ens6 master team-team0 # nmcli c add type team-slave ifname ens7 con-name team-slave-ens7 master team-team0 # nmcli c add type team ifname team0 con-name team-team0 # nmcli c mod team-team0 ipv4.method manual ipv4.addresses "192.168.1.101/24" # nmcli c down team-team0 # nmcli c down team-slave-ens6 # nmcli c down team-slave-ens7 # nmcli c up team-slave-ens6 # nmcli c up team-slave-ens7 # nmcli c up team-team0
  • 25. 25 RHEL7/CentOS7 NetworkManager徹底入門 Teamデバイスの作成 (2)  Teamデバイスの稼動状態を確認します。 – 接続の状態は次のようになります。 – Teamデバイスの稼動状態は、「teamdctl」コマンドで確認します。 # teamdctl team0 state setup: runner: roundrobin ports: ens7 link watches: link summary: up instance[link_watch_0]: name: ethtool link: up ens6 link watches: link summary: up instance[link_watch_0]: name: ethtool link: up # nmcli c 名前 UUID タイプ デバイス team-slave-ens7 0114a0a7-e3f0-43aa-9ba8-b716ca9d55f9 802-3-ethernet ens7 eth2 bc302e8f-f5f3-478d-bf87-e77d3288dac7 802-3-ethernet eth2 team-slave-ens6 00d62380-6f5a-4d53-887d-3509d65ec400 802-3-ethernet ens6 Team-team0 869751cf-d123-4fa1-88a6-ce7d86474e5a team team0
  • 26. 26 RHEL7/CentOS7 NetworkManager徹底入門 Teamデバイスの構成変更 (1)  Teamデバイスの構成は、JSONファイルに記載して、それを読み込みます。 – 下記のディレクトリーにサンプルの設定ファイルが用意されています。 – ロードバランス方式の他に、NICの死活監視方法(ethtoolによるリンク監視、ARPリク エストの応答確認など)が設定可能です。 # ls /usr/share/doc/teamd-1.9/example_configs/ activebackup_arp_ping_1.conf activebackup_multi_lw_1.conf loadbalance_2.conf activebackup_arp_ping_2.conf activebackup_nsna_ping_1.conf loadbalance_3.conf activebackup_ethtool_1.conf broadcast.conf random.conf activebackup_ethtool_2.conf lacp_1.conf roundrobin.conf activebackup_ethtool_3.conf loadbalance_1.conf roundrobin_2.conf
  • 27. 27 RHEL7/CentOS7 NetworkManager徹底入門 Teamデバイスの構成変更 (2)  次は、TeamデバイスをActive-Bakcup(自動切り戻し無し)に設定する例です。 # cat myconfig.conf { "device": "team0", "runner": {"name": "activebackup"}, "link_watch": {"name": "ethtool"}, "ports": { "ens6": { "prio": -10, "sticky": true }, "ens7": { "prio": 100 } } } # nmcli c mod team-team0 team.config myconfig.conf # nmcli c down team-team0 # nmcli c down team-slave-ens6 # nmcli c down team-slave-ens7 # nmcli c up team-slave-ens6 # nmcli c up team-slave-ens7 # nmcli c up team-team0 # teamdctl team01 state setup: runner: activebackup ports: ens6 link watches: link summary: up instance[link_watch_0]: name: ethtool link: up ens7 link watches: link summary: up instance[link_watch_0]: name: ethtool link: up runner: active port: ens7 自動切り戻し無し eth2 ens6 ens7 team0 192.168.1.101 Active Backup
  • 29. 29 RHEL7/CentOS7 NetworkManager徹底入門 参考資料  RHEL7/CentOS7の新規コマンド総まとめ! – http://www.school.ctc-g.co.jp/columns/nakai/nakai47.html   RHEL7/CentOS7を満喫するための情報まとめ – http://d.hatena.ne.jp/enakai00/20141202/1417492840  RHEL7/CentOS7のnmcliコマンドでTeamデバイス/Bonding/VLAN/ブリッジを組み合わせる 方法 – http://d.hatena.ne.jp/enakai00/20150118/1421587442