大数据实践1——虚拟机,shell,zookeeper
day1
查看ip地址和mac地址等信息:
ifconfig
配置ip地址和网关:
gedit /etc/sysconfig/network-scripts/ifcfg-eth0
然后编辑:
gedit /etc/hosts
service network restart
# service network restart是重启所有网卡。
例如下面的例子:
>ifconfig eth0 up|down
>service network restart|start|stop
1.前者指定对应网卡后者是所有网卡
2.前者选项有启动和关闭后者有重启选项。
即:前者若要有restart效果,需要 ifconfig eth0 down && ifconfig eth0 up[远程操作需要注意]
3.后者service的操作和前者/sbin下命令操作,权限不同
一些情况下service命令会收给root使用,而普通用户在特定情况下仍可以使用ifconfig。
虚拟机的网络设置及命令行远程免密登陆
Linux下网卡eth1如何修改为eth0
http://www.linuxidc.com/Linux/2015-06/118969.htm
然后配置windows vmadapter8的地址和虚拟机网卡的地址一样
windows ping 虚拟机 能不能ping通
跨协议的远程桌面 vnc:
http://baike.baidu.com/link?url=NIbtesQP2wWMqNUnIxCypmE35GHWxvn0oH8xxjhGn9CWMGC3r2qKRfIKE09OBYqway6WNGCJEkVzSsgo5_WhVa
windows这边装vnc的客户端,linux那边装vnc的服务端,就能连过去
但是大部分服务器都没装图形化界面,都是最小化安装
securecrt是客户端,linux默认安装了它的服务端sshd
查看命令:
netstat -nltp
从一台服务器上登录到另一台服务器:
ssh server03
exit
不同服务器之间拷贝文件
scp /home/zhang/Desktop/note root@server03:/home/zhang/Desktop/
免密登录:
1.生产密钥对
ssh-keygen (提示时,回车即可)
2.将A的公钥拷贝并复制到B的授权文件中
ssh-copy-id server03
3.登录
ssh server03
查看加入的授权文件(在server03中查看):cat authorized_keys
对比自己本地的key文件:cat id_rsa.pub
免密登录自己的操作方式也一样,只是之前已经ssh-keygen生产过的密钥,没必要再生成一遍了
VMware Workstation虚拟机不能联网的解决办法
http://jingyan.baidu.com/article/066074d668155bc3c21cb0ca.html
Centos6.4 本地yum源配置
http://www.cnblogs.com/shenliang123/p/3829044.html
Error parsing "baseurl = 'file:///media/CentOS_6.4_Final\n#file:///media/CentOS-6.4-i386-LiveDVD/\n#file:///media/cdrom/\n#file:///media/cdrecorder/'": URL must be http, ftp, file or https not ""
http://www.linuxdiyf.com/viewarticle.php?id=416251
【linux】记一次httpd服务正常,http不能访问的惨痛教训
http://blog.csdn.net/Qyee16/article/details/51051287
mini版的安装完之后几百M,启动也快
keppalived 替换ip 如果是客户端就没用,有多个客户端的时候,考虑zookeeper
solr zookeeper的服务器版
yum install lrzsz
rz
echo 1 > myid
zookeeper的监听事件很多,但是常用的就两个:
数据发生变化 子节点发生变化
[root@server04 test]# a=1
[root@server04 test]# echo $a
1
[root@server04 test]# ./test.sh
[root@server04 test]# export a=1
[root@server04 test]# ./test.sh
1
test.sh
#!/bin/bash
echo $a
实验2
test.sh
#!/bin/bash
b=2
echo "in test, b="$b
echo "in test, a="$a
export c=3
echo "in test, c="$c
d=4
./test2.sh
~
./test2.sh
test2.sh#!/bin/bash
echo "in test2, b="$b
echo "in test2, a="$a
echo "in test2, c="$c
[root@server04 test]# export a=1
[root@server04 test]# ./test.sh
in test, b=2
in test, a=1
in test, c=3
in test2, b=
in test2, a=1
in test2, c=3
[root@server04 test]# echo $c
[root@server04 test]# echo $d
[root@server04 test]# source test.sh
in test, b=2
in test, a=1
in test, c=3
in test2, b=
in test2, a=1
in test2, c=3
[root@server04 test]# echo $c
3
[root@server04 test]# echo $d
4
export出来的变量,只有在当前进程及其子进程才有用,在它的父进程是没用的。
如果想在父进程里面也有用,该怎么办呢?可以这样:
source test.sh
这样在父进程里面就能访问到
[root@server03 bin]# ssh server04 "source /etc/profile;jps"
2944 ZooKeeperMain
3893 Jps
注意:ssh server04 "source /etc/profile;jps"用""引起来,才会当成一条语句执行,否者只会当成ssh的多个参数
ssh过去之后,其实是独立于server04 的terminal另外的一个进程,是不共享terminal的环境变量的,所以得先执行source /etc/profile引入环境变量
远程启动zookeeper:
[root@server03 bin]# ssh server04 "source /etc/profile;/home/zhang/dev_tools/src/zookeeper/bin/zkServer.sh status"
JMX enabled by default
Using config: /home/zhang/dev_tools/src/zookeeper/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
[root@server03 bin]# ssh server04 "source /etc/profile;/home/zhang/dev_tools/src/zookeeper/bin/zkServer.sh start"
JMX enabled by default
Using config: /home/zhang/dev_tools/src/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
查看进程继承关系:pstree
zookeeper报connectingLoss的错误,原因是:
zookeeper conf目录下的配置文件:zoo.conf的配置如下:
server.2=server02:2888:3888
server.3=server03:2888:3888
server.4=server04:2888:3888
而代码里面的配置如下:
public static final String CONNECT_STRING = "192.168.47.202:2181,192.168.47.203:2181,192.168.47.204:2181";
这样是不行的,代码里面必须跟配置文件保持一致:
public static final String CONNECT_STRING = "server02:2181,server03:2181,server04:2181";
同时在windows里面配置host:
192.168.47.200 server00
192.168.47.201 server01
192.168.47.202 server02
192.168.47.203 server03
192.168.47.204 server04
192.168.47.205 server05
192.168.47.206 server06
查看ip地址和mac地址等信息:
ifconfig
配置ip地址和网关:
gedit /etc/sysconfig/network-scripts/ifcfg-eth0
然后编辑:
gedit /etc/hosts
service network restart
# service network restart是重启所有网卡。
例如下面的例子:
>ifconfig eth0 up|down
>service network restart|start|stop
1.前者指定对应网卡后者是所有网卡
2.前者选项有启动和关闭后者有重启选项。
即:前者若要有restart效果,需要 ifconfig eth0 down && ifconfig eth0 up[远程操作需要注意]
3.后者service的操作和前者/sbin下命令操作,权限不同
一些情况下service命令会收给root使用,而普通用户在特定情况下仍可以使用ifconfig。
虚拟机的网络设置及命令行远程免密登陆
Linux下网卡eth1如何修改为eth0
http://www.linuxidc.com/Linux/2015-06/118969.htm
然后配置windows vmadapter8的地址和虚拟机网卡的地址一样
windows ping 虚拟机 能不能ping通
跨协议的远程桌面 vnc:
http://baike.baidu.com/link?url=NIbtesQP2wWMqNUnIxCypmE35GHWxvn0oH8xxjhGn9CWMGC3r2qKRfIKE09OBYqway6WNGCJEkVzSsgo5_WhVa
windows这边装vnc的客户端,linux那边装vnc的服务端,就能连过去
但是大部分服务器都没装图形化界面,都是最小化安装
securecrt是客户端,linux默认安装了它的服务端sshd
查看命令:
netstat -nltp
从一台服务器上登录到另一台服务器:
ssh server03
exit
不同服务器之间拷贝文件
scp /home/zhang/Desktop/note root@server03:/home/zhang/Desktop/
免密登录:
1.生产密钥对
ssh-keygen (提示时,回车即可)
2.将A的公钥拷贝并复制到B的授权文件中
ssh-copy-id server03
3.登录
ssh server03
查看加入的授权文件(在server03中查看):cat authorized_keys
对比自己本地的key文件:cat id_rsa.pub
免密登录自己的操作方式也一样,只是之前已经ssh-keygen生产过的密钥,没必要再生成一遍了
VMware Workstation虚拟机不能联网的解决办法
http://jingyan.baidu.com/article/066074d668155bc3c21cb0ca.html
Centos6.4 本地yum源配置
http://www.cnblogs.com/shenliang123/p/3829044.html
Error parsing "baseurl = 'file:///media/CentOS_6.4_Final\n#file:///media/CentOS-6.4-i386-LiveDVD/\n#file:///media/cdrom/\n#file:///media/cdrecorder/'": URL must be http, ftp, file or https not ""
http://www.linuxdiyf.com/viewarticle.php?id=416251
【linux】记一次httpd服务正常,http不能访问的惨痛教训
http://blog.csdn.net/Qyee16/article/details/51051287
mini版的安装完之后几百M,启动也快
keppalived 替换ip 如果是客户端就没用,有多个客户端的时候,考虑zookeeper
solr zookeeper的服务器版
yum install lrzsz
rz
echo 1 > myid
zookeeper的监听事件很多,但是常用的就两个:
数据发生变化 子节点发生变化
[root@server04 test]# a=1
[root@server04 test]# echo $a
1
[root@server04 test]# ./test.sh
[root@server04 test]# export a=1
[root@server04 test]# ./test.sh
1
test.sh
#!/bin/bash
echo $a
实验2
test.sh
#!/bin/bash
b=2
echo "in test, b="$b
echo "in test, a="$a
export c=3
echo "in test, c="$c
d=4
./test2.sh
~
./test2.sh
test2.sh#!/bin/bash
echo "in test2, b="$b
echo "in test2, a="$a
echo "in test2, c="$c
[root@server04 test]# export a=1
[root@server04 test]# ./test.sh
in test, b=2
in test, a=1
in test, c=3
in test2, b=
in test2, a=1
in test2, c=3
[root@server04 test]# echo $c
[root@server04 test]# echo $d
[root@server04 test]# source test.sh
in test, b=2
in test, a=1
in test, c=3
in test2, b=
in test2, a=1
in test2, c=3
[root@server04 test]# echo $c
3
[root@server04 test]# echo $d
4
export出来的变量,只有在当前进程及其子进程才有用,在它的父进程是没用的。
如果想在父进程里面也有用,该怎么办呢?可以这样:
source test.sh
这样在父进程里面就能访问到
[root@server03 bin]# ssh server04 "source /etc/profile;jps"
2944 ZooKeeperMain
3893 Jps
注意:ssh server04 "source /etc/profile;jps"用""引起来,才会当成一条语句执行,否者只会当成ssh的多个参数
ssh过去之后,其实是独立于server04 的terminal另外的一个进程,是不共享terminal的环境变量的,所以得先执行source /etc/profile引入环境变量
远程启动zookeeper:
[root@server03 bin]# ssh server04 "source /etc/profile;/home/zhang/dev_tools/src/zookeeper/bin/zkServer.sh status"
JMX enabled by default
Using config: /home/zhang/dev_tools/src/zookeeper/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
[root@server03 bin]# ssh server04 "source /etc/profile;/home/zhang/dev_tools/src/zookeeper/bin/zkServer.sh start"
JMX enabled by default
Using config: /home/zhang/dev_tools/src/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
查看进程继承关系:pstree
zookeeper报connectingLoss的错误,原因是:
zookeeper conf目录下的配置文件:zoo.conf的配置如下:
server.2=server02:2888:3888
server.3=server03:2888:3888
server.4=server04:2888:3888
而代码里面的配置如下:
public static final String CONNECT_STRING = "192.168.47.202:2181,192.168.47.203:2181,192.168.47.204:2181";
这样是不行的,代码里面必须跟配置文件保持一致:
public static final String CONNECT_STRING = "server02:2181,server03:2181,server04:2181";
同时在windows里面配置host:
192.168.47.200 server00
192.168.47.201 server01
192.168.47.202 server02
192.168.47.203 server03
192.168.47.204 server04
192.168.47.205 server05
192.168.47.206 server06
还没人赞这篇日记