Changer le Timezone sur Exadata Database Machine

Pour changer le timezone sur Exadata après la configuration, on est obligé de faire l’opération sur tous les composants.
A savoir sur :

  • les dbnodes
  • les Storages servers
  • les switch Infiniband
  • le switch Sisco Ethernet.

Voici le déroulement des étapes.
On change le timezone d’abord sur les storage servers, on le reporte sur les Databases servers puis sur les switchs.

1. Arrêter le CRS sur les tous les Database servers

En tant que user root :
[root@exadata01db01 ~]# /u01/app/12.1.0.2/grid/bin/crsctl stop crs
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'exadata01db01'
CRS-2673: Attempting to stop 'ora.crsd' on 'exadata01db01'
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'exadata01db01'
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'exadata01db01'
CRS-2673: Attempting to stop 'ora.LISTENER_EBS_IB.lsnr' on 'exadata01db01'
CRS-2673: Attempting to stop 'ora.cvu' on 'exadata01db01'
..........
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'exadata01db01' has completed
CRS-4133: Oracle High Availability Services has been stopped.

Vérifier avant de passer au nœud suivant :

[root@exadata01db01 ~]# ps -ef|grep d.bin|grep -v grep|wc -l
[root@exadata01db01 ~]#

2. Arrêter les process CELLSRV, MS et RS sur tous les storages serveurs
[root@exadata01celadm01 ~]# cellcli -e alter cell shutdown services all
Stopping the RS, CELLSRV, and MS services...
The SHUTDOWN of services was successful.
[root@exadata01celadm01 ~]#

3. Changer le Timezone sur les Cellules (storage servers)
– Avant de changer le timezone, faites un backup des fichiers suivant sur chaque Cellule : /opt/oracle.cellos/cell.conf, /etc/sysconfig/clock et /etc/localtime

cd /opt/oracle.cellos
cp -p cell.conf cell.conf.20170203
cd /etc/sysconfig
cp -p clock clock.20170203
cd /etc
cp -p localtime localtime.20170203

– Vérifier le timezone avant modification avec la commande date :

[root@exadata01celadm01 oracle.cellos]# date
Fri Feb 3 15:32:39 CET 2017
[root@exadata01celadm01 oracle.cellos]#

– Lancer la commande ipconf pour changer le timezone :

ATTENTION :
– Ne modifier que le Timezone
– Ne rien toucher dans la partie ILOM, elle sera automatiquement mise à jour

– Repondre par « Y » à la question pour changer de timezone
– Choisir le numéro du pays
– Puis choisir le numéro de Timezone

– Répondre aux questions suivantes en ne modifiant rien d’autre

[root@exadata01celadm01 oracle.cellos]# /opt/oracle.cellos/ipconf
[Info]: ipconf command line: /opt/oracle.cellos/ipconf.pl -nocodes
Logging started to /var/log/cellos/ipconf.log
Interface ib0 is Linked. hca: mlx4_0
Interface ib1 is Linked. hca: mlx4_0
Interface eth0 is Linked. driver/mac: ixgbe/00:10:e0:b3:82:22
Interface eth1 is .................... Unlinked. driver/mac: ixgbe/00:10:e0:b3:82:23
Interface eth2 is .................... Unlinked. driver/mac: ixgbe/00:10:e0:b3:82:24
Interface eth3 is .................... Unlinked. driver/mac: ixgbe/00:10:e0:b3:82:25

Network interfaces
Name State
ib0 Linked
ib1 Linked
eth0 Linked
eth1 Unlinked
eth2 Unlinked
eth3 Unlinked
[Warning]: Some network interface(s) are disconnected. Check cables and swicthes and retry
Do you want to retry (y/n) [y]: n

The current nameserver(s): xxx.xx.0.244 192.168.168.135
Do you want to change it (y/n) [n]: n
The current timezone: Europe/London
Do you want to change it (y/n) [n]: y

Setting up local time...

1) Andorra
2) United Arab Emirates
3) Afghanistan
4) Antigua & Barbuda
5) Anguilla
......
Select country by number, [n]ext, [l]ast: l
249) Zimbabwe
250) Other
Select country by number, [f]irst, [b]ack: 250
Selected country: Other (OT). Now choose a zone

1) GMT
2) UTC
Select zone by number: 2
Selected timezone: UTC
Is this correct (y/n) [y]: y
The current NTP server(s): xxx.xx.6.6
Do you want to change it (y/n) [n]:

Network interfaces
Name State Status IP address Netmask Gateway Net type Hostname
ib0 Linked UP 192.168.10.5 255.255.252.0 Private exadata01cel01-priv1.xxxxx.fr
ib1 Linked UP 192.168.10.6 255.255.252.0 Private exadata01cel01-priv2.xxxxx.fr
eth0 Linked UP xxx.xx.xxx.6 255.255.255.192 xxx.xx.xxx.1 Management exadata01celadm01.xxxxxx.fr
eth1 Unlinked UNCONF
eth2 Unlinked UNCONF
eth3 Unlinked UNCONF
Select interface name to configure or press Enter to continue:

Select canonical hostname from the list below
1: exadata01cel01-priv1.xxxxx.fr
2: exadata01cel01-priv2.xxxxx.fr
3: exadata01celadm01.xxxxx.fr
Canonical fully qualified domain name [3]:

Select default gateway interface from the list below
1: eth0
Default gateway interface [1]:

Canonical hostname: exadata01celadm01.xxxxx.fr
Nameservers: xxx.xxx.xx.xx xxx.xxx.168.135
Timezone: UTC
NTP servers: xxx.xx.x.x
Default gateway device: eth0
Network interfaces
Name State Status IP address Netmask Gateway Net type Hostname
ib0 Linked UP 192.168.10.5 255.255.252.0 Private exadata01cel01-priv1.xxxx.fr
ib1 Linked UP 192.168.10.6 255.255.252.0 Private exadata01cel01-priv2.xxxxxx.fr
eth0 Linked UP xxxx.xx.xxx.6 255.255.255.192 xxx.xx.xx.1 Management exadata01celadm01.xxxxxx.fr
eth1 Unlinked UNCONF
eth2 Unlinked UNCONF
eth3 Unlinked UNCONF
Is this correct (y/n) [y]:

Do you want to configure basic ILOM settings (y/n) [y]: n

[Info]: ILOM timezone forced to be in sync with the Linux timezone UTC
[Info]: Run /opt/oracle.cellos/validations/init.d/saveconfig
[Info]: Custom changes have been detected in /etc/sysconfig/clock
[Info]: Original file /etc/sysconfig/clock will be saved in /etc/sysconfig/clock.backupbyExadata
[Info]: Save /etc/sysctl.conf in /etc/sysctl.conf.backupbyExadata
[Info]: Adjust settings for IB interfaces in /etc/sysctl.conf
Re-login using new IP address xxxx.xxx.xxx.x if you were disconnected after following commands
ip addr show eth0
sleep 4

– Vérifier le changement avec la commande date ou consulter les fichiers :

[root@exadata01celadm01 oracle.cellos]# date
Fri Feb 3 15:49:36 UTC 2017

[root@exadata01celadm01 oracle.cellos]# diff cell.conf cell.conf.20170203
54c54
<   <Timezone>UTC</Timezone>
---
>   <Timezone>Europe/Paris</Timezone>
67c67
<     <ILOM_Timezone>UTC</ILOM_Timezone>
---
>     <ILOM_Timezone>Europe/Paris</ILOM_Timezone>

[root@exadata01celadm01 oracle.cellos]# cat /etc/sysconfig/clock
ZONE="UTC"
UTC=true
ARC=false

[root@exadata01celadm01 oracle.cellos]# strings /etc/localtime
TZif2
TZif2
UTC0

– Redémarrer la Cellule et revérifier après :
root@exadata01celadm01 ~]# date
Fri Feb 3 16:01:16 UTC 2017

– Vérifier que les process ont bien démarré :

[root@exadata01celadm03 ~]# cellcli
CellCLI: Release 12.1.2.3.2 - Production on Fri Feb 03 15:53:27 UTC 2017
Copyright (c) 2007, 2016, Oracle. All rights reserved.
CellCLI> list cell detail
name: exadata01celadm03
accessLevelPerm: remoteLoginEnabled
bbuStatus: normal
cellVersion: OSS_12.1.2.3.2_LINUX.X64_160721
........
upTime: 0 days, 0:06
usbStatus: normal
cellsrvStatus: running
msStatus: running
rsStatus: running

– Répéter ces étapes pour toutes les Cellules.

4. Changer le Timezone sur les Databases nodes
– Vérifier que le CRS est bien arrêté :
[root@exadata01db01 ~]# ps -ef|grep d.bin|grep -v grep|wc -l
0

– Faire un backup des fichiers /etc/localtime et /etc/sysconfig/clock :

[root@exadata01db01 ~]# cd /etc/sysconfig
[root@exadata01db01 sysconfig]# cp -p clock clock.20170203
[root@exadata01db01 sysconfig]# cd /etc
[root@exadata01db01 etc]# cp -p localtime localtime.20170203

– Faire une copie des fichiers /etc/localtime et /etc/sysconfig/clock à partir de l’une des Storage nodes :

[root@exadata01db01 etc]# scp root@xxx.xx.xxx.x:/etc/localtime /etc/localtime
localtime 100% 118 0.1KB/s 00:00
[root@exadata01db01 etc]# strings localtime
TZif2
TZif2
UTC0
[root@exadata01db01 etc]# scp root@xxx.xx.xxx.x:/etc/sysconfig/clock /etc/sysconfig/clock
clock 100% 30 0.0KB/s 00:00
[root@exadata01db01 etc]# cat /etc/sysconfig/clock
ZONE="UTC"
UTC=true
ARC=false
[root@exadata01db01 etc]#

– Désactiver le démarrage automatique du CRS :

[root@exadata01db01 etc]# /u01/app/12.1.0.2/grid/bin/crsctl disable crs
CRS-4621: Oracle High Availability Services autostart is disabled.
[root@exadata01db01 etc]#

– Faire un reboot du Database server et vérifier le changement avec la commande date :

[root@exadata01db01 ~]# date
Fri Feb 3 16:22:55 UTC 2017
[root@exadata01db01 ~]#

– Réactiver le redémarrage du CRS puis le démarrer :

[root@exadata01db01 ~]# /u01/app/12.1.0.2/grid/bin/crsctl enable crs
CRS-4622: Oracle High Availability Services autostart is enabled.
[root@exadata01db01 ~]#

[root@exadata01db01 ~]# /u01/app/12.1.0.2/grid/bin/crsctl start crs
CRS-4123: Oracle High Availability Services has been started.

Répéter ces étapes pour tous les Database servers

5. Changer le Timezone sur les Switch infiniband
A partir de la version 1.1.3­2, cela peut se faire depuis le ILOM.
– Verifier la version du ILOM :

[root@exadata01sw-iba01 ~]# version
SUN DCS 36p version: 2.1.8-1

– Se connecter au ILOM :

  • Click sur Configuration
  • Cliquer sur « Clock » et
    bien s’assurer que « Synchr… » est coché et le champ server1 est renseignéavec l’adresse du server NTP
  • Cliquer sur « Timezone » et Choisir le timezone puis « save »

6. Changer le Timezone sur le Switch Ethernet
– Faire un ssh avec le compte admin :

root@exadata01db02 ~]# ssh admin@xxxx.xx.xxx.xx
Password:
exadata01sw-adm01>
exadata01sw-adm01>enable
Password:

– Configure le timezone avec les commandes « Configure terminal », « clock timezone » et « clock summer-time » et finir avec « write memory » :

exadata01sw-adm01#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
exadata01sw-adm01(config)#clock timezone UTC 0
exadata01sw-adm01(config)#clock summer-time UTC recurring
exadata01sw-adm01(config)#end
exadata01sw-adm01#^Z
exadata01sw-adm01#write memory
Building configuration...
Compressed configuration from 6248 bytes to 2275 bytes[OK]
exadata01sw-adm01#

– Vérifier le changement :

exadata01sw-adm01#show clock
17:06:53.927 UTC Fri Feb 3 2017
exadata01sw-adm01#

Envie de monter en compétences sur la technologie Exadata Database Machine ? Découvrez nos prochaines sessions de formation Exadata