init.sh 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. #!/bin/bash
  2. cmd() {
  3. local info="${2:-$1}"
  4. echo -e "\n\033[1;34m💡 $info\033[0m"
  5. eval "$1"
  6. }
  7. cmd "java -jar /home/admmdw/dummyjava/dummy-server.jar &"
  8. cmd "node /home/admmdw/dummyrest/dummyFDS.js &"
  9. cmd "node /home/admmdw/dummyws/dummyPemko4001.js &"
  10. cmd "node /home/admmdw/dummyws/dummyPemko4002.js &"
  11. cmd "node /home/admmdw/dummyws/dummyPemko4004.js &"
  12. cmd "node /home/admmdw/dummyws/dummyPemko4006.js &"
  13. cmd "node /home/admmdw/dummyws/dummyPemko4020.js &"
  14. cmd "node /home/admmdw/dummyws/dummyPemko5464.js &"
  15. cmd "node /home/admmdw/dummyws/dummyPemko8768.js &"
  16. export PATH=$PATH:/opt/mqm/bin
  17. cfg="/home/admmdw/config.yaml"
  18. # sudo yum -y install openssh-server && sudo ssh-keygen -A && echo "+:ALL:ALL" | sudo tee /etc/security/access.conf && sudo rm -rf /run/nologin && sudo /usr/sbin/sshd
  19. if [ "$(yq '.init' ~/config.yaml)" = "true" ]; then
  20. QInit() {
  21. mkdir -m 775 -p "/MQHA/$(echo "$1" | tr -d '.')/data" >/dev/null 2>&1
  22. mkdir -m 775 -p "/MQHA/$(echo "$1" | tr -d '.')/log" >/dev/null 2>&1
  23. crtmqm -md "/MQHA/$(echo "$1" | tr -d '.')/data" -ld "/MQHA/$(echo "$1" | tr -d '.')/log" "$1" >/dev/null 2>&1
  24. strmqm "$1" >/dev/null 2>&1
  25. echo "DEFINE LISTENER($1.QM) TRPTYPE(TCP) PORT ($2) CONTROL(STARTONLY)" | runmqsc "$1" >/dev/null 2>&1
  26. echo "DEFINE CHANNEL(SYSTEM.ADMIN.SVRCONN) CHLTYPE(SVRCONN)" | runmqsc "$1" >/dev/null 2>&1
  27. echo "ALTER QMGR CHLAUTH(DISABLED)" | runmqsc "$1" >/dev/null 2>&1
  28. echo "START CHANNEL(SYSTEM.ADMIN.SVRCONN)" | runmqsc "$1" >/dev/null 2>&1
  29. echo "START LISTENER($1.QM)" | runmqsc "$1" >/dev/null 2>&1
  30. echo "ALTER QMGR CONNAUTH(' ')" | runmqsc "$1" >/dev/null 2>&1
  31. echo "REFRESH SECURITY TYPE(CONNAUTH)" | runmqsc "$1" >/dev/null 2>&1
  32. echo "SET CHLAUTH(SYSTEM.ADMIN.SVRCONN) TYPE(ADDRESSMAP) ADDRESS(*) ACTION(REMOVE)" | runmqsc "$1" >/dev/null 2>&1
  33. echo "SET CHLAUTH(SYSTEM.*) TYPE(ADDRESSMAP) ADDRESS(*) ACTION(REMOVE)" | runmqsc "$1" >/dev/null 2>&1
  34. echo "SET CHLAUTH(*) TYPE(BLOCKUSER) USERLIST(*MQADMIN) ACTION(REMOVE)" | runmqsc "$1" >/dev/null 2>&1
  35. echo "ALTER CHANNEL(SYSTEM.ADMIN.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('admmdw')" | runmqsc "$1" >/dev/null 2>&1
  36. echo "Queue Manager $1 has been created."
  37. }
  38. QScript() {
  39. local QMDIR=${1%.QM}
  40. runmqsc "$1" <"/home/admmdw/QueueManager/$QMDIR/queue.mqsc" >/dev/null 2>&1
  41. }
  42. for qm in $(yq '.queue_manager[].name' "$cfg" | tr -d '"'); do
  43. port=$(yq ".queue_manager[] | select(.name == \"$qm\") | .port" "$cfg")
  44. createqm=$(yq ".queue_manager[] | select(.name == \"$qm\") | .deploy" "$cfg")
  45. if [[ $createqm ]]; then
  46. QInit "$qm" "$port"
  47. QScript "$qm"
  48. fi
  49. done
  50. for broker in $(yq '.server_ace[].name' "$cfg" | tr -d '"'); do
  51. port=$(yq ".server_ace[] | select(.name == \"$broker\") | .port" "$cfg")
  52. executiongroups=$(yq ".server_ace[] | select(.name == \"$broker\") | .executiongroup[]" "$cfg")
  53. IFS=$'\n'
  54. cmd "mkdir -m 775 -p /MQHA/$broker"
  55. cmd "mqsicreatebroker $broker -q ${broker}.QM -e /MQHA/$broker"
  56. cmd "mqsichangeproperties $broker -b webadmin -o HTTPConnector -n port -v $port"
  57. cmd "mqsistart $broker"
  58. for executiongroup in $executiongroups; do
  59. for eg in $executiongroup; do
  60. iserver="$(echo "$eg" | tr -d '"')"
  61. cmd "mqsicreateexecutiongroup $broker -e $iserver"
  62. cmd "mqsichangeflowstats $broker -e $iserver -s -c inactive"
  63. cmd "mqsichangeresourcestats $broker -e $iserver -c inactive"
  64. cmd "mqsichangeproperties $broker -e $iserver -o ComIbmJVMManager -n jvmMaxHeapSize -v 1073741824"
  65. cmd "mqsichangeproperties $broker -e $iserver -o ComIbmJVMManager -n jvmJavaOSStackSize -v 1048576"
  66. cmd "mqsichangeproperties $broker -e $iserver -o ComIbmJVMManager -n jvmSystemProperty -v \"-Dlogback.configurationFile=/opt/IBM/ace-12.0.9.0/server/jplugin/logback.xml\""
  67. cmd "mqsireload -i $broker -e $iserver"
  68. # stop
  69. for file in /MQHA/bar/"$broker"/"$iserver"/*.bar; do
  70. cmd "mqsideploy $broker -e $iserver -a $file"
  71. done
  72. done
  73. done
  74. if [[ $broker == "ISOBROKER" ]]; then
  75. cmd "mqsisetdbparms ISOBROKER -n mq::mySecureQM -u "admmdw" -p "mdw4dmin""
  76. cmd "mqsistop ISOBROKER"
  77. cmd "mqsistart ISOBROKER"
  78. fi
  79. if [[ $broker == "BDSBROKER" ]]; then
  80. cmd "mqsisetdbparms BDSBROKER -n odbc::MDW -u db2inst1 -p mdw4dm1n"
  81. cmd "mqsisetdbparms BDSBROKER -n odbc::MWCONFIG -u db2inst1 -p mdw4dm1n"
  82. cmd "mqsichangeproperties BDSBROKER -e BDS_MT -o HTTPConnector -n ListenerPort -v 7081"
  83. cmd "mqsichangeproperties BDSBROKER -e BDS_CD -o HTTPConnector -n ListenerPort -v 7082"
  84. cmd "mqsichangeproperties BDSBROKER -e BDS_CF -o HTTPConnector -n ListenerPort -v 7083"
  85. cmd "mqsichangeproperties BDSBROKER -e BDS_DD -o HTTPConnector -n ListenerPort -v 7084"
  86. cmd "mqsichangeproperties BDSBROKER -e BDS_GL -o HTTPConnector -n ListenerPort -v 7085"
  87. cmd "mqsichangeproperties BDSBROKER -e BDS_LN -o HTTPConnector -n ListenerPort -v 7086"
  88. cmd "mqsichangeproperties BDSBROKER -e BDS_OT -o HTTPConnector -n ListenerPort -v 7087"
  89. cmd "mqsichangeproperties BDSBROKER -e BDS_RM -o HTTPConnector -n ListenerPort -v 7088"
  90. cmd "mqsichangeproperties BDSBROKER -e BDS_BP -o HTTPConnector -n ListenerPort -v 7092"
  91. cmd "mqsichangeproperties BDSBROKER -e BDS_VP -o HTTPConnector -n ListenerPort -v 7093"
  92. cmd "mqsichangeproperties BDSBROKER -e BDS_BILLPAYMENT -o HTTPConnector -n ListenerPort -v 7095"
  93. cmd "mqsistop BDSBROKER"
  94. cmd "mqsichangeproperties BDSBROKER -f -e BDS_MT -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  95. cmd "mqsichangeproperties BDSBROKER -f -e BDS_CD -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  96. cmd "mqsichangeproperties BDSBROKER -f -e BDS_CF -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  97. cmd "mqsichangeproperties BDSBROKER -f -e BDS_GL -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  98. cmd "mqsichangeproperties BDSBROKER -f -e BDS_DD -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  99. cmd "mqsichangeproperties BDSBROKER -f -e BDS_LN -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  100. cmd "mqsichangeproperties BDSBROKER -f -e BDS_OT -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  101. cmd "mqsichangeproperties BDSBROKER -f -e BDS_RM -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  102. cmd "mqsichangeproperties BDSBROKER -f -e BDS_BP -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  103. cmd "mqsichangeproperties BDSBROKER -f -e BDS_VP -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  104. cmd "mqsichangeproperties BDSBROKER -f -e BDS_BILLPAYMENT -o ExecutionGroup -n httpNodesUseEmbeddedListener -v true"
  105. cmd "mqsistart BDSBROKER"
  106. fi
  107. done
  108. # echo "$(sed 's/\(init:\) true/\1 false/' "$cfg")" > "$cfg"
  109. fi