-function install_prometheus_nodeexporter(){
- if (systemctl -q is-active node_exporter)
- then
- echo "Node Exporter is already running."
- else
- echo "Node Exporter is not active, installing..."
- if getent passwd node_exporter > /dev/null 2>&1; then
- echo "node_exporter user exists"
- else
- echo "Creating user node_exporter"
- sudo useradd --no-create-home --shell /bin/false node_exporter
- fi
- wget -q https://github.com/prometheus/node_exporter/releases/download/v$PROMETHEUS_NODE_EXPORTER_TAG/node_exporter-$PROMETHEUS_NODE_EXPORTER_TAG.linux-amd64.tar.gz -P /tmp/
- sudo tar -C /tmp -xf /tmp/node_exporter-$PROMETHEUS_NODE_EXPORTER_TAG.linux-amd64.tar.gz
- sudo cp /tmp/node_exporter-$PROMETHEUS_NODE_EXPORTER_TAG.linux-amd64/node_exporter /usr/local/bin
- sudo chown node_exporter:node_exporter /usr/local/bin/node_exporter
- sudo rm -rf /tmp/node_exporter-$PROMETHEUS_NODE_EXPORTER_TAG.linux-amd64*
- sudo cp ${OSM_DEVOPS}/installers/docker/prometheus_exporters/node_exporter.service /etc/systemd/system/node_exporter.service
- sudo systemctl daemon-reload
- sudo systemctl restart node_exporter
- sudo systemctl enable node_exporter
- echo "Node Exporter has been activated in this host."
- fi
- return 0
-}
-
-function uninstall_prometheus_nodeexporter(){
- sudo systemctl stop node_exporter
- sudo systemctl disable node_exporter
- sudo rm /etc/systemd/system/node_exporter.service
- sudo systemctl daemon-reload
- sudo userdel node_exporter
- sudo rm /usr/local/bin/node_exporter
- return 0
-}
-
-function install_docker_ce() {
- # installs and configures Docker CE
- echo "Installing Docker CE ..."
- sudo apt-get -qq update
- sudo apt-get install -y apt-transport-https ca-certificates software-properties-common
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- sudo apt-get -qq update
- sudo apt-get install -y docker-ce
- echo "Adding user to group 'docker'"
- sudo groupadd -f docker
- sudo usermod -aG docker $USER
- sleep 2
- sudo service docker restart
- echo "... restarted Docker service"
- sg docker -c "docker version" || FATAL "Docker installation failed"
- echo "... Docker CE installation done"
- return 0
-}
-
-function install_docker_compose() {
- # installs and configures docker-compose
- echo "Installing Docker Compose ..."
- sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
- sudo chmod +x /usr/local/bin/docker-compose
- echo "... Docker Compose installation done"
-}
-
-function install_juju() {
- echo "Installing juju"
- sudo snap install juju --classic --channel=2.8/stable
- [[ ":$PATH": != *":/snap/bin:"* ]] && PATH="/snap/bin:${PATH}"
- echo "Finished installation of juju"
- return 0
-}
-
-function juju_createcontroller() {
- if ! juju show-controller $OSM_STACK_NAME &> /dev/null; then
- # Not found created, create the controller
- sudo usermod -a -G lxd ${USER}
- sg lxd -c "juju bootstrap --bootstrap-series=xenial $OSM_VCA_CLOUDNAME $OSM_STACK_NAME"
- fi
- [ $(juju controllers | awk "/^${OSM_STACK_NAME}[\*| ]/{print $1}"|wc -l) -eq 1 ] || FATAL "Juju installation failed"
- juju controller-config features=[k8s-operators]
-}
-
-function juju_addk8s() {
- cat .kube/config | juju add-k8s $OSM_VCA_K8S_CLOUDNAME --controller $OSM_STACK_NAME
-}
-
-function juju_createproxy() {
- check_install_iptables_persistent
-
- if ! sudo iptables -t nat -C PREROUTING -p tcp -m tcp -d $DEFAULT_IP --dport 17070 -j DNAT --to-destination $OSM_VCA_HOST; then
- sudo iptables -t nat -A PREROUTING -p tcp -m tcp -d $DEFAULT_IP --dport 17070 -j DNAT --to-destination $OSM_VCA_HOST
- sudo netfilter-persistent save
- fi