labunix's blog

labunixのラボUnix

SRX100Hをアップグレードしてみる。

■SRX100Hをアップグレードしてみる。
 少なくともダウンロード権のためのサポート登録が必要。
 2015/09/30に出たばかりのバージョンなので、
 戻せるか捨てられる評価環境でも無い限りはお勧めはしない。

 SRX100 - Download Software
 http://www.juniper.net/support/downloads/?p=srx100

■バックアップはssh経由で取得しておく。

$ ssh 172.31.31.201 'show configuration | display set | no-more' \
    > `date '+%Y%m%d_%H%M%S'`_srx100h_config.log

■ハッシュは、「MD5 SHA1」をマウスオーバ時に表示される。

Install Package	Checksum	Release	Format	Size	File Date
Branch SRX-Series 	MD5 SHA1	12.1X46-D40	tgz	147,682,259	30 Sep 2015

■約145MBのイメージファイルを確認。

$ ls junos-srxsme-12.1X46-D40.2-domestic.tgz | \
    awk '{print "du",$1,";md5sum",$1,";tar ztvf",$1}' | sh
144228	junos-srxsme-12.1X46-D40.2-domestic.tgz
8a4e34e8c6d315006ac5b2a1ebbbf164  junos-srxsme-12.1X46-D40.2-domestic.tgz
-rw-r--r-- builder/wheel  2996 2015-09-26 15:43 +CONTENTS
-rw-r--r-- builder/wheel    39 2015-09-26 15:43 +COMMENT
-rw-r--r-- builder/wheel   163 2015-09-26 15:43 +DESC
-rw-r--r-- builder/wheel 95004 2015-09-26 15:43 +INSTALL
-rw-r--r-- builder/wheel 89406 2015-09-26 15:43 +REQUIRE
-rwxr-xr-x builder/builder 13125113 2015-09-26 11:36 kernel
-rw-r--r-- builder/builder 10022912 2015-09-26 14:42 isofs-install-srxsme
-rw-r--r-- builder/builder       14 2015-09-26 15:43 scu-info
-rw-r--r-- builder/builder  3425492 2015-09-26 15:00 junos-boot-srxsme-12.1X46-D40.2.tgz
-rw-r--r-- builder/builder       41 2015-09-26 15:00 junos-boot-srxsme-12.1X46-D40.2.tgz.sha1
-rw-r--r-- builder/builder      526 2015-09-26 15:00 junos-boot-srxsme-12.1X46-D40.2.tgz.sig
-rw-r--r-- builder/builder      279 2015-09-26 15:00 junos-boot-srxsme-12.1X46-D40.2.tgz.esig
-rw-r--r-- builder/builder 146759529 2015-09-26 15:42 junos-srxsme-12.1X46-D40.2-domestic
-rw-r--r-- builder/builder        41 2015-09-26 15:43 junos-srxsme-12.1X46-D40.2-domestic.sha1
-rw-r--r-- builder/builder       526 2015-09-26 15:43 junos-srxsme-12.1X46-D40.2-domestic.sig
-rw-r--r-- builder/builder       279 2015-09-26 15:43 junos-srxsme-12.1X46-D40.2-domestic.esig
-rw-r--r-- builder/builder      7157 2015-09-26 08:38 certs.pem
-rw-r--r-- builder/builder      5085 2015-09-26 08:38 ecerts.pem
-rw-r--r-- builder/builder      4312 2015-09-26 15:43 +install.junos

■アップデートなので、SRX100Hとはシリアルコンソールで接続して作業する。
$ sudo screen /dev/ttyS0

■現在のバージョンの確認

root> show system firmware 
Part             Type           Tag Current   Available Status
                                    version   version
Routing Engine 0 RE BIOS        0   2.6       2.6       OK                
Routing Engine 0 RE BIOS Backup 1   2.6       2.6       OK

root> show version 
Model: srx100h
JUNOS Software Release [12.1X44-D25.5]

root> show system snapshot media internal
Information for snapshot on       internal (/dev/da0s1a) (primary)
Creation date: Nov 10 22:52:54 2013
JUNOS version on snapshot:
  junos  : 12.1X44-D25.5-domestic
Information for snapshot on       internal (/dev/da0s2a) (backup)
Creation date:
JUNOS version on snapshot:
  junos  :

■[/cf/var/sw/pkg]に置く空き容量が無ければ[no-copy]を使うか、
 [request system storage cleanup]しておく。

root> show system storage | match " /cf/var|^F"     
Filesystem              Size       Used      Avail  Capacity   Mounted on
/dev/bo0s3f             342M       101M       214M       32%  /cf/var

■アップグレード前に設定を初期化しておく。

> configure
# delete
# set system root-authentication plain-text-password

■FTP経由でJUNOSイメージをアップグレードするための最低限の設定を入れる。
 以下の設定を入れ、不要なLANケーブルは抜いて、[fe-0/0/0]にFTPサーバとつながるLANを接続。

set system services ftp
set interfaces fe-0/0/0 unit 0 family inet address 172.17.17.202/24
set routing-options static route 172.17.17.0/24 next-hop 172.17.17.202
set security-zone trust interfaces fe-0/0/0
set security zone security-zone trust host-inbound-traffic system-services ftp
commit and-quit

■アップデートと再起動
 初期化されてる設定でも[no-validiate]が必要なケースは少ないと思う。

root> request system software add ?
Possible completions:
  <package-name>       URL or pathname of package
  best-effort-load     Load succeeds if at least one statement is valid
  delay-restart        Don't restart processes
  no-copy              Don't save copies of package files
  no-validate          Don't check compatibility with current configuration
  partition            Format and re-partition the media before installation
  reboot               Reboot system after adding package
  unlink               Remove the package after successful installation
  validate             Check compatibility with current configuration
> request system software add no-copy no-validate ftp://user:pass1234@172.17.17.254/junos-srxsme-12.1X46-D40.2-domestic.tgz
> request system reboot

■アップデート中にメッセージがコンソールに出なくて心配なら、
 vsftpサーバ側でセッションを確立しているか、例えば以下のようなコマンドで確認する。

$ watch -d -n 1 'netstat -an | grep \:21'

■アップデート後の確認。
 [request system software rollback]で戻れるバージョンはアップデート前のもの。

root> show version 
Model: srx100h
JUNOS Software Release [12.1X46-D40.2]

root> show system firmware       
Part             Type           Tag Current   Available Status
                                    version   version
Routing Engine 0 RE BIOS        0   2.8       2.8       OK                
Routing Engine 0 RE BIOS Backup 1   2.8       2.8       OK

root> show system snapshot media internal 
Information for snapshot on       internal (/dev/da0s1a) (backup)
Creation date: Nov 10 22:52:54 2013
JUNOS version on snapshot:
  junos  : 12.1X44-D25.5-domestic
Information for snapshot on       internal (/dev/da0s2a) (primary)
Creation date: Oct 7 13:52:56 2015
JUNOS version on snapshot:
  junos  : 12.1X46-D40.2-domestic

■バックアップイメージとrollbackの格納先は以下。

root> show system software backup 
Backup JUNOS package information:
File name: /altroot/cf/packages/junos-12.1X44-D25.5-domestic
File size: 149175758

root> file list /cf/var/sw/pkg/ 

/cf/var/sw/pkg/:
rollback

■[no-copy]オプションを付けたので、
 内蔵ディスク(フラッシュメモリ?)は消費していない。

root> show system storage | match "^F| /cf/var" 
Filesystem              Size       Used      Avail  Capacity   Mounted on
/dev/bo0s3f             342M       101M       214M       32%  /cf/var

■alarmランプ(アンバー)が点灯していないこと。

root> show system alarms 
No alarms currently active

■J-Web接続設定の追加。

root> show configuration | display set | match http 
set system services web-management http
set security zones security-zone trust host-inbound-traffic system-services http