{"id":133,"date":"2014-05-11T21:42:24","date_gmt":"2014-05-11T21:42:24","guid":{"rendered":"http:\/\/artigianodelsoftware.wordpress.com\/?p=133"},"modified":"2014-05-11T21:42:24","modified_gmt":"2014-05-11T21:42:24","slug":"backup-restore","status":"publish","type":"post","link":"https:\/\/artigianodelsoftware.it\/blog\/2014\/05\/11\/backup-restore\/","title":{"rendered":"Backup &#038; Restore"},"content":{"rendered":"<div class=\"pdfprnt-buttons pdfprnt-buttons-post pdfprnt-top-right\"><a href=\"javascript: imageToPdf()\" class=\"pdfprnt-button pdfprnt-button-pdf\" target=\"_self\"><img src=\"https:\/\/artigianodelsoftware.it\/blog\/wp-content\/plugins\/pdf-print\/images\/pdf.png\" alt=\"image_pdf\" title=\"Visualizza PDF\" \/><\/a><a href=\"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/posts\/133?print=print\" class=\"pdfprnt-button pdfprnt-button-print\" target=\"_blank\"><\/a><\/div><p style=\"text-align:justify;\">Affrontiamo un argomento abbastanza spinoso. Backup e Restore dei dati di\u00a0<a href=\"https:\/\/www.atlassian.com\/software\/confluence\" target=\"_blank\">Confluence\u00a0<\/a>e\u00a0<a href=\"https:\/\/www.atlassian.com\/software\/jira\" target=\"_blank\">JIRA<\/a>.<\/p>\n<blockquote>\n<h1>Premessa<\/h1>\n<\/blockquote>\n<p style=\"text-align:justify;\">Almeno una volta nella vita capiter\u00e0 di dover eseguire il restore. Lo stesso accadr\u00e0 anche per <a href=\"https:\/\/www.atlassian.com\/software\/confluence\" target=\"_blank\">Confluence <\/a>e <a href=\"https:\/\/www.atlassian.com\/software\/jira\" target=\"_blank\">JIRA<\/a>, che non sono da meno. Il consiglio che d\u00f2 \u00e8 di preparavi a tale evento, eseguendo dei test di restore dai backup che sono stati realizzati, cercando di capire bene tutte le operazioni che devono essere eseguite e tutti i problemi che si possono presentare. Al termine delle prove, si disporr\u00e0 della esperienza per poter eseguire le operazioni necessarie senza grosse difficolt\u00e0.<\/p>\n<p style=\"text-align:justify;\">In questo post vedremo alcuni scenari e descriveremo come eseguire il restore dei dati, rischi e punti di attenzione.<\/p>\n<blockquote>\n<h1>Tipologie di backup<\/h1>\n<\/blockquote>\n<p style=\"text-align:justify;\">Esaminiamo le possibili tipologie di backup che abbiamo a disposizione.<\/p>\n<p style=\"text-align:justify;\">Per tutte le installazioni (onDemand e download) messe\u00a0a disposizione, possiamo eseguire un backup generale di:<\/p>\n<ul style=\"text-align:justify;\">\n<li><em>Confluence<\/em> &#8211; Tutti gli space (pagine, commenti, allegati, etc), comprensivi degli utenti, sono esportati su di un unico file ZIP;<\/li>\n<li><em>JIRA<\/em> &#8211; Tutti i progetti e gli allegati, comprensivi degli utenti, sono esportati su di unico file ZIP.<\/li>\n<\/ul>\n<p style=\"text-align:justify;\">Per Confluence \u00e8 possibile anche eseguire una esportazione di un singolo Space ed importarlo. Lo stesso pu\u00f2 essere eseguito anche su JIRA, con la differenza che \u00e8 possibile eseguire l&#8217;import di un singolo progetto, sempre partendo da un intero backup (Rif. alla seguente risposta su <a href=\"https:\/\/answers.atlassian.com\/questions\/109233\/how-to-export-or-backup-a-single-project\" target=\"_blank\">Atlassian Answer<\/a>).<\/p>\n<p style=\"text-align:justify;\">Per grandi installazioni, su server locali, non \u00e8 conveniente eseguire delle esportazioni cos\u00ec indicate, in quanto i file XML risultano troppo grandi per essere gestiti. In questo caso occorre fare riferimento alla seguente <a href=\"https:\/\/confluence.atlassian.com\/display\/DOC\/Production+Backup+Strategy\" target=\"_blank\">pagina<\/a>, dove viene specificato meglio quale strategia utilizzare per i backup e per i ripristini. Di seguito comunque indicheremo come eseguire un restore.<\/p>\n<p style=\"text-align:justify;\"><strong>Una considerazione&#8230;.<\/strong><\/p>\n<p style=\"text-align:justify;\">I dati presenti sul file ZIP possono variare da versione a versione (sia per Confluence che per JIRA) e non sempre si riesce ad importare da una versione all&#8217;altra. E&#8217; possibile operare una\u00a0workaround, come \u00a0riportato nel seguente <a href=\"https:\/\/confluence.atlassian.com\/display\/CONF35\/Changing+the+version+of+a+space+backup\" target=\"_blank\">link<\/a>, ma nel caso di \u00a0evidenti differenze di versioni (es. da una versione 3.5 ad una 5.5), allora\u00a0conviene\u00a0procedere all&#8217;aggiornamento dei dati attraverso un upgrade del sistema Confluence o JIRA.<\/p>\n<p>&nbsp;<\/p>\n<blockquote>\n<h1>Possibili scenari<\/h1>\n<\/blockquote>\n<p style=\"text-align:justify;\">I principali\u00a0scenari che vi si possono presentare sono:<\/p>\n<ul style=\"text-align:justify;\">\n<li>Restore di un sistema installato su di un server locale, sia esso il server di produzione, sia esso il server di test da utilizzare per vari scopi (test di nuovi plugin, ambiente di test per replicare eventuali malfunzionamenti, etc);<\/li>\n<li>Spostamento dei dati da un confluence ondemand ad una installazione in locale (in questo ultimo caso si vuole portare le informazioni da uno o pi\u00f9 space verso una installazione che gi\u00e0 contiene degli space e che risulta in uso).<\/li>\n<\/ul>\n<p style=\"text-align:justify;\">Nel caso del primo scenario, nella ipotesi che si disponga di una installazione della stessa versione del backup, possiamo eseguire il ripristino come segue:<\/p>\n<ol>\n<li style=\"text-align:justify;\">Riportare il file di backup su<strong> (CONFLUENCE_HOME)\/restore<\/strong> oppure posizionarlo su apposita directory dove eseguire il restore delle informazioni. La procedura consente di poter selezionare dove prelevare il file ZIP (vedi figura successiva);<\/li>\n<li style=\"text-align:justify;\">Accedendo alla sezione di amministrazione, sezione <strong>Import Site<\/strong>, selezionare quindi il file da importare, come mostrato nelle due figure successiva, per Confluence e per JIRA.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p style=\"text-align:center;\"><strong>CONFLUENCE ADMINISTRATION<\/strong><\/p>\n<p><a href=\"http:\/\/artigianodelsoftware.files.wordpress.com\/2014\/05\/confluence-restore.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-147\" src=\"http:\/\/artigianodelsoftware.files.wordpress.com\/2014\/05\/confluence-restore.png?w=700\" alt=\"Confluence-restore\" width=\"700\" height=\"327\" srcset=\"https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/confluence-restore.png 1160w, https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/confluence-restore-300x140.png 300w, https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/confluence-restore-768x360.png 768w, https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/confluence-restore-1024x479.png 1024w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align:center;\"><strong>JIRA ADMINISTRATION<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/artigianodelsoftware.files.wordpress.com\/2014\/05\/jira-restore.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-148\" src=\"http:\/\/artigianodelsoftware.files.wordpress.com\/2014\/05\/jira-restore.png?w=700\" alt=\"Jira-restore\" width=\"700\" height=\"324\" srcset=\"https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/jira-restore.png 1187w, https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/jira-restore-300x139.png 300w, https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/jira-restore-768x357.png 768w, https:\/\/artigianodelsoftware.it\/blog\/wp-content\/uploads\/2014\/05\/jira-restore-1024x475.png 1024w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align:justify;\">Qualora sia stata eseguita una strategia di backup differente (come indicato prima, facendo riferimento alla\u00a0<a href=\"https:\/\/confluence.atlassian.com\/display\/DOC\/Production+Backup+Strategy\" target=\"_blank\">pagina<\/a>\u00a0del manuale di confluence), dove si \u00e8 eseguito:<\/p>\n<ul style=\"text-align:justify;\">\n<li>Backup\u00a0del database;<\/li>\n<li>Backup\u00a0della Confluence Home (o JIRA Home)<\/li>\n<\/ul>\n<p style=\"text-align:justify;\">il ripristino deve essere eseguito ripristinando entrambe le due componenti sopra indicate, a server spento. Quindi riattivare il tomcat ed attendere il riavvio, controllando tutti i messaggi che si presentano nel log. Qualora si stia predisponendo una nuova installazione, vuoi di un server di test o di altro, occorre allora modificare i puntamenti al database, presenti nel file\u00a0<strong>confluence.<\/strong><strong>cfg.xml<\/strong>, e inserire dove \u00e8 stato eseguito le coordinate del database di cui si \u00e8 eseguito il restore. Questa modalit\u00e0 pu\u00f2 essere eseguita solo su installazioni in locale.<\/p>\n<p>&nbsp;<\/p>\n<blockquote>\n<h1>\u00a0Punti di attenzione<\/h1>\n<\/blockquote>\n<p style=\"text-align:justify;\">Come ho indicato prima, i file ZIP presentano anche le indicazioni degli utenti. DI conseguenza, quando si esegue il restore, occorre prestare molta attenzione. Se si vuole eseguire un restore di un backup su di una installazione gi\u00e0 avviata (vuoi per eseguire una unificazione di sistemi diversi, una on demand ed una locale), quando si esegue una importazione dello ZIP, gli utenti vengono riportati sulla installazione in cui si esegue il restore, rimuovendo il contenuto preesistente. Se non si agisce con criterio, si rischia di fare dei danni.<\/p>\n<p style=\"text-align:justify;\">In questo caso occorre operare degli accorgimenti. Nel caso di JIRA, eseguire una importazione di un singolo progetto (nel caso di pi\u00f9 progetti, l&#8217;operazione potrebbe richiedere molto tempo: Valutare bene le operazioni in questo caso). Nel caso di Confluence, procedere ad una esportazione di singolo space e relativa importazione.<\/p>\n<div class=\"clearfix\"><span class='ldc-ul_cont' onclick=\"alter_ul_post_values(this,'133','like')\" >Likes<img src=\"https:\/\/artigianodelsoftware.it\/blog\/wp-content\/plugins\/like-dislike-counter-for-posts-pages-and-comments\/images\/up.png\" \/>(<span>0<\/span>)<\/span><span class='ldc-ul_cont' onclick=\"alter_ul_post_values(this,'133','dislike')\" >Dislikes<img src=\"https:\/\/artigianodelsoftware.it\/blog\/wp-content\/plugins\/like-dislike-counter-for-posts-pages-and-comments\/images\/down.png\" \/>(<span>0<\/span>)<\/span><\/div>","protected":false},"excerpt":{"rendered":"<p>Affrontiamo un argomento abbastanza spinoso. Backup e Restore dei dati di\u00a0Confluence\u00a0e\u00a0JIRA. Premessa Almeno una volta nella vita capiter\u00e0 di dover eseguire il restore. Lo stesso accadr\u00e0 anche per Confluence e JIRA, che non sono da meno. Il consiglio che d\u00f2<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","footnotes":""},"categories":[3,7,14],"tags":[34,48,52,70,82],"_links":{"self":[{"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/posts\/133"}],"collection":[{"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/comments?post=133"}],"version-history":[{"count":0,"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/posts\/133\/revisions"}],"wp:attachment":[{"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/media?parent=133"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/categories?post=133"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/artigianodelsoftware.it\/blog\/wp-json\/wp\/v2\/tags?post=133"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}