4 Commits
client ... oc

Author SHA1 Message Date
Deon George
2db2cef7d5 Update for SP Server 8.1.9 2019-12-13 16:37:58 +11:00
Deon George
dbcbdf68f3 Update for SP Server 8.1.7 2019-05-06 14:51:11 +10:00
Deon George
5e5cc1b0e9 Changed install password, the installer doesnt like exclamations! 2018-04-03 09:22:00 +10:00
Deon George
c09e682e72 Initial OC setup 2018-03-11 11:48:17 +11:00
6 changed files with 155 additions and 61 deletions

44
Dockerfile Normal file → Executable file
View File

@@ -1,29 +1,29 @@
# NAME ibm/spclient
# VERSION 8.1.8
# BUILD docker build -t="ibm/spclient:latest" .
# NAME ibm/spectrumprotect-oc
# VERSION 8.1.9
# BUILD docker build -t="ibm/spectrumprotect-oc:latest" .
FROM debian:stretch-slim
# Since SP is supported on RHEL and its not available in docker, we'll use CentOS.
FROM centos:7
# We need curl to download the install from a website
RUN apt-get update \
&& apt-get install -yyq curl procps \
&& rm -rf /var/lib/apt/lists/* /tmp/*
# OS Installation Prerequisites
RUN yum -y install http://yum.leenooks.net/CentOS/7/base/redhat-release-7-6.el7.centos.12.2.x86_64.rpm libaio ksh compat-libstdc++-33 numactl && yum clean all && rm -rf /var/tmp/*
# Download and Install client
## http://public.dhe.ibm.com/storage/tivoli-storage-management/maintenance/client/v8r1/Linux/LinuxX86_DEB/BA/v818/.
RUN SOURCE_URL=http://YOUR_SITE_URL_HERE && \
COPY install-oc.xml /tmp/
# Installation
# http://public.dhe.ibm.com/storage/tivoli-storage-management/maintenance/server/v8r1/Linux/8.1.?.???/x86_64/ ... for maintenance releases (without license files).
RUN SOURCE_URL=http://YOUR_SITE_URL_HERE SOURCE=8.1.9.000-IBM-SPSRV-Linuxx86_64.bin && \
mkdir -p /tmp/build && cd /tmp/build && \
curl -SL ${SOURCE_URL}/8.1.8.0-TIV-TSMBAC-LinuxX86_DEB.tar |tar xf - && \
apt-get install ./gsk*.deb ./tivsm-api64.amd64.deb ./tivsm-ba.amd64.deb && \
rm -rf /tmp/build /var/lib/apt/lists/*
curl -SL ${SOURCE_URL}/${SOURCE} > tsm && chmod +x tsm && ./tsm && rm -f tsm && \
./install.sh -s -input /tmp/install-oc.xml -acceptLicense && \
rm -rf /tmp/build /tmp/install*xml
# Add the TSM default Cert to the client and a default config
# This cert is availabe from the cert installation
ADD cert256.arm dsm.sys dsm.opt /opt/tivoli/tsm/client/ba/bin/
RUN /opt/tivoli/tsm/client/ba/bin/dsmcert -add -server spectrumprotect -file /opt/tivoli/tsm/client/ba/bin/cert256.arm
COPY init /sbin/
# The client stores stuff here, its not important, but we'll preserve it across invocations
VOLUME [ "/etc/adsm" ]
# Our final docker parameters
EXPOSE 11443
ENTRYPOINT [ "/sbin/init" ]
CMD [ "start" ]
# Set out local time
RUN ln -sf /usr/share/zoneinfo/Australia/Melbourne /etc/localtime
# Fix OC startup, since it cant find liberty
RUN sed -i 's#^installPath=#installPath=/opt/tivoli/tsm/ui#' /opt/tivoli/tsm/ui/Liberty/bin/opscenter.rc

View File

@@ -1,21 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIDcjCCAlqgAwIBAgIITkKn/aFJ5D4wDQYJKoZIhvcNAQELBQAwVzELMAkGA1UE
BhMCVVMxDDAKBgNVBAoTA1RTTTEUMBIGA1UECxMLVFNNIE5ldHdvcmsxJDAiBgNV
BAMTG1RTTSBTZWxmLVNpZ25lZCBDZXJ0aWZpY2F0ZTAeFw0xOTA2MjcwMjI1MDVa
Fw0yOTA2MjUwMjI1MDVaMFcxCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNUU00xFDAS
BgNVBAsTC1RTTSBOZXR3b3JrMSQwIgYDVQQDExtUU00gU2VsZi1TaWduZWQgQ2Vy
dGlmaWNhdGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZh0G2Y5RU
3UFtTCHrcqgbvx9gU49KxmIua6LIO2yr2fGn3M4iJYZ+atg7vr/wzpQS/q5c5sMa
WF06VuWOAEV1teWTU1LM+wkPJA8RjP+z2lgsX0jFT3tyBlP4iFlWDhRzeDjbqq2Q
h7M56+3uRj/wHP01z71EU87q0tqrGyOQh4PJJ9090q5v8esEiJlxC3xel9CquI2l
tH56JiVf75RhTV+NvIbKENKKJUkhz9c3ob3x+Be18m4MK0vHs10U71uM+uevIwSU
ZzJ1p3aCy45d7nIvXVOixGxyscMpPZ0mghcMEGnW5esjNn4Jtc+OD3xrEnF7a05B
gtBXiDiEkkNTAgMBAAGjQjBAMB0GA1UdDgQWBBSC7skEbF8cFNcXJsfCJP36Xxvg
GTAfBgNVHSMEGDAWgBSC7skEbF8cFNcXJsfCJP36XxvgGTANBgkqhkiG9w0BAQsF
AAOCAQEAAEMJKTFRkr5HQn8xwBiDE66cakrRs7Ki9bnLQubpncEs88lRUyqPZcfn
OQbqgBzXZ3af5gj47SOt8BZR4wU96b5kd7jZWDwpGcoQyM2arvtp7PfqoL76lpWI
qbYvmbG0yxPAL4BWsiOVUGpgHK903ElYKQLFvHhudrLeziOgs2quErmItzFDMwcm
BZlMX48VBYQd6N1WaPGbsmSJZJdIIV1VIsxAoMrbgN5PhqsUcxR64fmQj4+bCdqk
r/N0cfdBmnmC3AqaMJwfj/FUGZ2gKWggJtSqgP2T/foUBsf0ubaAMRks2kVBd/YL
QjDYpfuWO6VN/RtI3Eo5z+KdJDOkmQ==
-----END CERTIFICATE-----

View File

@@ -1 +0,0 @@
DATEformat 2

17
dsm.sys
View File

@@ -1,17 +0,0 @@
SErvername docker
COMMmethod TCPip
* MANAGEDServices schedule
TCPPort 1500
TCPServeraddress spectrumprotect
PASSWORDAccess generate
SCHEDMode polling
ERRORLOGRetention 10,d
ERRORLOGName /var/log/tsm/dsmerror.log
SCHEDLOGName /var/log/tsm/dsmsched.log
SCHEDLOGRetention 10,d
TCPNodelay Yes
TCPBuffsize 32
TCPWindowsize 64
SSL No

21
init Executable file
View File

@@ -0,0 +1,21 @@
#!/bin/bash
set -e
NAME="SP"
function stop {
echo "Stopping ${NAME}"
/opt/tivoli/tsm/ui/Liberty/bin/opscenter.rc stop
}
trap 'stop' SIGTERM
if [ "$1" == "start" ]; then
/opt/tivoli/tsm/ui/Liberty/bin/opscenter.rc start
( while ps -p $(cat /opt/tivoli/tsm/ui/Liberty/usr/servers/.pid/guiServer.pid) >/dev/null; do sleep 600; done ) &
wait
else
exec $@
fi

112
install-oc.xml Normal file
View File

@@ -0,0 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<agent-input clean="true" temporary="true">
<variables>
<!--@ATTENTION@ Select your product license before doing a silent install. -->
<!-- Enter 'tsm' for the value of license.selection to accept the IBM Tivoli Storage Manager license -->
<!-- Enter 'tsmee' for the value of license.selection to accept the IBM Tivoli Storage Manager Extended Edition license -->
<!-- Enter 'ssam' for the value of license.selection to accept the IBM System Storage Archive Manager license -->
<variable name='license.selection' value='tsmee'/>
<!-- Set these variables if you are installing the OC.-->
<variable name="port" value="11443" />
<variable name="ssl.password" value="T$M4Ev3ryB0dY+" />
<!-- Update the value of installDir to change the installation directory.-->
<variable name='installDir' value='/opt/tivoli/tsm'>
<!-- For Windows, update this value to change the installation directory.-->
<if name='platform:os' equals='win32' value='C:\Program Files\Tivoli\TSM'/>
</variable>
</variables>
<server>
<repository location='repository'/>
</server>
<profile id='IBM Tivoli Storage Manager' installLocation='${installDir}' >
<data key='user.license,com.tivoli.dsm.server' value='${license.selection}'/>
<!-- @ATTENTION@ If you are upgrading an exsting server instance, replace <instanceName>-->
<!-- with the instance name you are upgrading below. If you are upgrading multiple instances -->
<!-- you can add additional instanceName_update and instanceName_password lines below for each -->
<!-- additional instance. -->
<!--data key='user.<instanceName>_update,com.tivoli.dsm.server' value='true'/-->
<!-- Update this value with the instance users password. -->
<!--data key='user.<instanceName>_password,com.tivoli.dsm.server' value=''/-->
<!-- Operations Center profile variables. -->
<data key="user.securePortNumber,com.tivoli.dsm.gui.offering" value="${port}" />
<data key="user.SSL_PASSWORD" value="T$M4Ev3ryB0dY+" />
</profile>
<install modify='false'>
<!-- This will install the server offering -->
<offering id='com.tivoli.dsm.server'
profile='IBM Tivoli Storage Manager'
features='com.tivoli.dsm.server.main'
installFixes='none' selected='false'/>
<!-- Change selected='false' to skip install of the storage agent offering -->
<offering id='com.tivoli.dsm.stagent'
profile='IBM Tivoli Storage Manager'
features='com.tivoli.dsm.stagent.main'
installFixes='none' selected='false'/>
<!-- Change selected='false' to skip install of the device offering -->
<offering id='com.tivoli.dsm.devices'
profile='IBM Tivoli Storage Manager'
features='com.tivoli.dsm.devices.main'
installFixes='none' selected='false'/>
<!-- This will install the license offering -->
<!--
<offering id='com.tivoli.dsm.license'
profile='IBM Tivoli Storage Manager'
features='com.tivoli.dsm.license.main'
installFixes='none' selected='false'/>
-->
<!-- Change selected='false' to skip install of the Language offering -->
<!-- Language Feature names:
com.tivoli.dsm.lang.spanish
com.tivoli.dsm.lang.portuguese
com.tivoli.dsm.lang.german
com.tivoli.dsm.lang.french
com.tivoli.dsm.lang.italian
com.tivoli.dsm.lang.russian
com.tivoli.dsm.lang.japanese
com.tivoli.dsm.lang.korean
com.tivoli.dsm.lang.tchinese
com.tivoli.dsm.lang.schinese
-->
<offering id='com.tivoli.dsm.lang'
profile='IBM Tivoli Storage Manager'
features=''
installFixes='none' selected='false'/>
<!-- Change selected='false' to skip install of the Operation center offering -->
<offering id='com.tivoli.dsm.gui.offering'
profile='IBM Tivoli Storage Manager'
features='com.tivoli.dsm.gui.main_asm,com.ibm.java.jre'
installFixes='none' selected='true'/>
</install>
<preference name='com.ibm.cic.common.core.preferences.connectTimeout' value='30'/>
<preference name='com.ibm.cic.common.core.preferences.readTimeout' value='45'/>
<preference name='com.ibm.cic.common.core.preferences.downloadAutoRetryCount' value='0'/>
<preference name='offering.service.repositories.areUsed' value='false'/>
<preference name='com.ibm.cic.common.core.preferences.ssl.nonsecureMode' value='false'/>
<preference name='com.ibm.cic.common.core.preferences.http.disablePreemptiveAuthentication' value='false'/>
<preference name='http.ntlm.auth.kind' value='NTLM'/>
<preference name='http.ntlm.auth.enableIntegrated.win32' value='true'/>
<preference name='com.ibm.cic.common.core.preferences.preserveDownloadedArtifacts' value='false'/>
<preference name='com.ibm.cic.common.core.preferences.keepFetchedFiles' value='false'/>
<preference name='PassportAdvantageIsEnabled' value='false'/>
<preference name='com.ibm.cic.common.core.preferences.searchForUpdates' value='false'/>
<preference name='com.ibm.cic.agent.ui.displayInternalVersion' value='false'/>
<preference name='com.ibm.cic.common.sharedUI.showErrorLog' value='true'/>
<preference name='com.ibm.cic.common.sharedUI.showWarningLog' value='true'/>
<preference name='com.ibm.cic.common.sharedUI.showNoteLog' value='true'/>
</agent-input>