Linux局域网集群软件的安装(以JDK安装为例)
来源:互联网 发布:淘宝多久不能追加评论 编辑:程序博客网 时间:2024/06/05 08:00
在集群中,若干服务器,全部手动安装,当量很大的时候,这是不大现实的。
(没有外网下)指导思想
思想一、每一台机器都配一个本地文件系统上的yum仓库 file:///packege/path/。(少量服务器可采取)
思想二、在局域网内部配置一台节点(server-base)的本地文件系统yum仓库,然后将其发布到web服务器中,其他节点就可以通过http://server-base/pagekege/path/下载到本机。
本地yum仓库的建立
制作流程: 先挑选一台机器mini4,挂载一个系统光盘到本地目录/mnt/cdrom,然后启动一个httpd服务器,将/mnt/cdrom 软连接到httpd服务器的/var/www/html目录中 (cd /var/www/html; ln -s /mnt/cdrom ./centos )
然后通过网页访问测试一下: http://mini4/centos 会看到光盘的目录内容。至此:网络版yum私有仓库已经建立完毕。剩下就是去各台yum的客户端配置这个http地址到repo配置文件中。
命令如下:
mkdir /mnt/cdrom #创建挂在的目录
mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom #把安装的镜像文件挂载到自定义的/mnt/cdrom中
注意,如果是这样手动挂载的话,每次重启之后多需要这样挂载一次(查看/dev/cdrom光盘下是否有内容,VM虚拟机下,单击这个虚拟机右键查看setting,看镜像选择是否和connect是否勾选),这样肯定不是需要的,可以让Linux系统自动挂载:在/etc/fstab中加入一行挂载配置,即可自动挂载:
vi /etc/fstab
之后再最后增加一行:
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
接着上面的yum本地仓库的创建:
cd /etc/yum.repos.d/rename .repo .repo.bak * #把所有的默认的库都变成备份cp CentOS-Media.repo.bak CentOS-mini03.repo #创建新的yum库vi CentOS-mini03.repo
配置如下:
[mini03]name=CentOS-mini03baseurl=file:///mnt/cdrom #挂载的地址gpgcheck=1enabled=1 #很重要,1才启用gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
yum常用命令:
安装httpd并确认安装yum instll -y httpd列出所有可用的package和package组yum list清除所有缓冲数据yum clean all列出一个包所有依赖的包yum deplist httpd删除httpdyum remove httpd
如上配置好CentOS-mini03.repo后,执行如下命令:
yum clean all #清除所有yum库yum repolist #重新加载yum库
上面挂载的是系统的镜像,这个镜像中有好多安装文件,由于我们安装的是minimal的,所以大部分软件都是需要手动安装的,这里面就有httpd静态的web服务器,可以提供下载,下面来安装httpd:
yum install -y httpdservice httpd start
使用浏览器访问http://mini03(如果访问不通,检查防火墙是否开启了80端口或关闭防火墙)
由此可以看到我们的yum本地仓库安装成功了,httpd服务也启动了。
下面接着上面的挂载接着操作:
由于httpd的静态文件在/var/www/html这个目录下才能被外部服务器访问,所有我们需要着这个目录下有个指向挂载路径的软连接:
cd /var/www/htmlln -s /mnt/cdrom ./centos
由此,你就可以看到如下所示:
到这里就表示,我么你的yum本地库,httpd,安装镜像文件的挂载到此就完成了。
JDK的安装
参照上面mini03的本地库安装,可以把mini02,mini04,mini05,mini06的本地库都修改下(这个地方是http://mini03/centose而不是本地的file:///mnt/cdrom),修改完成之后,我们就开始写脚本安装集群安装了,其中需要注意的是,每台机器上都必须有scp安装,如果没有需要安装scp: yum install -y openssh-clients
如图在mini03下穿件两个脚本,并增加x(执行)的权限
boot.sh的脚本如下:(ssh公钥和私钥的生成:ssh-keygen
)
install_jdk.sh脚本如下:
文本如下:
boot.sh
#!/bin/bashSERVERS="mini02 mini03 mini04 mini05 mini06"PASSWORD=123456BASE_SERVER=mini03auto_ssh_copy_id(){ expect -c "set timeout -1; spawn ssh-copy-id $1; expect{ *(yes/no)* {send -- yes\r;exp_continue;} *assword:* {send -- $2\r;exp_continue;} eof {exit:0;} }";}ssh_copy_id_to_all(){ for SERVER in $SERVERS do auto_ssh_copy_id $SERVER $PASSWORD done}ssh_copy_id_to_allfor SERVER in $SERVERSdo scp install_jdk.sh root@$SERVER:/root ssh root@$SERVER /root/install_jdk.shdone
install_jdk.sh
#!/bin/bashBASE_SERVER=mini03yum install -y wgetwget $BASE_SERVER/soft/jdk-7u45-linux-x64.tar.gztar -zxvf jdk-7u45-linux-x64.tar.gz -C /usr/localcat >> /etc/profile << EOFexport JAVA_HOME=/usr/local/jdk1.7.0_45export PATH=\$PATH:\$JAVA_HOME/binEOFsource /etc/profile
最后在mini03的~目录下执行./boot.sh安装即可,最后可以在每台机器上用java -version来查看
- Linux局域网集群软件的安装(以JDK安装为例)
- Linux下jdk的下载,安装,配置及异常(以Ubuntu16为例)
- Linux 下如何安装 JDK ,以 Ubuntu 为例。
- linux下软件的源码编译安装(以nginx源码安装为实例)
- debian软件安装基础(以tomcat为例)
- CentOS上tar.gz格式文件的安装方法(以安装jdk为例)
- 如何在Linux下安装软件,以移植安装libjpeg解码库为例(总结)
- Linux软件--JDK的安装与下载
- ubuntu上如何安装以tar.gz为后缀名的软件安装包,以install_flash_player_11_linux.i386.tar.gz为例
- linux的源码安装步骤(以安装nginx为例)
- ubuntu系统安装deb格式的软件(以lantern为例)
- win7下安装jdk(以32位系统为例)
- Ubuntu 下 安装 jdk(以jdk7为例)
- Linux安装(以centOS5.5为例)
- xp硬盘安装linux (以suse为例)
- Linux下安装VMware Tools (以redhat为例)
- linux下(以ubuntu为例)安装微信
- 腾讯云linux系统yum安装软件——以nginx为例
- Servlet中几个listener源码
- 实现一个bubble_sort函数,可以完成int ,float,char,string类型的排序
- 设计模式之工厂模式
- 技术帮助文档
- 删除服务器 默认的apache2服务
- Linux局域网集群软件的安装(以JDK安装为例)
- 栈的应用---(中缀表达式 转 后缀表达式)
- 使用动态宏动态控制数据集的表名
- Mac安装MySQL
- Kafka学习笔记(三)
- typedef与#define的区别
- matlab中使用fopen时出错解决办法
- xml
- 【BZOJ】4723 [POI2017] Flappy Bird