首頁 > 軟體

CentOS 6.8下安裝IBM WebSphere出現問題及解決

2020-06-16 17:23:07

(一) CentOS 6.8系統的安裝

親測試過多次,在MQ已安裝好的情況下,執行MQ會提示glibc2.14找不到的問題,因CentOS 6.8系統的glibc只支援到2.12,因此得手動升級到glibc2.14.

升級過程如下:(參考網址:http://www.linuxidc.com/Linux/2017-01/139836.htm

Linux升級Glibc  http://www.linuxidc.com/Linux/2015-04/116472.htm

檢視glibc庫支援的版本庫

strings/lib64/libc.so.6 |grep GLIBC 

1、 http://www.gnu.org/software/libc/下載最新版本,我這裡下載了glibc-2.14.tar.gz 這個版本,解壓到任意目錄準備編譯(/usr/local

Wget http://www.gnu.org/software/libc/glibc-2.14.tar.gz

2、 解壓 >:tar -xzvf glibc-2.14.tar.gz

3、 到解壓目錄 >:cd /usr/local/glibc-2.14

4、 在目錄裡按順序執行下面的命令

mkdir build

cd build

../configure --prefix=/opt/glibc-2.14

make -j4

make install    root許可權下直接輸入make install,否則要加許可權sudo

5、 安裝完了,還是不行。別急,還需要下面兩個命令:

>:cp -r/etc/ld.so.c* /opt/glibc-2.14/etc/  這個過程可能會有多個檔案覆蓋,全覆蓋掉
>:ln -sf /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6

如果第5步沒有執行,系統還是會提示glibc.2.14找不到

再次檢測下glibc庫支援的版本庫

strings /lib64/libc.so.6 |grep GLIBC

這樣就算完了。參考連結:

http://www.linuxidc.com/Linux/2017-01/139806.htm

http://www.linuxidc.com/Linux/2017-01/139833.htm 

(一)  下載MQ版本檔案,這裡使用IBM_MQ_9.0版本,到IBM官網下載版本IBM_MQ_9.0.0.0_LINUX_X86-64_TRIAL.tar.gz。

參考文件:http://www.linuxidc.com/Linux/2017-01/139832.htm

(二)  解壓縮安裝包

tar -zxvf IBM_MQ_9.0.0.0_LINUX_X86-64_TRIAL.tar.gz

1:建立WebSphere MQ 必需的檔案系統,命令如下:

建立安裝目錄mkdir /opt/mqm

mkdir /var/mqm

網上看到說MQ安裝時候預設的目錄就是這兩個,意思可以沒必要建,但是為了保險還是自己手工建立一下哈。我最後安裝的時候沒有建。

2:建立MQ使用者和使用者組,命令如下:

groupaddmqm

useradd-d /var/mqm -g mqm -G mqm mqm

passwdmqm (修改密碼)

只有把mqm密碼改了,才能使以上生效。

3:為mqm使用者組新增root

cd /etc

vigroup

修改 mqm:!:3000:mqm

這裡的gid要依據各個系統的建立使用者設定而為。我的是3000,我設定成跟root一樣的許可權。

4:調整系統引數(視需要而定)

修改最大共用記憶體,命令如下:

cat/proc/sys/kernel/shmmax

會提示一個值 

echo268435456 >/proc/sys/kernel/shmmax

修改最大檔案控制代碼,命令如下:

cat/proc/sys/fs/file-max

echo32768 >/proc/sys/fs/file-max

如果自己系統比這個大,沒必要改。

或者可以看下哪些引數需要設定的,如下:

1) 執行 su mqm -c"/opt/mqm/bin/mqconfig", 檢視哪些引數需要設定

2) 如果提示mqconfig: The bc program wasnot found on this system. 執行 yuminstall -y bc 安裝bc

3) 按照mqconfig的提示資訊設定作業系統引數,如筆者的環境提示以下的Fail

SystemV Semaphores

 semmsl     (sem:1)  250 semaphores                   IBM>=500     FAIL

 semmns     (sem:2)  1 of 32000 semaphores    (0%)    IBM>=256000       FAIL

 semopm     (sem:3)  32 operations                    IBM>=250       FAIL

 semmni     (sem:4)  1 of 128 sets            (0%)    IBM>=1024       FAIL

SystemSettings

 file-max            1568 of 185426 files     (0%)    IBM>=524288      FAIL

 tcp_keepalive_time  7200 seconds                     IBM<=300        FAIL

CurrentUser Limits (mqm)

 nofile       (-Hn)  4096 files                      IBM>=10240        FAIL

 nofile       (-Sn)  1024 files                      IBM>=10240        FAIL

則在/etc/sysctl.conf中設定:

kernel.sem= 500 256000 250 1024

fs.file-max= 524288

net.ipv4.tcp_keepalive_time= 300

/etc/security/limits.conf中設定:

mqm  soft    nofile    10240

mqm  hard    nofile    10240

4) 執行 sysctl -p 後再次執行su mqm -c"/opt/mqm/bin/mqconfig",直到檢查項全部通過,通過後再開始安裝MQ

5:轉到WebSphere MQ解壓後的目錄中,獲得WebSphere MQ授權,命令如下:

./mqlicense.sh-accept

閱讀全文後,選擇1接受授權。授權之後才能安裝接下來的元件:

6:安裝WebSphere MQ用戶端和伺服器端,命令如下:

rpm-ivh MQSeriesRuntime-9.0.0.0.i386.rpm

rpm-ivh MQSeriesSDK-9.0.0-0.i386.rpm

rpm-ivh MQSeriesJava-9.0.0-0.i386.rpm

rpm-ivh MQSeriesClient-9.0.0-0.i386.rpm

rpm-ivh MQSeriesSamples-9.0.0-0.i386.rpm

rpm-ivh MQSeriesServer-9.0.0-0.i386.rpm(如果只裝用戶端,這個沒必要安裝)

7:安裝校驗

rpm -qa| grep MQSeries

結果如下則表明MQ 用戶端的安裝已成功。

MQSeriesRuntime-9.0.0-0

MQSeriesSDK-9.0.0-0

MQSeriesJava-9.0.0-0

MQSeriesClient-9.0.0-0

MQSeriesSamples-9.0.0-0

MQSeriesServer-9.0.0-0(只裝用戶端,是沒有這一項的)

到這裡MQ就已經安裝完成了。

試著看下建立佇列等命令看能否實現吧!!!

你以為到了這裡就完成了?不不不,還有接下來重要的一步:

驗證安裝是否成功

驗證需要安裝自帶的範例包元件,即MQSeriesSamples-9.0.0-2.x86_64.rpm
驗證的例子完成建立和設定佇列管理器,傳送訊息到佇列,以及從佇列獲取訊息的功能
# su mqm
設定環境變數
~ cd /opt/mqm/bin
~ ./setmqenv -s
出現錯誤:
AMQ8595The setmqenv command was not preceded by the source command
官方解釋見[網站](http://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.ref.doc/amq8.htm)
需要以source命令執行,不是./或者bash setmqenv方式;
source方式或者. setmqenv -s :是在當前的shell中進行設定環境變數
bash setmqenv或者./setmqenv:會新開一個子shell進行設定,設定後返回父shell,設定的變數無法改變父shell
使用命令:source setmqenv -s
檢查是否設定成功,執行查詢mq版本資訊命令
~ dspmqver

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-01/139835.htm


IT145.com E-mail:sddin#qq.com