Atomic Host(CentOS)のアップデート/ロールバック手順

概要

以前動作検証してみたAtomic Host(CentOS)を最新バージョンにアップデートしてみました。

アップデート手順

atomicコマンドを使うことでアップデートが可能です。
アップデート後、OS再起動を行うと最新バージョンに切り替わります。
また、rollbackで前のバージョンに切り戻す手順も試してみます。

現在のバージョンを確認

まずは現在のバージョンを確認します。

atomic status


表示例

[centos@myhost ~]$ atomic status
  TIMESTAMP (UTC)         ID             OSNAME                 REFSPEC                                                        
* 2014-11-06 22:53:44     93f5458d4d     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host   
[centos@myhost ~]$ 


最新バージョンにアップデート
sudo atomic upgrade


表示例

[centos@myhost ~]$ sudo atomic upgrade
Updating from: centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host

775 metadata, 4082 content objects fetched; 144462 KiB transferred in 467 seconds

Copying /etc changes: 11 modified, 0 removed, 18 added
Transaction complete; bootconfig swap: yes deployment count change: 1
Changed:
  NetworkManager-1:0.9.9.1-29.git20140326.4dba720.el7_0.x86_64
  NetworkManager-glib-1:0.9.9.1-29.git20140326.4dba720.el7_0.x86_64
  authconfig-6.2.8-9.el7.x86_64
  bind-libs-32:9.9.4-14.el7_0.1.x86_64
  bind-libs-lite-32:9.9.4-14.el7_0.1.x86_64
  bind-license-32:9.9.4-14.el7_0.1.noarch
  bind-utils-32:9.9.4-14.el7_0.1.x86_64
  cockpit-0.27-1.el7.centos.x86_64
  cockpit-assets-0.27-1.el7.centos.noarch
  docker-1.4.1-5.el7.x86_64
  dracut-033-161.el7_0.173.x86_64
  glibc-2.17-55.el7_0.3.x86_64
  glibc-common-2.17-55.el7_0.3.x86_64
  gnutls-3.1.18-10.el7_0.x86_64
  kernel-3.10.0-123.13.2.el7.x86_64
  kubernetes-0.8.0-125.0.git68298f0.el7.x86_64
  libgsystem-2015.1-1.el7.x86_64
  libgudev1-208-99.atomic.0.el7.x86_64
  libpcap-14:1.5.3-3.el7_0.1.x86_64
  libreport-filesystem-2.1.11-10.el7.centos.0.1.x86_64
  mdadm-3.2.6-31.el7_0.2.x86_64
  nss-3.16.2.3-2.el7_0.x86_64
  nss-softokn-3.16.2.3-1.el7_0.x86_64
  nss-softokn-freebl-3.16.2.3-1.el7_0.x86_64
  nss-sysinit-3.16.2.3-2.el7_0.x86_64
  nss-tools-3.16.2.3-2.el7_0.x86_64
  nss-util-3.16.2.3-1.el7_0.x86_64
  openssl-1:1.0.1e-34.el7_0.7.x86_64
  openssl-libs-1:1.0.1e-34.el7_0.7.x86_64
  ostree-2015.2-1.el7.x86_64
  rpm-4.11.1-18.el7_0.x86_64
  rpm-libs-4.11.1-18.el7_0.x86_64
  rpm-ostree-2015.2-1.el7.x86_64
  selinux-policy-3.12.1-153.el7_0.13.noarch
  selinux-policy-targeted-3.12.1-153.el7_0.13.noarch
  systemd-208-99.atomic.0.el7.x86_64
  systemd-libs-208-99.atomic.0.el7.x86_64
  systemd-sysv-208-99.atomic.0.el7.x86_64
  tzdata-2014j-1.el7_0.noarch
  wpa_supplicant-1:2.0-13.el7_0.x86_64
Added:
  centos-logos-70.0.6-1.el7.centos.noarch
  file-5.11-21.el7.x86_64
  file-libs-5.11-21.el7.x86_64
  flannel-0.1.0-8.gita7b435a.el7.x86_64
  gettext-0.18.2.1-4.el7.x86_64
  gettext-libs-0.18.2.1-4.el7.x86_64
  grub2-1:2.02-0.2.10.el7.centos.1.x86_64
  grub2-efi-1:2.02-0.2.10.el7.centos.1.x86_64
  grub2-tools-1:2.02-0.2.10.el7.centos.1.x86_64
  libcroco-0.6.8-5.el7.x86_64
  libgomp-4.8.2-16.2.el7_0.x86_64
  libunistring-0.9.3-9.el7.x86_64
  os-prober-1.58-5.el7.x86_64
  ostree-grub2-2015.2-1.el7.x86_64
  which-2.20-7.el7.x86_64
Updates prepared for next boot; run "systemctl reboot" to start a reboot
[centos@myhost ~]$

アップデートが完了しました。
次回起動時に最新バージョンに切り替わる旨のメッセージが表示されました。

アップグレード後もう一度バージョンを確認
[centos@myhost ~]$ atomic status
  TIMESTAMP (UTC)         ID             OSNAME                 REFSPEC                                                        
  2015-01-21 14:03:50     c547235886     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host    
* 2014-11-06 22:53:44     93f5458d4d     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host    
[centos@myhost ~]$

リストに新しいバージョンが加わっています。
ただ、まだ古いバージョンに*が付いているのでまだ最新バージョンに切り替っていないことが分かります。

再起動後もう一度バージョンを確認

新バージョンに*が付いており最新バージョンに切り替ったことが確認出来ます。

[centos@myhost ~]$ atomic status
  TIMESTAMP (UTC)         ID             OSNAME                 REFSPEC                                                        
* 2015-01-21 14:03:50     c547235886     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host    
  2014-11-06 22:53:44     93f5458d4d     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host    
[centos@myhost ~]$


ロールバック手順

最新バージョンから前のバージョンに戻してみます。

sudo atomic rollback


表示例

[centos@myhost ~]$ sudo atomic rollback
Moving '93f5458d4da84bcb7321b55d078b27fbf2aaa54f377c2665429019f34e304703.0' to be first deployment
Transaction complete; bootconfig swap: yes deployment count change: 0
Changed:
  NetworkManager-1:0.9.9.1-28.git20140326.4dba720.el7_0.2.x86_64
  NetworkManager-glib-1:0.9.9.1-28.git20140326.4dba720.el7_0.2.x86_64
  authconfig-6.2.8-9.atomic.el7.centos.x86_64
  bind-libs-32:9.9.4-14.el7.x86_64
  bind-libs-lite-32:9.9.4-14.el7.x86_64
  bind-license-32:9.9.4-14.el7.noarch
  bind-utils-32:9.9.4-14.el7.x86_64
  cockpit-0.24-2.el7.centos.x86_64
  cockpit-assets-0.24-2.el7.centos.noarch
  docker-1.3.1-1.el7.centos.x86_64
  dracut-033-161.el7.x86_64
  glibc-2.17-55.el7_0.1.x86_64
  glibc-common-2.17-55.el7_0.1.x86_64
  gnutls-3.1.18-9.el7_0.x86_64
  kernel-3.10.0-123.9.2.el7.x86_64
  kubernetes-0.4-0.3.gite868642.el7.centos.x86_64
  libgsystem-2014.2-2.atomic.el7.centos.x86_64
  libgudev1-208-12.atomic.4.el7.centos.x86_64
  libpcap-14:1.5.3-3.el7.x86_64
  libreport-filesystem-2.1.11-10.el7.centos.x86_64
  mdadm-3.2.6-31.el7.x86_64
  nss-3.16.2-7.el7_0.x86_64
  nss-softokn-3.16.2-2.el7_0.x86_64
  nss-softokn-freebl-3.16.2-2.el7_0.x86_64
  nss-sysinit-3.16.2-7.el7_0.x86_64
  nss-tools-3.16.2-7.el7_0.x86_64
  nss-util-3.16.2-2.el7_0.x86_64
  openssl-1:1.0.1e-34.el7_0.6.x86_64
  openssl-libs-1:1.0.1e-34.el7_0.6.x86_64
  ostree-2014.8-4.atomic.el7.centos.x86_64
  rpm-4.11.1-16.el7.x86_64
  rpm-libs-4.11.1-16.el7.x86_64
  rpm-ostree-2014.108-1.atomic.el7.centos.x86_64
  selinux-policy-3.12.1-153.el7_0.11.noarch
  selinux-policy-targeted-3.12.1-153.el7_0.11.noarch
  systemd-208-12.atomic.4.el7.centos.x86_64
  systemd-libs-208-12.atomic.4.el7.centos.x86_64
  systemd-sysv-208-12.atomic.4.el7.centos.x86_64
  tzdata-2014i-1.el7.noarch
  wpa_supplicant-1:2.0-12.el7.x86_64
Removed:
  centos-logos-70.0.6-1.el7.centos.noarch
  file-5.11-21.el7.x86_64
  file-libs-5.11-21.el7.x86_64
  flannel-0.1.0-8.gita7b435a.el7.x86_64
  gettext-0.18.2.1-4.el7.x86_64
  gettext-libs-0.18.2.1-4.el7.x86_64
  grub2-1:2.02-0.2.10.el7.centos.1.x86_64
  grub2-efi-1:2.02-0.2.10.el7.centos.1.x86_64
  grub2-tools-1:2.02-0.2.10.el7.centos.1.x86_64
  libcroco-0.6.8-5.el7.x86_64
  libgomp-4.8.2-16.2.el7_0.x86_64
  libunistring-0.9.3-9.el7.x86_64
  os-prober-1.58-5.el7.x86_64
  ostree-grub2-2015.2-1.el7.x86_64
  which-2.20-7.el7.x86_64
Sucessfully reset deployment order; run "systemctl reboot" to start a reboot
[centos@myhost ~]$


ロールバック後バージョンを確認
[centos@myhost ~]$ atomic status
  TIMESTAMP (UTC)         ID             OSNAME                 REFSPEC                                                         
  2014-11-06 22:53:44     93f5458d4d     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host     
* 2015-01-21 14:03:50     c547235886     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host     
[centos@myhost ~]$


再起動後バージョンを確認

前回のバージョンに*が付いており、バージョンが切り替ったことが分かります。

[centos@myhost ~]$ atomic status
  TIMESTAMP (UTC)         ID             OSNAME                 REFSPEC                                                        
* 2014-11-06 22:53:44     93f5458d4d     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host    
  2015-01-21 14:03:50     c547235886     centos-atomic-host     centos-atomic-host:centos/7/atomic/x86_64/cloud-docker-host    
[centos@myhost ~]$