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>
71 lines
1.7 KiB
Bash
71 lines
1.7 KiB
Bash
#!/bin/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.
|
|
|
|
set -e
|
|
set -x
|
|
|
|
HOSTNAME=systemvm
|
|
|
|
function configure_resolv_conf() {
|
|
grep 8.8.8.8 /etc/resolv.conf && grep 8.8.4.4 /etc/resolv.conf && return
|
|
|
|
cat > /etc/resolv.conf << EOF
|
|
nameserver 8.8.8.8
|
|
nameserver 8.8.4.4
|
|
EOF
|
|
}
|
|
|
|
# Delete entry in /etc/hosts derived from dhcp
|
|
function delete_dhcp_ip() {
|
|
result=$(grep 127.0.1.1 /etc/hosts || true)
|
|
[ "${result}" == "" ] && return
|
|
|
|
sed -i '/127.0.1.1/d' /etc/hosts
|
|
}
|
|
|
|
function configure_hostname() {
|
|
sed -i "s/root@\(.*\)$/root@$HOSTNAME/g" /etc/ssh/ssh_host_*.pub
|
|
|
|
echo "$HOSTNAME" > /etc/hostname
|
|
hostname $HOSTNAME
|
|
}
|
|
|
|
function configure_interfaces() {
|
|
cat > /etc/network/interfaces << EOF
|
|
source /etc/network/interfaces.d/*
|
|
|
|
# The loopback network interface
|
|
auto lo
|
|
iface lo inet loopback
|
|
|
|
# The primary network interface
|
|
auto eth0
|
|
iface eth0 inet dhcp
|
|
|
|
EOF
|
|
}
|
|
|
|
function configure_networking() {
|
|
configure_interfaces
|
|
configure_resolv_conf
|
|
delete_dhcp_ip
|
|
configure_hostname
|
|
}
|
|
|
|
return 2>/dev/null || configure_networking
|