1
Charm for IBM MobileFirst Server 7.0
8
IBM DB2 Enterprise Server Edition provides scalable database server software to handle the demanding workloads of large and midsize enterprise servers. It delivers high performance across multiple workloads, while helping to reduce administration, storage, development and server costs.
9
DB2 Server is provided as part of this charm.
11
For details on DB2, as well as information on purchasing, please visit:
12
[Product Page LUW][product-page-enterprise] and [Product Page Express][product-page-express]
14
More information available at the [IBM Knowledge Center][ibm-db2]
6
This charm installs IBM MobileFirst Server software.
8
`IBM MobileFirst Server`
10
IBM MobileFirst Server is mobile-optimized middleware that serves as a gateway between applications, back-end systems and cloud-based services. IBM MobileFirst Platform Foundation provides an open, comprehensive platform to develop, test, secure and manage mobile apps
15
This charm makes use of resources, a feature only available in Juju 2.0. During deploy or upgrade, you will need to specify the installable package(s) required by this charm. Download your licensed IBM MobileFirst Server packages from the [Product Page] [mfs-product-page]. For details on IBM MobileFirst Server refer to [IBM Knowledge Center] [mfs-v7-info]
17
For Ubuntu (Power and x86_64), IBM MobileFirst Server package and part number is:
19
IBM MobileFirst Server 7.0 Installer (CN4V2EN)
18
The user will need to procure the appropriate license to be able to download and use IBM DB2.
20
To acquire and download DB2, follow instructions available at [Product Page LUW][product-page-enterprise] or [Product Page Express][product-page-express].
21
The tab `Support&downloads` in [Product Page LUW][product-page-enterprise] gives different options for downloading the packages.
23
Download steps for IBM DB2 10.5 using [Passport Advantage][passport-advantage] is mentioned in [Downloading IBM DB2 10.5 for LUW][download-db2]. The Part Number used is CIXV0ML for X86-64 platform and that for Power is CN3YQML. To get more information on accessing [Passport Advantage][passport-advantage] please visit the link [Accessing Passport Advantage][access-passport-advantage].
25
To install the downloaded binaries you must agree to the IBM license. You can view the full license for DB2 by visiting the [Software license agreements search website][license-info]. Search for "DB2 Enterprise Server Edition 10.5.0.5" and choose the license that applies to the version you are using.
27
In case you already have an IBM account and cannot download the product or for other error during SW download, please refer to the [IBM Support Site][ibm-support] to solve the error.
29
Download of Product Binaries
30
----------------------------
31
For deploying IBM DB2 charm the user needs to download the correct package as mentioned in the `Usage` section and host it on an SFTP or Web server. The IBM DB2 charm will connect to the server(either by SFTP or HTTP method) to download and deploy the same. The host server can be any Power Ubuntu/X86 Ubuntu servers and should be copied into a directory structure as below
33
`/<path to charm dir>/charm/repository/<productname>/<package.tar>`
35
The complete path where the package is stored is a configurable item which needs to be configured before deploying the charm.
24
To use this charm, you must agree to the Terms of Use. You can view the full license for IBM Mobile First Server by visiting the [LicenseInfo] [license-page].
38
26
Memory and Disk Requirements
39
----------------------------
40
At a minimum, a DB2 database system requires 256 MB of RAM. For a system running just a DB2 product and the DB2 GUI tools, a minimum of 512 MB of RAM is required. However, 1 GB of RAM is recommended for improved performance.
42
On Linux and UNIX operating systems, 2 GB of free space in the /tmp directory is recommended. Please make sure this minimum memory configuration is available before deploying the charm. More information on this can be found in [Memory Requirements][db2-memory-disk-requirement]
27
-----------------------------
28
Minimum 150 MB disk space and 2GB RAM memory is required.
46
To deploy DB2 charm, run the following command:
48
1. Make sure the appropriate memory requirements are made available
50
2. For deploying either use an existing machine, or create a new machine using
53
juju deploy --to <machine number> --repository=<path_to_charms_folder> local:trusty/ibm-db2
55
3. Set all required config values like the curl__opts to log into the host machine and curl_url which specifies the url to download the packages, by using juju set command. To provide these run the following command:
57
juju set ibm-db2 curl_opts=<login credentials>
58
juju set ibm-db2 curl_url=<url to download package?shavalue>
62
juju set ibm-db2 curl_opts="-u user:password"
63
juju set ibm-db2 curl_url="http://<ipaddress>/debs/ibm-db2/DB2_Svr_10.5.0.3_Linux_x86-64.tar.gz?sha512=ae20be99e3cd2cef24d53a28331871d7193cfc7f7c24c580e6e78dc58c9ffb364cbcc69cb3773d2f0135b8c9be7ee40a7dc4e09fec0a4d731c4864bbba87d31e"
32
To deploy ibm-mobilefirst-server charm you need `ibm-db2` and `websphere-liberty` charms.
34
The MobileFirst Server charm is a sub ordinate charm to IBM WebSphere Liberty charm and hence will be deployed to the same container as IBM WebSphere Liberty software.
36
Run the following commands to deploy this charm:
38
Following commands would deploy websphere-liberty charm. Mobile First Server needs Websphere Liberty version 8.5.5.8.
40
1. juju deploy websphere-liberty
41
2. juju set-config websphere-liberty accept-ibm-websphere-license=True
42
3. juju set-config websphere-liberty ibm-liberty-version="8.5.5.8"
44
Please go through the [websphere-liberty] [wlp-readme] charm for detailed deployment instructions.
46
Following commands would deploy ibm-db2 charm.
48
4. juju deploy ibm-db2
49
5. juju set-config ibm-db2 curl_opts="<login credentials>"
50
6. juju set-config ibm-db2 curl_url="<url to download package?shavalue>"
51
7. juju set-config ibm-db2 license_accepted="True"
53
Please go through the [ibm-db2] [db2-readme] charm file for detailed deployment instructions.
55
Deploy ibm-mobilefirst-server charm using the below steps. Once deployed, ibm-mobilefirst-server has to be related to websphere-liberty and ibm-db2.
56
ibm-mobilefirt-server charm is built on the top of ibm-im layer and hence the user has to provide the IBM-IM resource also while deploying the MobileFirst.
58
8. juju deploy ibm-mobilefirst-server --resource=ibm_im_installer=</path/to/ibm_im_installer.zip> --resource=ibm_mobilefirstserver_installer=<path/to/iibm_mobilefirstserver_installer.zip>
59
9. juju add-relation websphere-liberty ibm-mobilefirst-server
60
10. juju add-relation ibm-db2 ibm-mobilefirst-server
65
The command to find the checksum value is `sha512sum <Package Name>`
67
In the above example sha512 is used, you can use sha256 or md5 as well.
68
Also in the above example, the packages are hosted on webserver, so http protocol is used, if you have placed the packages on sftp server, then replace the protocol with sftp.
70
4. At this point DB2 install will wait for you to accept the License. To install the downloaded binaries you must agree to the IBM license. The license file(s) can be found in the product binaries you downloaded.
72
If you agree to the license, run the following command :
74
juju set ibm-db2 license_accepted=True
77
Juju deploy command will install db2 and will expose the hostname, port number, db2 instance, install path and userid to the users.
80
Uninstallation of IBM DB2
81
---------------------------
83
Setting the license_accepted to False will uninstall the product.
85
juju set ibm-db2 license_accepted=False
87
Additional configuration parameters
62
At this point Installation Manager and MobileFirst Server install will wait for you to accept the License. To install the downloaded binaries you must agree to the IBM license.
64
11.juju agree ibm-im/1
65
12.juju agree ibm-mobilefirstserver/1
67
Once these Terms are accepted Mobilefirst server software will be installed.
71
After installing IBM MobileFirst server software open appcenter and worklight consoles using below link and replace <public IP> with your container IP address.
72
The http and https port numbers in which Mobile First Server runs can be identified from the open-ports value for the charm.
74
https://<public IP>:<https port>/worklightconsole
75
http://<public IP>:<http port>/worklightconsole
77
To login worklight console use the default credentials `admin/admin123`. This is a configurable value and can be changed by the user.
79
https://<public IP>:<https port>/appcenterconsole
80
http://<public IP>:<<http port>/appcenterconsole
82
To login appcenter console use the same default credentials 'admin/admin123'. This can be changed by the user.
84
IBM MobileFirst Server information
88
85
-----------------------------------
90
Following shows the different configurable values for ibm-db2 charm:
92
* If the user wants to set a different file path used to create databases and logs it can be set using the config value dftdbpath. Use the following command to set it
94
juju set ibm-db2 dftdbpath=<new-path-to-set>
98
juju set ibm-db2 dftdbpath="/tmp"
101
Installation Verification
102
------------------------
103
Once IBM DB2 charm is deployed, the user can log into the container/machine where it is deployed using the default user/password (db2inst1/db2inst1). The user can run any db2 commands after this.
105
* For creating a new DB the user may run the command:
107
db2 create database <db-name>
109
* For listing the DBs created, run the command:
111
db2 list db directory
113
* For getting db2 command prompt just run the command:
117
Relating with other consumer charms
118
----------------------------------
119
IBM DB2 charm can be related to other consumer charms using the following command.
121
juju add-relation ibm-db2 <consumer-charm>
123
When IBM DB2 charm is related to any consumer charm, it creates a db2instance, username/password as per the service name and will be provided to the consumer charm. IBM DB2 charm also creates DBs as provided by the consumer charm and returns the DB details once they are successfully created. The following code will help the consumer charm authors to pass the DB names to the IBM DB2 charm:
126
function configure_dbs(){
128
relation_call --state=db.connected set_dbs $dbnames || true
131
If no DB name is provided by consumer charm, IBM DB2 charm by default creates DBs according to the service name.
133
Also to set relation with IBM DB2 charm and make use of all the features, the consumer charm __should__ pass the ssh key from itself to IBM DB2 charm. The following code will help the consumer charm authors to do this :
136
@when_not 'test.sshconfigured'
137
function configure_sshkeys(){
139
if [ ! -f $SSH_PATH/id_rsa.pub ]; then
140
juju-log "Setting up SSH keys."
141
ssh-keygen -t rsa -f $SSH_PATH/id_rsa -N ''
143
key="`cat $SSH_PATH/id_rsa.pub`"
144
relation_call --state=db.connected set_ssh_keys $key || true`
145
set_state 'test.sshconfigured'
148
Without this IBM DB2 charm will not be ready and will not create the DBs for the related services.
152
See config.yaml file for more information.
154
* `license_accepted`: True to accept license. Before you can use or install IBM DB2, you must accept the terms of International License Agreement for Non-Warranted Programs and additional license information. Please read the license agreement carefully. The license file(s) can be found under the server/db2/license directory after downloading and extracting IBM DB2 there. Set the value of license_accepted to True if you agree to IBM DB2 license.
156
* `dftdbpath` : This parameter contains the default file path used to create databases under the database manager. If no path is specified when a database is created, the database is created under the path specified by the dftdbpath parameter.
158
* `curl_url` : Location of the IBM product installation file(s). This should be a URL that curl can use to download files. Multiple URLs should be separated by a space.
160
* `curl_opts` : The options passed to the 'curl' command when fetching files from curl_url.
162
Additional product information
163
------------------------------
165
##### Enabling BLU acceleration for DB2 Advanced Enterprise Server Edition/DB2 Advanced Workgroup Server Edition
167
The same DB2 charm(DB2 Enterprise Server Edition) can be extended to enable the BLU acceleration(DB2 Advanced Enterprise Server Edition/DB2 Advanced Workgroup Server Edition) by following the below section. The DB2 charm has to be deployed first and then few settings need to be done to enable the BLU feature.
169
To upgrade DB2 Enterprise Server Edition (DB2 ESE) to DB2 Advanced Enterprise Server Edition(DB2 AESE) or DB2 Advanced Workgroup Server Edition (DB2 AWSE) the user need to accept the license for the same. Run the following command for accepting the AESE/AWSE license which the user procures on buying the Advanced Enterprise/ Workgroup Server Edition product. The user needs to log in using the configured user name/password to run the below commands.
171
db2licm -a </path/to/license/file/db2aese_u.lic>
173
db2licm -a </path/to/license/file/db2awse_u.lic>
175
`db2licm -l` command will show the license details once you apply the license.
176
Now to enable the BLU feature the DB2_WORKLOAD registry variable has to be set to ANALYTICS and then the DB has to be restarted. The following commands will help the user for this.
178
db2set DB2_WORKLOAD=ANALYTICS
182
To test that DB2 AESE with BLU acceleration is enabled run the following command:
184
db2 create database <test-db>
185
db2 connect to <test-db>
186
db2 get db cfg | grep DFT_TABLE_ORG
188
The output Default table organization (DFT_TABLE_ORG) = COLUMN confirms that the DB2 AESE/AWSE with BLU is enabled. If the pre requisites for DB2 for AESE/AWSE is not set (accepting the proper license and setting the registry variable DB2_WORKLOAD) the above command would return Default table organization (DFT_TABLE_ORG) = ROW. Column-organized tables store each column on a separate set of pages on disk. Organizing data by column on disk reduces the amount of I/O needed for processing queries because only columns that are referenced in a query need to be accessed.
190
Once this is set all the tables created will be by default COLUMN organized whereas without BLU acceleration the tables will be ROW organized. Also without proper license we cannot create COLUMN organized tables. Once we enable COLUMN organized tables, we can create either ROW enabled or COLUMN enabled tables using the option ORGANIZE BY ROW or ORGANIZE BY COLUMN while creating the tables by running the below commands from db2 command prompt.
192
create table sales_row(tid integer not null, prod_name varchar(30)) ORGANIZE BY ROW
193
create table sales_col(tid integer not null, prod_name varchar(30)) ORGANIZE BY COLUMN
195
The following command will convert the ROW organized tables to COLUMN organized if the proper license is accepted. Without having valid license the following command will error out.
197
db2convert -d <test-db>
199
More details on BLU feature can be found in the link [db2-BLU-acceleration]
201
IBM DB2 Links and Contacts
202
--------------------------
204
86
(1) General Information
205
Information on IBM DB2 available at the [DB2 Knowledgecenter][db2-knowledgecenter]
87
Details about MobileFirst Server 7.0 available at [IBM Knowledge Center][mfs-v7-info].
207
89
(2) Download Information
208
Information on procuring DB2 product is available at the [Passport Advantage Site][passport-db2]
210
(3) Contact Information
211
For issues with this charm, please contact <jujusupp@us.ibm.com>
90
Information on procuring MobileFirst Server product is available at the [Product Page][mfs-product-page]
91
and at the [Passport Advantage Site][passport].
96
For issues with this charm, please contact IBM Juju Support team <jujusupp@us.ibm.com>
216
[product-page-express]: http://www-03.ibm.com/software/products/en/db2-express-server-edition
218
[product-page-enterprise]: http://www-01.ibm.com/software/data/db2/linux-unix-windows/index.html
220
[download-db2]: http://www-01.ibm.com/support/docview.wss?uid=swg21638030
222
[passport-advantage]: http://www.ibm.com/software/howtobuy/passportadvantage
224
[access-passport-advantage]: http://www-01.ibm.com/support/docview.wss?uid=swg21566554
226
[ibm-db2]: http://www-01.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.kc.doc/welcome.html
228
[license-info]: http://www-03.ibm.com/software/sla/sladb.nsf/search
230
[passport-db2]: http://www-01.ibm.com/software/passportadvantage/
232
[db2-knowledgecenter]: http://www-01.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.kc.doc/welcome.html
234
[ibm-support]: https://www-947.ibm.com/support/entry/myportal/support
236
[db2-BLU-acceleration]: http://www.ibm.com/developerworks/data/library/techarticle/dm-1309db2bluaccel/
238
[db2-memory-disk-requirement]: http://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.qb.server.doc/doc/r0008877.html?cp=SSEPGG_9.7.0%2F
100
[im-v1.7-info]: http://www-01.ibm.com/support/knowledgecenter/SSDV2W_1.7.0/com.ibm.cic.agent.ui.doc/helpindex_imic.html?cp=SSDV2W_1.7.0%2F0
102
[im-product-page]: http://www-01.ibm.com/support/docview.wss?uid=swg27025142
104
[mfs-product-page]: http://www.ibm.com/software/products/en/mobilefirstfoundation "MFS Info"
106
[mfs-v7-info]: https://www-01.ibm.com/support/knowledgecenter/SSHS8R_7.0.0/com.ibm.worklight.installconfig.doc/install_config/t_ov_server_install.html
108
[license-page]: http://www14.software.ibm.com/cgi-bin/weblap/lap.pl?la_formnum=&li_formnum=L-BVID-9TCPPM&title=IBM%20MobileFirst%20Platform%20Foundation%20V7.0%20zip%20of%20Installation%20Manager%20Repository%20for%20IBM%20MobileFirst%20Server%20Multiplatform%20English
110
[wlp-readme]: https://jujucharms.com/websphere-liberty/trusty/3
112
[db2-readme]: https://jujucharms.com/ibm-db2/trusty/2
114
[passport]: http://www-01.ibm.com/software/how-to-buy/passportadvantage/