问题导读
1.怎么基于Ambari做二次开发?
2.如何安装samba?
3.开发流程是怎么样的?
前言 Ambari能够搭建、管理Hadoop集群,这是一件很酷的事情,让集群管理变的easy,但是有可能也有自己的一些需求,如果我想基于Ambari做二次开发DIY,修改一下界面,增加一些功能,添加一个模块等等,这些都是没问题,首先Ambari是基于ASF协议,其次,开发也很方便,唯一不足的是官网基于此的开发文档不多。 我主要介绍下,怎么基于Ambari做二次开发,搭建开发环境,最后编译部署打包。 开发环境搭建在windows下安装nodejs python的编译运行环境比较复杂,主要是nodejs有些库文件 是需要C++ 、ruby、python等一些语言进行编译,所以在linux上搭建这些环境简单,使用samba协议共享Linux中的文件,在linux上运行测试,,在windows下进行代码修改。(使用samba协议是一种连接linux和windows的方法,可以应用到很多场景,我觉得这是亮点)。
安装samba 1)安装samba:可以先检查下是否已经安装:rpm -qa | grep samba,没有的话自己安装下,这里介绍下基于RPM包的一种在线安装模式yum。yum是一种快速安装模式,它会自动解决软件安装时的依赖问题并自动去特定的服务器下载相应的软件进行安装,命令十分简单:yum install samba,快捷方便的背后离不开程序员的辛苦啊!
2) service smb restart // 重启 SMB 3) useradd samba // 在 Linux 上建立samba用户 4) smbpasswd -a samba // 创建 Smb 用户,此用户必须是 Linux 上已经建立的 输入密码,完成即可。 5) srvice iptables stop // 关闭防火墙 6) setenforce 0 // 确保setlinux关闭 7)修改/etc/samba/smb.conf,这里面的参数就比较多,主要是 vi/etc/samba/smb.conf ,在最后加入想要共享的文件夹: [samba home] ;共享名称 path = /home/samba ;共享文件夹路径 writeable = yes ;是否可写 guest ok = no ;是否允许GUEST访问
8)windows下连接,启动运行,输入\\<samba_ip>,输入smb帐号密码就可以了
开发流程
1)在ambari-web工程下,运行命令 下载好ambari相应的源码,进入相应的目录中。 [root@bigData-02 ambari-web]# brunch watch –server 上一步参考 ambari的wiki, ambari development
此时,ambari-web项目已经运行 可以通过浏览器访问:<ambari-webserver ip>:3333
2)在window上,通过远程连接访问到samba共享出来的目录,修改相应的代码,ambari-web项目会自动编译,在浏览器刷新,会看到修改后的效果。
3)打包 开发完毕之后,可以参考Ambari系列的第一篇、第二篇博客,进行编译,安装。
|