Upgrading from 6.0 to 6.4.x

tonycarreira

08-02-2019

We are aiming to perform a big migration from 6.0 to 6.4.x (where x=1 or 2).

In the adobe documentation I can see that a recommended step is to perform a "Pattern Detector" to help with the migration, however the pattern detector is only supported from 6.1 onwards.

1) Should we migrate first from AEM 6.0 to 6.1 run the pattern detector and then move from 6.1 to 6.4. Or do you advise moving from 6.0 directly to 6.4.

2) The documentation also says that crx2oak tool should be run from 5.6.1 to 6.x .Since we are already on 6.0 do we still need to run this tool to move to 6.4.

3) Lastly any other things we should look out for when moving for such a big jump?

Thanks!

Accepted Solutions (1)

Accepted Solutions (1)

Jörg_Hoh

Employee

09-02-2019

1) We did the same upgrade (AEM 6.0 to AEM 6.4.2) without using pattern detector. We had to manually validate all overlays, but that wasn't a real big issue here.

2) yes and no 🙂 When you switch from AEM 6.[012] to AEM 6.3 or higher, you need to run crx2oak to "convert" your old tarMK to the new segmentTar format, otherwise on AEM 6.4 the repository wil refuse to start.

3) Test the migration, and make sure that you get your indexes right. And you should test with production-like content to get the right impression for migration times and potential problems. But it should be quite painless.

(We postponed the switch from ClassicUI to Touch ... and I don't recommend to mix that into the migration as well.)

Jörg

Answers (6)

Answers (6)

Jörg_Hoh

Employee

13-02-2019

The format of the command is

java -jar crx2oak.jar $old_repo $new_repo

plus some optional parameters. In your case it seems to me that you have the AEM 6.0 repository in .../aem60/crx-quickstart/repository and the new repository should reside in ../aem60/crx-quickstart/repository/datastore. But just from the naming this doesn't sound like your intention.

can you try this:

java -jar crx2oak.jar /aem_environments/aem60/crx-quickstart/repository /aem_environments/aem64/crx-quickstart/repository

that should be sufficient if you want to stick with the existing datastore (which I recommend).

tonycarreira

13-02-2019

Hi Jorg,

Again, thank you so much for the support. The complete command that I am running is:

java -jar crx2oak-*.jar  \

/aem_environments/aem60/crx-quickstart/repository/ \

/aem_environments/aem60/crx-quickstart/repository/datastore \

How do I configure a datastore? I just want to move the content to 6.4 from 6.0

Jörg_Hoh

Employee

12-02-2019

You need to specify the correct parameters for the crx2oak command, which are listed at the documentation page (included in your post) at the bottom.

Can you paste the complete command you are using? Do you have a datastore already configured?

Jörg

tonycarreira

12-02-2019

Thanks so much for responding Jorg. I understand that but unfortunately my problem lies with the "Migrate the repository part".

I've followed the instructions here Using the CRX2Oak Migration Tool but the information is very limited. I've set the env variables to export SLING_HOME="/usr/aem602/crx-quickstart".

(I have AEM6.0 shutdown and sling_home is pointing to AEM6.0 crx-quickstart)

Problem is when I run: Java -jar crx2oak-*.jar I get the error below. I don't want an s3datastore or any of the sort, I just want to migrate the content repository to be able to run 6.4. Any idea how can I run the crx2oak jar?

The error message I get is as follows:

java -jar crx2oak-1.8.6-all-in-one.jar

12.02.2019 13:06:13.876 INFO   c.a.g.c.CRX2Oak: started with args: []

12.02.2019 13:06:13.973 INFO   c.a.g.c.s.SlingHomeDetector: Detected Quickstart/Sling instance in: /home/filipe/development/programs/64/aem_environments/aem60/crx-quickstart

12.02.2019 13:06:13.974 INFO   c.a.g.c.l.LoggingRedirector: logs are going to be redirected to: /home/filipe/development/programs/64/aem_environments/aem60/crx-quickstart/logs/upgrade.log file (using INFO level)

12.02.2019 13:06:13.987 INFO   c.a.g.c.c.VersionPrinter: CRX2Oak version: 1.8.6 (QUICKSTART_EXTENSION mode)

12.02.2019 13:06:14.234 INFO   c.a.g.c.c.VersionPrinter: crx2oak-1.8.6-all-in-one.jar (version: 1.8, checksum: c326e9150ba060ad89aa84f817ea3e501615d4d26354ae2e41adac992a7154284940e470beef28457f56d75220b879f41ae6e5168f838bb545fdc9e9e7eaa8f8)

12.02.2019 13:06:14.366 INFO   c.a.g.c.p.ProfileHandler: Applying partly the command line (before loading a profile): []

12.02.2019 13:06:14.392 INFO   c.a.g.c.p.ProfileHandler: The following template tags has been defined: {}

12.02.2019 13:06:14.392 ERROR  c.a.g.c.p.ProfileHandler: Tags: [datastore-path] are required but their values were not resolved or not passed at command line.

This might indicate:

1) Some dynamic tags weren't determined correctly (please check all WARN/ERROR log entries)

2) Your custom profile is incorrect (i.e. tag name typos, missing tag definitions)

3) The user should define the tag value at command line manually as profile doesn't specify the default value

The final profile is invalid (incomplete) hence the migration has been aborted.

Jörg_Hoh

Employee

11-02-2019

Our way was like this:

* Shut down AEM 6.0

* migrate the repository

* replace the quickstart jar

* start up this instance with the new quickstart (now as AEM 6.4)

* deploy the application in the AEM 6.4 version

Jörg

tonycarreira

11-02-2019

Thank you so much for the answers Jorg!

Do you run the crx2oak directly on the crx of the 6.4? For instance, deploy all our 6.0 stuff on 6.4 and then run the tool against the 6.4 crx?