Manual upgrade procedure for Zeppelin
Basically, newer version of Zeppelin works with previous version notebook directory and configurations.
So, copying notebook and conf directory should be enough.
Instructions
- Stop Zeppelin:
bin/zeppelin-daemon.sh stop - Copy your
notebookandconfdirectory into a backup directory - Download newer version of Zeppelin and Install. See Install Guide.
- Copy backup
notebookandconfdirectory into newer version of Zeppelinnotebookandconfdirectory - Start Zeppelin:
bin/zeppelin-daemon.sh start
Migration Guide
Upgrading from Zeppelin 0.9, 0.10 to 0.11
- From 0.11, The type of
Pegdownfor parsing markdown was deprecated (ZEPPELIN-5529). It will useFlexmarkinstead.
Upgrading from Zeppelin 0.8 to 0.9
- From 0.9, we changed the notes file name structure (ZEPPELIN-2619). So when you upgrading zeppelin to 0.9, you need to upgrade note files. Here's steps you need to follow:
- Backup your notes file, in case the upgrade fails
- Call
bin/upgrade-note.sh -dto upgrade notes,-doption means to delete the old note file, missing this option will keep the old file.
- From 0.9, the Zeppelin server binds to
127.0.0.1by default, instead of0.0.0.0. Configurezeppelin.server.addrproperty orZEPPELIN_ADDRenv variable to change it to0.0.0.0if you want to access it remotely. - From 0.9, we have removed
zeppelin.anonymous.allowed(ZEPPELIN-4489). So, when you upgrade Zeppelin to 0.9 and ifshiro.inifile does not exist in conf path then all the Zeppelin-Users runs as anonymous. - From 0.9, we use
{crendential_entry.user}and{crendential_entry.password}for credential injection, while before 0.9 we use{user.crendential_entry}and{password.crendential_entry}
Upgrading from Zeppelin 0.8.1 (and before) to 0.8.2 (and later)
- From 0.8.2, the Zeppelin server binds to
127.0.0.1by default, instead of0.0.0.0. Configure thezeppelin.server.addrproperty orZEPPELIN_ADDRenv variable to change this.
Upgrading from Zeppelin 0.7 to 0.8
- From 0.8, we recommend using
PYSPARK_PYTHONandPYSPARK_DRIVER_PYTHONinstead ofzeppelin.pyspark.pythonaszeppelin.pyspark.pythononly affects driver. You can usePYSPARK_PYTHONandPYSPARK_DRIVER_PYTHONas using them in spark. - From 0.8, depending on your device, the keyboard shortcut
Ctrl-LorCommand-Lwhich goes to the line somewhere user wants is not supported.
Upgrading from Zeppelin 0.6 to 0.7
- From 0.7, we don't use
ZEPPELIN_JAVA_OPTSas default value ofZEPPELIN_INTP_JAVA_OPTSand also the same forZEPPELIN_MEM/ZEPPELIN_INTP_MEM. If user want to configure the jvm opts of interpreter process, please setZEPPELIN_INTP_JAVA_OPTSandZEPPELIN_INTP_MEMexplicitly. If you don't setZEPPELIN_INTP_MEM, Zeppelin will set it to-Xms1024m -Xmx1024m -XX:MaxMetaspaceSize=512mby default. - Mapping from
%jdbc(prefix)to%prefixis no longer available. Instead, you can use %[interpreter alias] with multiple interpreter setttings on GUI. - Usage of
ZEPPELIN_PORTis not supported in ssl mode. Instead useZEPPELIN_SSL_PORTto configure the ssl port. Value fromZEPPELIN_PORTis used only whenZEPPELIN_SSLis set tofalse. - The support on Spark 1.1.x to 1.3.x is deprecated.
- From 0.7, we uses
pegdownas themarkdown.parser.typeoption for the%mdinterpreter. Rendered markdown might be different from what you expected - From 0.7 note.json format has been changed to support multiple outputs in a paragraph. Zeppelin will automatically convert old format to new format. 0.6 or lower version can read new note.json format but output will not be displayed. For the detail, see ZEPPELIN-212 and pull request.
- From 0.7 note storage layer will utilize
GitNotebookRepoby default instead ofVFSNotebookRepostorage layer, which is an extension of latter one with versioning capabilities on top of it.