Data Backup and Recovery

SnapCreator Upgrade from 3.3 to 3.4

jntballard

To upgrade to v3.4 the guide indicates to use the following variables in the exisint 3.3 configs:

  • CONFIG_TYPE -PLUGIN|STANDARD
  • USE_PROXY - (Y|N).
  • NTAP_CONSISTENCY_GROUP_WAFL_SYNC - (Y|N)
  • NTAP_SNAPSHOT_RESTORE_AUTO_DETECT - (Y|N
  • MOUNT_CMD<##>
  • UMOUNT_CMD<##> APP_DEFINED_CLONE -(Y|N)

Are these the only variables needed?  Seems like there are many more variables in 3.4...

For the upgrade, this is the procedure I was going to follow:

1. Stop 3.3 GUI on scServer

2. Install new 3.4 Snap Creator

3. Copy the unique DB config files from 3.3 to the 3.4 config directory

4. Add variables as indicated above

5. Update scripts to point to new 3.4 directory

6. Start the java GUI from the 3.4 directory

7. Update Snap Creator Agent on remote servers

8. Remove old 3.3 directories

Is that all I need?  Just want to ensure I have the VARs needed and the process correct.

Thanks for the help -

37 REPLIES 37

ktenzer

Yep that is about right

For SC 3.3.0 to SC 3.4.0 both Agent and Server must be upgraded.

The only thing maybe missing is the GUI scheduler. I am going to check with some of the other devs if there is a way to copy the DB tables it uses over otherwise you need to re-create all the schedules in the GUI. If you aren't using them ignore this. We are going to improve this in the future.

Regards,

Keith

pascalc

wow

lot's of work to do to upgrade ! I heavilly use the so nice scheduler in snapcreator. Well I guess it's time to write export/import routines for profiles and schedules, in order to get all this smoothly.

upon upgrade, the import routine could insert the missing variables in the old profiles with default values, or better with values suggested by the user.

ktenzer

Hi,

There should be a way to migrate scheduler (we just didn't document it in the AIG), dont re-enter everything by hand just yet. I sent this mail to our GUI devs but you can try copying the "scServer3.3.0/gui/snapcreator" to "scServer3.4.0/gui/".

Let me know if that works?

We should have something official soon in which case I will post on communities.

Regards,

Keith

avbohemen

I did the upgrade and copied everthing from scServer3.3.0/gui/snapcreator to scServer3.4.0/gui/snapcreator directory as well, and the schedules are retained. That is, I can see them in the GUI. I can run them manually (they complete succesfully), but they don't seem to run at the time they are scheduled. The last run time is stil the time before I did the upgrade. A newly created schedule runs just fine. Is there any other step I need to do, maybe a db-upgrade or something? The files in scServer3.4.0/gui/snapcreator seem to be some kind of database.

By the way, one other thing I noticed in the new version: When I create a new schedule with a start date of today, and a start time that is already past (e.g. 0:30), the schedule runs immediately after it is saved. It should only run the next night.

ktenzer

Yes you are correct the scheduler is stored in a very small derby database (the only we store in a database)

The last run time will always be GMT so it may but probably wont be same as time on your system clock

You can check the gui/logs/snapcreatorgui.log to see when jobs ran according to system time

I just tested this and it works, old jobs work as well. The one thing which doesn't work is if you copy the gui/snapcreator folder and there are schedules based off configs which you forget to copy.

This error in gui/logs/snapcreatorgui.log means usually the config file doesnt exist

2011-07-06 11:05:02,086 (93588) [SCScheduler_Worker-1] INFO  com.netapp.rre.snapcreator.service.SnapCreatorLogger - Unable to executed SnapCreator for task: 1

Please make sure you copy the scServer3.3.0/configs/ (make sure you dont overwrite the scServer3.3.0/configs/default/default.conf) and scServer3.3.0/gui/snapcreator/

Regards,

Keith

avbohemen

There appears to be a hardcoded non-relative path in the scheduler, because /gui/snapcreator.log shows this error:

2011-07-06 11:03:18,994 (427934176) [SCScheduler_Worker-3] FATAL com.netapp.rre.snapcreator.service.SnapCreatorLogger - java.io.IOException: Cannot run program "/opt/netapp/scServer3.3.0/snapcreator": java.io.IOException: error=2, No such file or directory

Of course I deleted the old version after the upgrade was complete... That is probably why new schedules work fine in my setup.

Charly: Yes, I performed the upgrade exactly that way.

charly

Please check your <scServer>/gui/etc/snapcreatorgui.conf file. Any 3.3 related entries present..?

charly

Have you run './snapcreator --profile setup' after upgrading to new version..? This is required.

charly

Is it possible for us to access the system if its in NetApp network..? Because "/opt/netapp/scServer3.3.0/snapcreator": java.io.IOException: error=2, No such file or directory

Error indicates that some path still refering to old version. Can you just do a content search and see any 3.3.0 path present in the installation.

avbohemen

I found the old path (scServer3.3.0) while doing a "grep '3.3.0' gui/snapcreator/seg0/*", which is the database dir for SnapCreator.

To me, that looks like the scheduler hard codes the path to the snapcreator executable in a schedule entry, instead of looking it up in /gui/etc/snapcreatorgui.conf.

Any new schedule I create has the correct path in the schedule entry, if I do a grep again. So unless there is an option (sql command?) to change every path in each schedule entry, I see no other way than to re-create every schedule.

I did find one other reference to scServer3.3.0 in /gui/snapcreator/service.properties:

#/opt/netapp/scServer3.3.0/gui/snapcreator

# ********************************************************************

# ***                Please do NOT edit this file.                 ***

# *** CHANGING THE CONTENT OF THIS FILE MAY CAUSE DATA CORRUPTION. ***

# ********************************************************************

#Fri Jun 10 15:24:59 CEST 2011

SysschemasIndex2Identifier=225

SyscolumnsIdentifier=144

SysconglomeratesIndex1Identifier=49

SysconglomeratesIdentifier=32

SyscolumnsIndex2Identifier=177

SysschemasIndex1Identifier=209

SysconglomeratesIndex3Identifier=81

SystablesIndex2Identifier=129

SyscolumnsIndex1Identifier=161

derby.serviceProtocol=org.apache.derby.database.Database

SysschemasIdentifier=192

derby.storage.propertiesId=16

SysconglomeratesIndex2Identifier=65

derby.serviceLocale=en_US

SystablesIdentifier=96

SystablesIndex1Identifier=113

It looks like comments, and after changing that to the right path, the schedule still fails with the same error:

2011-07-06 13:36:00,081 (214902) [SCScheduler_Worker-1] FATAL com.netapp.rre.snapcreator.service.SnapCreatorLogger - java.io.IOException: Cannot run program "/opt/netapp/scServer3.3.0/snapcreator": java.io.IOException: error=2, No such file or directory

ktenzer

We are working on this. We have done upgrade from 3.3.0 to 3.4.0 successfully so Charly will be posting that info.

Since we are storing info in derby worst case we could do some SQL to pull entries out and add back in but hopefully we wont have to do that. We feel something in this ENV isn't quite right since we are unable to reproduce this issue.

Stay Tuned...

Keith

ktenzer

A workaround for now would be to use same path as 3.3.0 or create a symlink or unction point (windows)

Keith

avbohemen

I have also considered the symlink, but decided to recreate the schedules after all. Since we spent a lot of time testing, debugging and upgrading snapcreator, we decided a new schedule was the best way to keep things clean. One more feature request: It woud be really nice if you could add/change/remove schedules from the commandline Cron is also nice, but doesn't give me a direct overview of all results. And I'm not always on unix.

charly

Hi,

Try to follow the bellow steps and send us the result

1. untar 3.4 pack and you will be getting the folders scAgent3.4.0 and scServer3.4.0

2. Make sure no snapcreator server instance is already running (ps -ef | grep snapcreator).

3. run 'scServer3.4.0/snapcreator --profile setup'

4. copy scServer3.3.0/configs/<profile name> to scServer3.4.0/configs/ 

Note : Please don't copy 'default' folder and try to follow the step 'copy from 3.3 to 3.4'.

5. copy /scServer3.3.0/gui/snapcreator folder to scServer3.4.0/gui

Note : we have copied both conf and database folder to 3.4 release

6. Start the server using 'java -jar snapcreator.jar -gui_port <port name>'

7. Login to the gui and check the scheduler.

Please let us know the result.

Happy to help..

avbohemen

Yes I have.

avbohemen

Nope, everything in /gui/etc/snapcreatorgui.conf is 3.4:

SNAPCREATOR_PATH=/opt/netapp/scServer3.4.0

SNAPCREATOR_EXEC=/opt/netapp/scServer3.4.0/snapcreator

SNAPCREATOR_USER=scuser

SNAPCREATOR_PASS=<encrypted>

SNAPCREATOR_SERIAL=0000000

However, in /gui/snapcreator/seg0/c510.dat are the following entries (it looks like one for every schedule entry):

^A^P    ^@^D^@^B99^@    ^@^GDEFAULT^A^@5^@3com.netapp.rre.snapcreator.server.scheduler.TaskJob^@^C^@^A0^@^C^@^A0^@^C^@^A0^@^C^@^A0^@@® ^@«#

#Mon Jun 27 11:14:52 CEST 2011

configuration_file=moou_ppima_sm

exec=/opt/netapp/scServer3.3.0/snapcreator

task_id=99

debug=normal

profile=rs18

action=snap

policy=daily

charly

You are running the server as service or manually started the server..?

Hope you have followed the steps

  1. Unzipped the scServer pack
  2. Copied your config files under <scserver>/configs except 'default' folder.
  3. Copied 3.3 db folder <scServer3.3>/gui/snapcreatorto <scServer 3.4>/gui
  4. Restarted the scServer
  5. Perform GUI login.


Can you send us the log under <scServer3.4>/gui/logs/ file ..?

pascalc

Hey Keith

I was going to ask where is stored the scheduler data in snapcreator 3.3.0 ?

jntballard

Thanks Keith,

I am currenlty not using the GUI schedular in 3.3 but was thinking about it for 3.4.  For now, everything is scheduled via cron.

For the GUI schedular, is the GUI required to be running via '/usr/bin/java -jar snapcreator.jar -gui_port 6060'; in order for the jobs to run?  Just curious as cron is running as a deamon, I would imagine the java process must be running to manage the GUI schedular jobs.

charly

Hi Keith,

Yes we can port the DB tables created in 3.3 to 3.4.

1. Install the SnapCreator server.

2. If you have selected "Start server as service", then go to Windows services and stop the service "SnapCreatorServerService" and delete <scServer Home>/gui/snapcreator folder.

3. copy <scServer 3.3 home>/gui/snapcreator folder to <scServer 3.4 home>/gui/

4. copy the content of configs folder to <scServer 3.3 home>/configs except "default" folder. If you copy "default" folder, you might loose some of the new features while creating new config.

5. restart the server using java -jar snapcreator.jar -gui_port. If snapcreator is installed as service, then go to Windows services and start the service "SnapCreatorServerService".

Little manual work is required in this case.

regards

Announcements
NetApp on Discord Image

We're on Discord, are you?

Live Chat, Watch Parties, and More!

Explore Banner

Meet Explore, NetApp’s digital sales platform

Engage digitally throughout the sales process, from product discovery to configuration, and handle all your post-purchase needs.

NetApp Insights to Action
I2A Banner
Public