Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents


Nota: lo spegnimento di tutte le VM e gli snapshot lo facciamo sulla cloud di test per poter fare rollback per poter poi ritestare la procedura di update


Cambiare le vecchie password utenti e servizi (algoritmo sha_512 non e' piu' supportato in EPOXY

mysql> SELECT
    lu.user_id,
    lu.name,
    u.created_at,
    p.expires_at
FROM local_user AS lu
INNER JOIN user AS u
    ON lu.user_id = u.id
INNER JOIN (
    SELECT local_user_id, MAX(id) AS max_id
    FROM password
    GROUP BY local_user_id
) AS latest
    ON lu.id = latest.local_user_id
INNER JOIN password AS p
    ON p.id = latest.max_id
WHERE u.enabled = 1
  AND (p.expires_at IS NULL OR p.expires_at > NOW())
  AND (p.password_hash LIKE '$6$%' OR p.password_hash LIKE '$5$%'); 


cambiare le password da command line con:

  openstack user set --password-prompt <username>


Spegnere tutte le VM attive


Code Block
[root@controller-01 ~]# openstack server list --all-projects

...


[root@controller-01 ~]# openstack server stop <id,id…..>

Spegnere tutti i servizi


Spegnere tutti i servizi openstack sui controller-node e sui compute-node per non modificare il db

...

Code Block
systemctl stop puppet
systemctl disable puppet

cd /root/StartServices
./complete.sh stop
cd /root/StartServices
./complete.sh disable



Nei compute:


Code Block
languagebash
systemctl status openvswitch neutron-openvswitch-agent libvirtd.service openstack-nova-compute
systemctl stop puppet
systemctl disable puppet
systemctl stop openvswitch neutron-openvswitch-agent libvirtd.service openstack-nova-compute
systemctl disable openvswitch neutron-openvswitch-agent libvirtd.service openstack-nova-compute
 


Code Block
systemctl stop puppet
systemctl disable puppet

systemctl stop openstack-nova-compute
systemctl diable openstack-nova-compute

systemctl stop neutron-openvswitch-agent
systemctl disable neutron-openvswitch-agent

systemctl stop openvswitch
systemctl disable openvswitch

Clonare le macchine

---------------------- CUT HERE ----------------------------

...

Aggiungere da dashboard ruolo Member e member ai project manager di tutti i progetti

Spegnere tutte le VM attive

...

languagebash

...


...



Controllare che le istanze di Percona siano in permissive e non in Enforcing

Altrimenti ci potrebbero essere problemi con i db-sync



Code Block
languagebash
[root@cld-db-test-04 ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 681802
Server version: 8.0.32-24.2 Percona XtraDB Cluster (GPL), Release rel24, Revision 2119e75, WSREP version 26.1.4.3

Copyright (c) 2009-2023 Percona LLC and/or its affiliates
Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SHOW GLOBAL VARIABLES like 'pxc_strict_mode';
+-----------------+------------+
| Variable_name   | Value      |
+-----------------+------------+
| pxc_strict_mode | PERMISSIVE |
+-----------------+------------+
1 row in set (0.00 sec)

mysql> exit
Bye

Controllare che nei db mysql siano definite collation-server e character-set-server (utf8)



Code Block
languagebash
# in /etc/my.cnf (nei db) controllare che ci siano le due righe, altrimenti aggiungerle e riavviare mysql

[mysqld]
server-id=1
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
collation-server = utf8_general_ci    <------
character-set-server = utf8           <------

# e riavviare mysql.

CLUSTER PERCONA:
nel nodo cld-db-test-04 (quello acceso), dopo la modifica va fatto ripartire
systemctl stop mysql@bootstrap.service
systemctl start mysql@bootstrap.service

negli altri due, con ordine inverso rispetto allo spegnimento, si fa partire mysql
systemctl start mysql  cosi' si sincronizza con il 4


...

Spegnere mysql su due dei tre nodi percona ricordando l'ordine di spegnimento

Code Block
languagebash
[root@cld-db-test-06 ~]# systemctl stop mysql
[root@cld-db-test-05 ~]# systemctl stop mysql

Spegnere e disabilitare puppet sui controller e sui compute

Code Block
languagebash
systemctl status puppet
systemctl stop puppet
systemctl disable puppet

...

Online migration database nova e cinder sul controller 

Code Block
languagebash
su -s /bin/sh -c "cinder-manage db online_data_migrations" cinder
su -s /bin/sh -c "nova-manage db online_data_migrations" nova

 

...

Disabilitare i check nagios dei compute

In cld-nagios disabilitare i vari check dei compute.

...

Code Block
languagebash
[root@cld-nagios /] vi /etc/nagios/nagios.cfg
# commentare le righe 
cfg_file=/etc/nagios/objects/cloudtestcomputenodes.cfg
cfg_file=/etc/nagios/objects/mtu.cfg

# verificare la correttezza della configurazione con
[root@cld-nagios /]# nagios -v /etc/nagios/nagios.cfg

# se non ci sono errori riavviare nagios con
[root@cld-nagios /]# systemctl restart nagios

Spegnere tutti i servizi openstack sui controller-node e sui compute-node per non modificare il db

nei controller:

Code Block
languagebash
cd /root/StartServices
./complete.sh stop

lo script complete.sh spegne/accende/controlla lo stato tutti i servizi elencati qui

Code Block
languagebash
titlecomplete.sh
collapsetrue
./heat.sh stop
# ovvero systemctl $1 openstack-heat-api.service openstack-heat-api-cfn.service openstack-heat-engine.service

./cinder.sh stop
# ovvero systemctl $1 openstack-cinder-api.service openstack-cinder-scheduler.service
# e      systemctl $1 openstack-cinder-volume.service target.service

./ec2.sh stop
# ovvero systemctl $1 openstack-ec2-api.service openstack-ec2-api-metadata.service

./neutron-agents.sh stop
# ovvero systemctl $1 neutron-openvswitch-agent.service neutron-l3-agent.service   neutron-dhcp-agent.service neutron-metadata-agent.service

./neutron.sh stop
# ovvero systemctl $1 neutron-server.service

./glance.sh stop
# ovvero systemctl $1 openstack-glance-api.service

./nova.sh stop 
# ovvero systemctl $1 openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service

./keystone.sh stop
# ovvero systemctl $1 httpd.service

systemctl stop memcached
systemctl stop shibd 

...

nei compute 

Code Block
languagebash
systemctl status openvswitch neutron-openvswitch-agent libvirtd.service openstack-nova-compute
systemctl stop openvswitch neutron-openvswitch-agent libvirtd.service openstack-nova-compute


Clonare le macchine

Clonare le macchine della cloud di test (sia controller che compute)

Jira
serverINFN Jira Software
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId8087fedc-8816-3706-9e66-78f987f39e0c
keyPDCL-2641


Vedi istruzioni https://wiki.infn.it/progetti/cloud-areapd/best_practices/clone_host



Fare il dump dei database


Code Block
languagebash
[root@cld-db-test-04 backup]# mkdir /backup/BackupCaracalPrimaDellUpdate


...

Salvare le configurazioni dei controller e dei compute 

Code Block
languagebash
nel controller-01
cd /
tar cvfz etc-controller-01-yoga.tgz etc
scp *.tgz <hostname>.pd.infn.it://yyy/etc-controller-01-train.tgz
 
nel compute-01
cd /
tar cvfz etc-compute-01-yoga.tgz etc
scp *.tgz <hostname>.pd.infn.it://yyy/etc-compute-01-xena.tgz

Fare il dump di tutti i db

...

languagebash
[root@cld-db-test-04 ~]# mysqldump -u root -p --all-databases > /backup/BackupCaracalPrimaDellUpdate/cld-db_test_04_

...

caracal_dump_

...

all.sql

...




[root@cld-db-test-04 ~]# /usr/local/bin/mysql_dump_separate_db

# e 

...

sposto i 

...

file 

...

risultanti 

...

da /backup/mysql

...

 

...

a /backup/BackupCaracalPrimaDellUpdate (altrimenti in

...

 

...

Clonare le macchine

vedi istruzioni https://wiki.infn.it/progetti/cloud-areapd/best_practices/clone_host

...

Controllare che EPEL sia disabilitato (nei controller)

Code Block
languagebash
per disabilitarlo
yum-config-manager --disable epel\*     
# enabled = 0 --> repo disabilitato

...

Controllare nei nodi con openmanage se e' installato il pacchetto srvadmin-idracadm7.x86_64

Se ci sono conflitti durante gli update, conviene fare update con --disablerepo=dell-system-update_independent --disablerepo=dell-system-update_dependent

 /backup/mysql  verrebbero cancellati)



Riaccendere i servizi su controller e compute


Facendo partire puppet sui controller e sui compute

 

...

languagebash

...