安装freepbx真的是历经坎坷,不过也收获了一些东西。freepbx可以通过源码安装也可以通过镜像安装。源码安装我们会在另外一篇文章中讲到,这里我们讲到的是镜像安装,在本地进行镜像安装还是比较简单的,直接在vmware里创建一个虚拟机,然后通过ios镜像进行安装,但是在阿里云进行安装就需要耗费点时间和功夫了。阿里云是可以上传自定义镜像的(导入自己的镜像).具体步骤请看阿里云官方文档。
在这里我讲讲的导入镜像的整个过程吧,首先我们要清楚的一件事是阿里云只支持导入 RAW 或 VHD 格式的镜像文件。如果您要导入其他格式的镜像,请先使用工具转换格式后再导入,但是如果我们使用vmware进行创建的虚拟机的镜像文件是vmdk格式的,我尝试使用阿里云官方建议的镜像文件格式转换器qemu-img工具将vmdk格式镜像转换成RAW格式的,但是最后发现是转换不了的提示报错,第一步就夭折了,于是我试着使用Hyper-V进行创建,最后创建成功了。然后我使用qemu-img工具转成raw格式的,然后我们需要将该镜像上传到阿里云的OSS(对象储存),由于一般我创建镜像是设置20G大小,阿里云的上传大于5G的文件需要使用断点续传,但是官方文档看断点续传需要使用api,这个我不会啊,后面找到阿里上传大文件的可视化工具(ossbrowser),最后终于将镜像上传到阿里云,然后我们就需要去阿里云的云服务器 ECS管理控制台---》快照和镜像---》导入镜像。最后我们就使用自定义的镜像进行创建ECS服务器。
创建之后我们会发现我们的ECS服务器是没有连接到网络的,原因是我们之前在本地创建的虚拟机网卡的mac地址和ECS服务器的mac地址是不一样的,所以我们需要这样解决:
第一、删除70-persistent-net.rules文件
rm -f /etc/udev/rules.d/70-persistent-net.rule
第二、编辑ifcfg-eth0文件,将网卡地址(HWADDR)删除。
删除前文件内容
DEVICE="eth0"
BOOTPROTO="dhcp"
HWADDR="00:15:5D:2B:11:1D"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="faf960fb-8dbf-4e05-8167-d1687bb8d346"
删除之后文件内容
DEVICE="eth0"
BOOTPROTO="dhcp"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="faf960fb-8dbf-4e05-8167-d1687bb8d346"
然后我们重启网络服务
service network restart
这样我们的网络就正常,我们的freepbx也就搭建好了,接下来我会讲讲如何在freepbx里面创建分机和连接网关。