mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Fix conflict and merge forward PR #3163 from 4.11 to master (4.12)
# Conflicts: # packaging/debian/init/cloud-management # packaging/systemd/cloudstack-agent.default # packaging/systemd/cloudstack-agent.service # packaging/systemd/cloudstack-management.service
This commit is contained in:
commit
3f17671449
2
debian/cloudstack-agent.postinst
vendored
2
debian/cloudstack-agent.postinst
vendored
@ -25,6 +25,8 @@ case "$1" in
|
|||||||
NEWCONFDIR="/etc/cloudstack/agent"
|
NEWCONFDIR="/etc/cloudstack/agent"
|
||||||
CONFFILES="agent.properties log4j.xml log4j-cloud.xml"
|
CONFFILES="agent.properties log4j.xml log4j-cloud.xml"
|
||||||
|
|
||||||
|
mkdir -m 0755 -p /usr/share/cloudstack-agent/tmp
|
||||||
|
|
||||||
# Copy old configuration so the admin doesn't have to do that
|
# Copy old configuration so the admin doesn't have to do that
|
||||||
# Only do so when we are installing for the first time
|
# Only do so when we are installing for the first time
|
||||||
if [ -z "$2" ]; then
|
if [ -z "$2" ]; then
|
||||||
|
|||||||
@ -71,7 +71,7 @@ setJavaHome() {
|
|||||||
setJavaHome
|
setJavaHome
|
||||||
|
|
||||||
JARS=$(ls /usr/share/cloudstack-management/lib/*.jar | tr '\n' ':' | sed s'/.$//')
|
JARS=$(ls /usr/share/cloudstack-management/lib/*.jar | tr '\n' ':' | sed s'/.$//')
|
||||||
CLASSPATH="$JARS:$CLASSPATH"
|
CLASSPATH="$JARS:$CLASSPATH:/usr/share/java/commons-daemon.jar"
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
if [ -s "$PIDFILE" ] && kill -0 $(cat "$PIDFILE") >/dev/null 2>&1; then
|
if [ -s "$PIDFILE" ] && kill -0 $(cat "$PIDFILE") >/dev/null 2>&1; then
|
||||||
|
|||||||
@ -1,122 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# chkconfig: 35 99 10
|
|
||||||
# description: Cloud Agent
|
|
||||||
# pidfile: /var/run/cloudstack-agent.pid
|
|
||||||
|
|
||||||
# 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.
|
|
||||||
|
|
||||||
# WARNING: if this script is changed, then all other initscripts MUST BE changed to match it as well
|
|
||||||
|
|
||||||
. /etc/rc.d/init.d/functions
|
|
||||||
|
|
||||||
# set environment variables
|
|
||||||
|
|
||||||
TMP=/usr/share/cloudstack-agent/tmp
|
|
||||||
SHORTNAME=$(basename $0 | sed -e 's/^[SK][0-9][0-9]//')
|
|
||||||
PIDFILE=/var/run/"$SHORTNAME".pid
|
|
||||||
LOCKFILE=/var/lock/subsys/"$SHORTNAME"
|
|
||||||
LOGDIR=/var/log/cloudstack/agent
|
|
||||||
LOGFILE=${LOGDIR}/agent.log
|
|
||||||
PROGNAME="Cloud Agent"
|
|
||||||
CLASS="com.cloud.agent.AgentShell"
|
|
||||||
JSVC=`which jsvc 2>/dev/null`;
|
|
||||||
|
|
||||||
# exit if we don't find jsvc
|
|
||||||
if [ -z "$JSVC" ]; then
|
|
||||||
echo no jsvc found in path;
|
|
||||||
exit 1;
|
|
||||||
fi
|
|
||||||
|
|
||||||
# create java tmp dir if not found
|
|
||||||
mkdir -m 0755 -p "$TMP"
|
|
||||||
|
|
||||||
unset OPTIONS
|
|
||||||
[ -r /etc/sysconfig/"$SHORTNAME" ] && source /etc/sysconfig/"$SHORTNAME"
|
|
||||||
|
|
||||||
# The first existing directory is used for JAVA_HOME (if JAVA_HOME is not defined in $DEFAULT)
|
|
||||||
JDK_DIRS="/usr/lib/jvm/jre /usr/lib/jvm/java-1.8.0-openjdk /usr/lib/jvm/java-8-openjdk-i386 /usr/lib/jvm/java-8-openjdk-amd64"
|
|
||||||
|
|
||||||
for jdir in $JDK_DIRS; do
|
|
||||||
if [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; then
|
|
||||||
JAVA_HOME="$jdir"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
export JAVA_HOME
|
|
||||||
|
|
||||||
ACP=`ls /usr/share/cloudstack-agent/lib/*.jar | tr '\n' ':' | sed s'/.$//'`
|
|
||||||
PCP=`ls /usr/share/cloudstack-agent/plugins/*.jar 2>/dev/null | tr '\n' ':' | sed s'/.$//'`
|
|
||||||
|
|
||||||
# We need to append the JSVC daemon JAR to the classpath
|
|
||||||
# AgentShell implements the JSVC daemon methods
|
|
||||||
export CLASSPATH="/usr/share/java/commons-daemon.jar:$ACP:$PCP:/etc/cloudstack/agent:/usr/share/cloudstack-common/scripts"
|
|
||||||
|
|
||||||
start() {
|
|
||||||
echo -n $"Starting $PROGNAME: "
|
|
||||||
if hostname --fqdn >/dev/null 2>&1 ; then
|
|
||||||
$JSVC -Djava.io.tmpdir="$TMP" -Xms256m -Xmx2048m -cp "$CLASSPATH" -pidfile "$PIDFILE" \
|
|
||||||
-errfile $LOGDIR/cloudstack-agent.err -outfile $LOGDIR/cloudstack-agent.out $CLASS
|
|
||||||
RETVAL=$?
|
|
||||||
echo
|
|
||||||
else
|
|
||||||
failure
|
|
||||||
echo
|
|
||||||
echo The host name does not resolve properly to an IP address. Cannot start "$PROGNAME". > /dev/stderr
|
|
||||||
RETVAL=9
|
|
||||||
fi
|
|
||||||
[ $RETVAL = 0 ] && touch ${LOCKFILE}
|
|
||||||
return $RETVAL
|
|
||||||
}
|
|
||||||
|
|
||||||
stop() {
|
|
||||||
echo -n $"Stopping $PROGNAME: "
|
|
||||||
$JSVC -pidfile "$PIDFILE" -stop $CLASS
|
|
||||||
RETVAL=$?
|
|
||||||
echo
|
|
||||||
[ $RETVAL = 0 ] && rm -f ${LOCKFILE} ${PIDFILE}
|
|
||||||
}
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
start)
|
|
||||||
start
|
|
||||||
;;
|
|
||||||
stop)
|
|
||||||
stop
|
|
||||||
;;
|
|
||||||
status)
|
|
||||||
status -p ${PIDFILE} $SHORTNAME
|
|
||||||
RETVAL=$?
|
|
||||||
;;
|
|
||||||
restart)
|
|
||||||
stop
|
|
||||||
sleep 3
|
|
||||||
start
|
|
||||||
;;
|
|
||||||
condrestart)
|
|
||||||
if status -p ${PIDFILE} $SHORTNAME >&/dev/null; then
|
|
||||||
stop
|
|
||||||
sleep 3
|
|
||||||
start
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo $"Usage: $SHORTNAME {start|stop|restart|condrestart|status|help}"
|
|
||||||
RETVAL=3
|
|
||||||
esac
|
|
||||||
|
|
||||||
exit $RETVAL
|
|
||||||
@ -54,7 +54,6 @@ intelligent IaaS cloud implementation.
|
|||||||
%package management
|
%package management
|
||||||
Summary: CloudStack management server UI
|
Summary: CloudStack management server UI
|
||||||
Requires: java-1.8.0-openjdk
|
Requires: java-1.8.0-openjdk
|
||||||
Requires: apache-commons-daemon-jsvc
|
|
||||||
Requires: python
|
Requires: python
|
||||||
Requires: bash
|
Requires: bash
|
||||||
Requires: bzip2
|
Requires: bzip2
|
||||||
@ -420,6 +419,7 @@ if [ ! -d %{_sysconfdir}/libvirt/hooks ] ; then
|
|||||||
mkdir %{_sysconfdir}/libvirt/hooks
|
mkdir %{_sysconfdir}/libvirt/hooks
|
||||||
fi
|
fi
|
||||||
cp -a ${RPM_BUILD_ROOT}%{_datadir}/%{name}-agent/lib/libvirtqemuhook %{_sysconfdir}/libvirt/hooks/qemu
|
cp -a ${RPM_BUILD_ROOT}%{_datadir}/%{name}-agent/lib/libvirtqemuhook %{_sysconfdir}/libvirt/hooks/qemu
|
||||||
|
mkdir -m 0755 -p /usr/share/cloudstack-agent/tmp
|
||||||
/sbin/service libvirtd restart
|
/sbin/service libvirtd restart
|
||||||
/sbin/systemctl enable cloudstack-agent > /dev/null 2>&1 || true
|
/sbin/systemctl enable cloudstack-agent > /dev/null 2>&1 || true
|
||||||
|
|
||||||
|
|||||||
@ -15,11 +15,11 @@
|
|||||||
# specific language governing permissions and limitations
|
# specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
JAVA=/usr/bin/java
|
JAVA_OPTS="-Djava.io.tmpdir=/usr/share/cloudstack-agent/tmp -Xms256m -Xmx2048m"
|
||||||
JAVA_HEAP_INITIAL=256m
|
|
||||||
JAVA_HEAP_MAX=2048m
|
CLASSPATH="/usr/share/cloudstack-agent/lib/*:/usr/share/cloudstack-agent/plugins/*:/etc/cloudstack/agent:/usr/share/cloudstack-common/scripts"
|
||||||
|
|
||||||
JAVA_CLASS=com.cloud.agent.AgentShell
|
JAVA_CLASS=com.cloud.agent.AgentShell
|
||||||
JAVA_TMPDIR=/usr/share/cloudstack-agent/tmp
|
|
||||||
|
|
||||||
#You can uncomment this if you want to enable Java remote debugging.
|
#You can uncomment this if you want to enable Java remote debugging.
|
||||||
#Feel free to change the parameters at your will. The 'address' field defines the port to be used.
|
#Feel free to change the parameters at your will. The 'address' field defines the port to be used.
|
||||||
|
|||||||
@ -23,12 +23,8 @@ After=libvirtd.service
|
|||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
EnvironmentFile=-/etc/default/cloudstack-agent
|
EnvironmentFile=/etc/default/cloudstack-agent
|
||||||
ExecStart=/bin/sh -ec '\
|
ExecStart=/usr/bin/java $JAVA_OPTS $JAVA_DEBUG -cp $CLASSPATH $JAVA_CLASS
|
||||||
export ACP=`ls /usr/share/cloudstack-agent/lib/*.jar /usr/share/cloudstack-agent/plugins/*.jar 2>/dev/null|tr "\\n" ":"`; \
|
|
||||||
export CLASSPATH="$ACP:/etc/cloudstack/agent:/usr/share/cloudstack-common/scripts"; \
|
|
||||||
mkdir -m 0755 -p ${JAVA_TMPDIR}; \
|
|
||||||
${JAVA} -Djava.io.tmpdir="${JAVA_TMPDIR}" -Xms${JAVA_HEAP_INITIAL} -Xmx${JAVA_HEAP_MAX} $JAVA_DEBUG -cp "$CLASSPATH" $JAVA_CLASS'
|
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=10s
|
RestartSec=10s
|
||||||
|
|
||||||
|
|||||||
@ -15,18 +15,9 @@
|
|||||||
# specific language governing permissions and limitations
|
# specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
# Where your java installation lives
|
JAVA_OPTS="-Djava.security.properties=/etc/cloudstack/management/java.security.ciphers -Djava.awt.headless=true -Dcom.sun.management.jmxremote=false -Xmx2G -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/cloudstack/management/ -XX:ErrorFile=/var/log/cloudstack/management/cloudstack-management.err "
|
||||||
#JAVA_HOME="/usr/lib/jvm/java"
|
|
||||||
|
|
||||||
JAVA_OPTS="-Djava.awt.headless=true -Dcom.sun.management.jmxremote=false -Xmx2g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/cloudstack/management/ -XX:PermSize=512M -XX:MaxPermSize=800m -Djava.security.properties=/etc/cloudstack/management/java.security.ciphers "
|
CLASSPATH="/usr/share/cloudstack-management/lib/*:/etc/cloudstack/management:/usr/share/cloudstack-common:/usr/share/cloudstack-management/setup:/usr/share/cloudstack-management:/usr/share/java/mysql-connector-java.jar"
|
||||||
|
|
||||||
CLOUDSTACK_USER="cloud"
|
|
||||||
|
|
||||||
CLOUDSTACK_PID="/var/run/cloudstack-management.pid"
|
|
||||||
|
|
||||||
LOGDIR="/var/log/cloudstack/management"
|
|
||||||
|
|
||||||
CLASSPATH="/etc/cloudstack/management:/usr/share/cloudstack-common:/usr/share/cloudstack-management/setup:/usr/share/cloudstack-management:/usr/share/java/mysql-connector-java.jar:/usr/share/java/commons-daemon.jar"
|
|
||||||
|
|
||||||
BOOTSTRAP_CLASS=org.apache.cloudstack.ServerDaemon
|
BOOTSTRAP_CLASS=org.apache.cloudstack.ServerDaemon
|
||||||
|
|
||||||
|
|||||||
@ -23,14 +23,12 @@ After=syslog.target network.target
|
|||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
UMask=0022
|
UMask=0022
|
||||||
Type=forking
|
Type=simple
|
||||||
Environment="NAME=cloudstack-management"
|
User=cloud
|
||||||
EnvironmentFile=/etc/default/cloudstack-management
|
EnvironmentFile=/etc/default/cloudstack-management
|
||||||
ExecStartPre=/bin/bash -c "/bin/systemctl set-environment JAVA_HOME=$( readlink -f $( which java ) | sed s:bin/.*$:: )"
|
WorkingDirectory=/var/log/cloudstack/management
|
||||||
ExecStartPre=/bin/bash -c "/bin/systemctl set-environment JARS=$(ls /usr/share/cloudstack-management/lib/*.jar | tr '\n' ':' | sed s'/.$//')"
|
PIDFile=/var/run/cloudstack-management.pid
|
||||||
ExecStart=/usr/bin/jsvc $JAVA_DEBUG -home "${JAVA_HOME}" -user "${CLOUDSTACK_USER}" -cp "${JARS}:${CLASSPATH}" -errfile "${LOGDIR}/${NAME}.err" -cwd "${LOGDIR}" -pidfile "${CLOUDSTACK_PID}" "${JAVA_OPTS}" "${BOOTSTRAP_CLASS}"
|
ExecStart=/usr/bin/java $JAVA_DEBUG $JAVA_OPTS -cp $CLASSPATH $BOOTSTRAP_CLASS
|
||||||
ExecStop=/usr/bin/jsvc -cp "${JARS}:${CLASSPATH}" -pidfile "${CLOUDSTACK_PID}" -stop "${BOOTSTRAP_CLASS}"
|
|
||||||
SuccessExitStatus=143
|
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
|||||||
@ -15,8 +15,8 @@
|
|||||||
# specific language governing permissions and limitations
|
# specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
JAVA=/usr/bin/java
|
JAVA_OPTS="-Dpid=$$ -Xms256m -Xmx2048m"
|
||||||
JAVA_HEAP_INITIAL=256m
|
|
||||||
JAVA_HEAP_MAX=2048m
|
CLASSPATH="/usr/share/cloudstack-usage/*:/usr/share/cloudstack-usage/lib/*:/usr/share/cloudstack-mysql-ha/lib/*:/etc/cloudstack/usage:/usr/share/java/mysql-connector-java.jar"
|
||||||
|
|
||||||
JAVA_CLASS=com.cloud.usage.UsageServer
|
JAVA_CLASS=com.cloud.usage.UsageServer
|
||||||
JAVA_PID=$$
|
|
||||||
|
|||||||
@ -23,11 +23,8 @@ After=network.target network-online.target
|
|||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
EnvironmentFile=-/etc/default/cloudstack-usage
|
EnvironmentFile=/etc/default/cloudstack-usage
|
||||||
ExecStart=/bin/sh -ec '\
|
ExecStart=/usr/bin/java $JAVA_OPTS -cp $CLASSPATH $JAVA_CLASS
|
||||||
export UCP=`ls /usr/share/cloudstack-usage/cloud-usage-*.jar /usr/share/cloudstack-usage/lib/*.jar /usr/share/cloudstack-mysql-ha/lib/*.jar | tr "\\n" ":"`; \
|
|
||||||
export CLASSPATH="$UCP:/etc/cloudstack/usage:/usr/share/java/mysql-connector-java.jar"; \
|
|
||||||
${JAVA} -Dpid=${JAVA_PID} -Xms${JAVA_HEAP_INITIAL} -Xmx${JAVA_HEAP_MAX} -cp "$CLASSPATH" $JAVA_CLASS'
|
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=10s
|
RestartSec=10s
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user