有一段时间(我认为超过一年)我从一个人那里听说有可能在某个时刻自动将你的VM在微软天蓝色中转动,并在某个时刻也开启它。所以我想,我可以使用这种机制来关闭我的Owncloud服务器,因为我不使用它,它可以减少计费。但是现在当我在Microsoft Azure面板中时,我无法在任何地方找到此选项...有人可以指出一些有关此功能的信息吗?我真的会帮助你。
答案 0 :(得分:0)
可能,但它需要Azure cmdlet脚本作业。
请查看有关分步介绍的链接:http://clemmblog.azurewebsites.net/using-azure-automation-start-und-stop-virtual-machines-schedule/
作为一种解决方法,如果您的任务不需要位于VM中,则可以将Azure Scheduler视为简单的工作。它非常可靠。 https://msdn.microsoft.com/en-us/library/azure/dn495651.aspx
答案 1 :(得分:0)
您可以按照以下步骤实现:
与我们使用它自动关闭VM的方式相同,我们可以将其打开。打开/关闭它的详细步骤描述为here。
答案 2 :(得分:0)
有几种选择:
1。我在usevm.com工作
答案 3 :(得分:0)
我也遇到了自动关闭 Linux 虚拟机的问题:我不希望它按计划进行,而是希望虚拟机在我不使用它时解除分配。为了实现这一点,我写了一个脚本,它将为我做。该脚本位于下方,I also wrote a blog about setting it up and using it。
该脚本实质上检查VM是否已经启动至少10分钟,以及最后一次SSH连接是否至少在15分钟前关闭(尽管您可以调整时间)。如果满足这些条件,它将取消分配VM。该脚本要求它可以访问Azure服务主体以管理Azure中的Resource Manager VM,并且应该配置为每分钟左右在cron作业中运行。
#!/bin/bash
### SCRIPT CONFIGURATION PARAMETERS
SPNAME="<spNameGUID>"
TENANT="<tenantGUID>"
PASSWORD=`cat pass.txt`
VMNAME=`cat /etc/hostname`
RESOURCEGROUP="${VMNAME}"
SSHTIMEOUT=15
MINSYSUPTIMEMS=600000
TEMPDIR=/tmp/autoshutdown
TEMPFILE="${TEMPDIR}/timetest"
### END SCRIPT CONFIGURATION PARAMETERS
UPTIME=`awk '{print $1*1000}' /proc/uptime`
NUMSSHCONNS=`ps auxwww | grep sshd: | grep -v grep | wc -l`
function dologin {
azure login -u "${SPNAME}" -p `cat pass.txt` --service-principal --tenant "$TENANT"
}
function dodeallocate {
echo "Deallocating VM..."
dologin
azure vm deallocate $RESOURCEGROUP $VMNAME
exit
}
while test $# -gt 0
do
case "$1" in
--test)
echo "Testing azure login..."
dologin
exit $?
;;
--force)
echo "Shutting down vm without testing parameters..."
dodeallocate
exit $?
;;
esac
shift
done
# If there are SSH connections, write the tempfile and exit
if [ $NUMSSHCONNS -gt 0 ]; then
mkdir -p $TEMPDIR
touch $TEMPFILE
exit 0
fi
# Check the system uptime, and the time of the last SSH connection
if [ $UPTIME -gt $MINSYSUPTIMEMS ] && test `find ${TEMPFILE} -mmin +${SSHTIMEOUT}`; then
dodeallocate
exit $?
fi