mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
- Refactor cloud-early-config and make appliance specific scripts - Make patching work without requiring restart of appliance and remove postinit script - Migrate to systemd, speedup booting/loading - Takes about 5-15s to boot on KVM, and 10-30seconds for VMware and XenServer - Appliance boots and works on KVM, VMware, XenServer and HyperV - Update Debian9 ISO url with sha512 checksum - Speedup console proxy service launch - Enable additional kernel modules - Remove unknown ssh key - Update vhd-util URL as previous URL was down - Enable sshd by default - Use hostnamectl to add hostname - Disable services by default - Use existing log4j xml, patching not necessary by cloud-early-config - Several minor fixes and file refactorings, removed dead code/files - Removes inserv - Fix dnsmasq config syntax - Fix haproxy config syntax - Fix smoke tests and improve performance - Fix apache pid file path in cloud.monitoring per the new template Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
64 lines
2.2 KiB
Bash
Executable File
64 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Licensed to the Apache Software Foundation (ASF) under one
|
|
# or more contributor license agreements. See the NOTICE file
|
|
# distributed with this work for additional information
|
|
# regarding copyright ownership. The ASF licenses this file
|
|
# to you under the Apache License, Version 2.0 (the
|
|
# "License"); you may not use this file except in compliance
|
|
# with the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing,
|
|
# software distributed under the License is distributed on an
|
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
# KIND, either express or implied. See the License for the
|
|
# specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
# run.sh runs the cloud service
|
|
#set -x
|
|
|
|
# make sure we delete the old files from the original template
|
|
rm -f console-proxy.jar
|
|
rm -f console-common.jar
|
|
rm -f conf/cloud.properties
|
|
|
|
CP="./:./conf:$(ls *.jar | tr '\n' ':' | sed s'/.$//')"
|
|
|
|
keyvalues=
|
|
LOGHOME=/var/log/cloud/
|
|
|
|
CMDLINE=$(cat /var/cache/cloud/cmdline)
|
|
|
|
#CMDLINE="graphical utf8 eth0ip=0.0.0.0 eth0mask=255.255.255.0 eth1ip=192.168.140.40 eth1mask=255.255.255.0 eth2ip=172.24.0.50 eth2mask=255.255.0.0 gateway=172.24.0.1 dns1=72.52.126.11 template=domP dns2=72.52.126.12 host=192.168.1.142 port=8250 mgmtcidr=192.168.1.0/24 localgw=192.168.140.1 zone=5 pod=5"
|
|
for i in $CMDLINE
|
|
do
|
|
KEY=$(echo $i | cut -s -d= -f1)
|
|
VALUE=$(echo $i | cut -s -d= -f2)
|
|
[ "$KEY" == "" ] && continue
|
|
case $KEY in
|
|
*)
|
|
keyvalues="${keyvalues} $KEY=$VALUE"
|
|
esac
|
|
done
|
|
|
|
tot_mem_k=$(cat /proc/meminfo | grep MemTotal | awk '{print $2}')
|
|
let "tot_mem_m=tot_mem_k>>10"
|
|
let "eightypcnt=$tot_mem_m*8/10"
|
|
let "maxmem=$tot_mem_m-80"
|
|
|
|
if [ $maxmem -gt $eightypcnt ]
|
|
then
|
|
maxmem=$eightypcnt
|
|
fi
|
|
|
|
if [ "$(uname -m | grep '64')" == "" ]; then
|
|
let "maxmem32bit=2600"
|
|
if [ $maxmem -gt $maxmem32bit ]; then
|
|
maxmem=$maxmem32bit
|
|
fi
|
|
fi
|
|
|
|
java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -Djdk.tls.ephemeralDHKeySize=2048 -Djsse.enableSNIExtension=false -Dlog.home=$LOGHOME -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@
|