islandora-interest-groups / Islandora-DevOps-Interest-Group

The purpose of the Islandora DevOps Interest Group is to make it easier for endusers, developers, testers, and system administrators to understand, deploy, tune and secure the Islandora stack (and associated tools) in their respective hosting environments.
14 stars 17 forks source link

Update deployment guide based on feedback #21

Closed manez closed 8 years ago

manez commented 8 years ago

Still addressing #18. A few changes based on @lutaylor review.

ruebot commented 8 years ago

waits for others this time around

:smile:

jrgriffiniii commented 8 years ago

I believe that I may have discovered package management issues when attempting to provision a virtualized environment using:

More specifically, the following work-around was necessary for my attempts at installing mysql-server-5.5 and oracle-java7-installer during the provisioning process:

apt-get -y update && apt-get -y upgrade
apt-get -y install python-software-properties && add-apt-repository -y ppa:webupd8team/java && apt-get -y update
DEBIAN_FRONTEND=noninteractive apt-get -y -f install ca-certificates-java default-jre-headless libpcsclite1 libsctp1 lksctp-tools mysql-server-5.5 openjdk-7-jre-headless tzdata-java
apt-get -y install oracle-java7-installer libjpeg-dev libpng12-dev libtiff4-dev php5 php5-cli php5-curl php5-dev php5-gd php5-ldap php5-mysql php5-xsl php-apc php-soap php-xml-htmlsax3 php-xml-parser php-xml-rpc php-xml-rpc2 php-xml-rss php-xml-serializer php5-imagick php5-mcrypt php-xml* mysql-server vim curl apache2 rsync wget imagemagick ant libimage-exiftool-perl unzip lame autoconf build-essential checkinstall git libass-dev libfaac-dev libgpac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libtheora-dev libtool libvorbis-dev pkg-config texi2html zlib1g-dev ffmpeg2theora poppler-utils python-pip libreoffice libreoffice-writer libreoffice-calc libreoffice-impress libreoffice-draw bibutils ufraw links monit tesseract-ocr tesseract-ocr-eng tesseract-ocr-fra tesseract-ocr-spa tesseract-ocr-ita tesseract-ocr-por tesseract-ocr-hin tesseract-ocr-deu tesseract-ocr-jpn tesseract-ocr-rus

Of course, for interactive environments in which these packages are installed, the steps outlined in the guide may function perfectly well. I still contend that this may present an issue under the assumption that the DevOps IG is likely to guide members towards developing non-interactive, automated solutions for the deployment of web services and server environments.

If this is not the case, then please disregard this comment. Otherwise, I can proceed by attempting to refine this work around, and offer a modification for the guide.

jrgriffiniii commented 8 years ago

As related to the issues outlined above, I would also please propose that the installation for the Oracle build of the JDK be non-interactive by restructuring the step in a manner similar to the following:

[...]
apt-get -y install python-software-properties && add-apt-repository -y ppa:webupd8team/java && apt-get -y update
echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
[...]
apt-get -y install oracle-java7-installer libjpeg-dev libpng12-dev libtiff4-dev php5 php5-cli php5-curl php5-dev php5-gd php5-ldap php5-mysql php5-xsl php-apc php-soap php-xml-htmlsax3 php-xml-parser php-xml-rpc php-xml-rpc2 php-xml-rss php-xml-serializer php5-imagick php5-mcrypt php-xml* mysql-server vim curl apache2 rsync wget imagemagick ant libimage-exiftool-perl unzip lame autoconf build-essential checkinstall git libass-dev libfaac-dev libgpac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libtheora-dev libtool libvorbis-dev pkg-config texi2html zlib1g-dev ffmpeg2theora poppler-utils python-pip libreoffice libreoffice-writer libreoffice-calc libreoffice-impress libreoffice-draw bibutils ufraw links monit tesseract-ocr tesseract-ocr-eng tesseract-ocr-fra tesseract-ocr-spa tesseract-ocr-ita tesseract-ocr-por tesseract-ocr-hin tesseract-ocr-deu tesseract-ocr-jpn tesseract-ocr-rus --force-yes
lutaylor commented 8 years ago

Stick with the oracle JDK fairly sure Djatoka doesn't like the Openjdk. Did we want to make the package installations non-interactive for the guide? It is intended to be manual so people can know what each section is doing.

What errors were you getting on the vagrant box? You likely have to uncomment one of the optional repos in the /etc/apt/sources.list for apt. We might just want to make note of this?

jrgriffiniii commented 8 years ago

@lutaylor:

Stick with the oracle JDK fairly sure Djatoka doesn't like the Openjdk.

Understood, please note that I strictly used the Oracle JDK in my discovery of these issues, and that I am not insisting that this be abandoned for another solution.

Did we want to make the package installations non-interactive for the guide? It is intended to be manual so people can know what each section is doing.

This was essentially what I was attempting to ascertain. Manually, this guide appears to function within my virtualized environments.

What errors were you getting on the vagrant box? You likely have to uncomment one of the optional repos in the /etc/apt/sources.list for apt.

The errors related to the Ubuntu environment, and could not be resolved by uncommenting any of the repos within /etc/apt/sources.list

We might just want to make note of this?

I would hesitate to modify the guide if the package installations are to remain non-interactive. Should the issue arise on the mailing list from other parties, I would then suspect that individuals are attempting to automate the installation procedure (as I have been doing).

Otherwise, the guide again appears to have functioned properly for me when attempting to install these components within an interactive environment. Thank you, @manez, @ruebot, and all other involved parties very much for this well drafted and robust solution.

lutaylor commented 8 years ago

@manez @ruebot @jrgriffiniii

I am going to update this doc with fedora 3.8.1, tomcat 7.x, solr 4.2.0, java 8 to bring it into line with the vagrant box. Could we merge this pull so I can throw together another pull with my changes? Just want to avoid merge conflicts.

lutaylor commented 8 years ago

@ruebot Thanks!