labunix's blog

labunixのラボUnix

KVM上にLPIC303 Ver2.0の学習環境を構築する。

■KVM上にLPIC303 Ver2.0の学習環境を構築する。
 KVMホストはdebianの最新バージョン

$ lsb_release -d
Description:	Debian GNU/Linux 9.5 (stretch)

■KVM構築方法は以下と同じ。

 debian stretchにKVMを導入する。
 http://labunix.hateblo.jp/entry/20180501/1525182562

 debian stretchのKVMで仮想マシンのCPU、メモリ、NICの増設とディスクの拡張をしてみた。
 http://labunix.hateblo.jp/entry/20180502/1525262971

■サーバ、クライアント方式が基本となるため仮想マシンは2台を想定。

$ virsh list | grep lpic
 4     lpic303-1                      running
 5     lpic303-2                      running

■仮想マシンに割り当てるvcpuは、インストール時のみ4Core、再起動後は2Coreとする。

$ virsh setvcpus lpic303-1 2 --config
$ virsh setvcpus lpic303-2 2 --config
$ virsh dumpxml lpic303-1 | awk '/vcpu/'
  <vcpu placement='static'>4</vcpu>
$ virsh dumpxml lpic303-2 | awk '/vcpu/'
  <vcpu placement='static'>4</vcpu>

■仮想マシンに割り当てるメモリは、インストール時のみ4GB、再起動後は2GBとする。

$ virsh setmem lpic303-1 2G --config
$ virsh setmem lpic303-2 2G --config

$ virsh dumpxml lpic303-1 | awk '/memory unit/'
  <memory unit='KiB'>4194304</memory>
$ virsh dumpxml lpic303-2 | awk '/memory unit/'
  <memory unit='KiB'>4194304</memory>

■仮想マシンに割り当てるネットワークは、ホストのbr0に接続しりvnet*。

$ virsh dumpxml lpic303-1 | \
    awk 'BEGIN{f=0}{if($1=="<interface"||$1=="</interface>") \
                   {f+=1;print $0}else{if(f==1){gsub(":[0-9a-f][0-9a-f]",":XX",$0);print $0}}}'
    <interface type='bridge'>
      <mac address='52:XX:XX:XX:XX:XX'/>
      <source bridge='br0'/>
      <target dev='vnet1'/>
      <model type='virtio'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

$ virsh dumpxml lpic303-2 | \
    awk 'BEGIN{f=0}{if($1=="<interface"||$1=="</interface>") \
                   {f+=1;print $0}else{if(f==1){gsub(":[0-9a-f][0-9a-f]",":XX",$0);print $0}}}'
    <interface type='bridge'>
      <mac address='52:XX:XX:XX:XX:XX'/>
      <source bridge='br0'/>
      <target dev='vnet2'/>
      <model type='virtio'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

■lpic303-1、lpic303-2のインストール完了、再起動後の仮想マシンに割り当てるvcpuとメモリを確認

$ virsh dumpxml lpic303-1 | awk '/vcpu/';virsh dominfo lpic303-1 | awk '/mem/'
  <vcpu placement='static' current='2'>4</vcpu>
Max memory:     4194304 KiB
Used memory:    2097152 KiB

$ virsh dumpxml lpic303-2 | awk '/vcpu/';virsh dominfo lpic303-2 | awk '/mem/'
  <vcpu placement='static' current='2'>4</vcpu>
Max memory:     4194304 KiB
Used memory:    2097152 KiB

■仮想マシンlpic303-1、lpic303-2にインストールするのは、標準システムユーティリティとSSHサーバのみ

$ lsb_release -d
Description:	Debian GNU/Linux 9.5 (stretch)

$ su

# tasksel --list | grep ^i
i ssh-server	SSH サーバ

■lpic303-1、lpic303-2には、debパッケージを探すためのapt-file、時刻同期のためのntpを入れておく。

# apt-get install -y apt-file
# apt-file update
# apt-file search bin/openssl
openssl: /usr/bin/openssl

# apt-get install -y ntp
# sed -i -e 's/^pool/#&/' /etc/ntp.conf 
# sed -i -e 's/#server .*/&\nserver -4 172.31.31.252 iburst/' /etc/ntp.conf 
# systemctl restart ntp
# systemctl status ntp
● ntp.service - LSB: Start NTP daemon
   Loaded: loaded (/etc/init.d/ntp; generated; vendor preset: enabled)
   Active: active (running) since Sun 2018-07-15 22:23:11 JST; 8s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 1460 ExecStop=/etc/init.d/ntp stop (code=exited, status=0/SUCCESS)
  Process: 1469 ExecStart=/etc/init.d/ntp start (code=exited, status=0/SUCCESS)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/ntp.service
           └─1481 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 107:111

 715 22:23:11 lpic303-1 ntp[1469]: Starting NTP server: ntpd.
 715 22:23:11 lpic303-1 ntpd[1481]: proto: precision = 0.053 usec (-24)
 715 22:23:11 lpic303-1 systemd[1]: Started LSB: Start NTP daemon.
 715 22:23:11 lpic303-1 ntpd[1481]: Listen and drop on 0 v6wildcard [::]:123
 715 22:23:11 lpic303-1 ntpd[1481]: Listen and drop on 1 v4wildcard 0.0.0.0:123
 715 22:23:11 lpic303-1 ntpd[1481]: Listen normally on 2 lo 127.0.0.1:123
 715 22:23:11 lpic303-1 ntpd[1481]: Listen normally on 3 ens3 172.31.31.31:123
 715 22:23:11 lpic303-1 ntpd[1481]: Listen normally on 4 lo [::1]:123
 715 22:23:11 lpic303-1 ntpd[1481]: Listen normally on 5 ens3 [fe80::5054:ff:fe20:a22b%2]:123
 715 22:23:11 lpic303-1 ntpd[1481]: Listening on routing socket on fd #22 for interface updates

# ntpq -pn -c rv
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*172.31.31.252   78.73.67.84      2 u   29   64    1    0.673  -67.843   1.730
associd=0 status=0614 leap_none, sync_ntp, 1 event, freq_mode,
version="ntpd 4.2.8p10@1.3728-o Sun Feb 25 21:22:55 UTC 2018 (1)",
processor="x86_64", system="Linux/4.9.0-7-amd64", leap=00, stratum=3,
precision=-24, rootdelay=36.974, rootdisp=275.671, refid=172.31.31.252,
reftime=def5c94a.c2ef109b  Sun, Jul 15 2018 22:23:22.761,
clock=def5c967.db17dc15  Sun, Jul 15 2018 22:23:51.855, peer=12723, tc=6,
mintc=3, offset=-69.748929, frequency=0.000, sys_jitter=0.000000,
clk_jitter=23.077, clk_wander=0.000