Vmware和Linux
1.Vmware网络模式
* Bridged模式(桥接)
宿主机物理网卡(主机网卡)和虚拟网卡通过VMnet0虚拟交换机进行桥接,由宿主机的上网模式来决定桥接模式桥接的是无线网卡还是有线网卡
* Host-only模式(仅主机)
宿主机和虚拟机通过VMnet1连接,虚拟机只能访问宿主机
* NAT模式(网络地址转换)
虚拟机借助NA(网络地址转换)功能,让宿主机和虚拟机都连接上虚拟NAT服务器,通过宿主机器所在的网络来访问公网,VMnet8
2.SSH协议
SSH是一种网络安全协议,通过对网络传输数据的加密解密,防止信息泄露;SSH基于是一种采用密钥的非对称加密协议,即:只能用公钥加密,私钥解密
* 用户名密码认证
当客户端请求连接服务器端时,服务器端会先发送一个公钥给客户端,客户端使用公钥对登录的账号密码进行加密,再发送给服务端;服务端使用私钥对客户端发送数据进行解密,匹配用户信息,完成登录认证
* 基于openSSH密钥的方式认证
首先客户端先生成一对公钥私钥,并将公钥和客户端IP用户名保存在服务端的authorized_keys文件中,当客户端发送认证请求时,只需要发送IP和用户名;服务端接收到IP和用户名后,去authorized_keys文件中匹配对应的公钥,生成随机字符串,并使用公钥加密,再返回给客户端;客户端得到加密后的随机字符串,使用私钥解密,再发送给服务端来完成认证
openSSH是基于客户端和服务端软件完成,服务端是一个sshd的守护进程,来完成客户端的免密登录
3.文件上传下载
* SFTP
alt + p 打开SFTP窗口
pwd 查看当前linux目录
lpwd 查看当前windows目录
put d:/test.txt 将windows上的test.txt上传到linux当期目录
get /home/tom/a.txt 将linux上的a.txt下载到当前windows目录
* lrzsz
首次使用lrzsz,需要执行 yum -y install lrzsz 完成安装
rz 上传
sz下载
shell编程
1.shell的介绍:
shell既是一种命令语言,又是一种程序设计语言,Linux支持多种shell,可以/etc/shells查看所有的shell种类,通常使用Bash shell
2.基本格式
vim hello.sh
esc insert
#!/bin/bash
echo "hello shell world ..."
esc :wq
#!/bin/bash: 表示告诉linux需要用bash shell来执行脚本
echo: 表示将语句输出到控制台
启动bash shell脚本
./hello.sh
/bin/bash hello.sh
3.shell变量
3.1 变量的定义:
key=value 注意:变量名和等号,值和等号间都不能有空格
3.2 变量的使用
echo $[key] # 将变量key的值打印到控制台
readonly key # 变量key只读
unset key # 删除变量key
set # 查看当前环境的所有变量
4.shell传参
* 脚本内获取参数,#0代表脚本名称,#n代表第n个参数
5.shell运算符
5.1算数运算符
num=`expr 2 + 2` # `表示飘号,运算数之间必须空格隔开,如果是乘法,需要表示为\*
5.2关系运算符
-gt # 大于
-lt # 小于
5.3布尔运算符
!= # 不等于
-a # and
-o # or
6.流程控制
6.1 if else
if condition1
then
command1
elif condition2
then
command2
else
commandN
fi
6.2 for循环
for N in 1 2 3; do echo $N; done
6.3 function函数
function 方法名(){
}

zookeeper
1.zookeeper介绍:
zookeeper是一个分布式协调服务的开源框架,本质上是一个分布式小文件存储系统;zookeeper集群最大的特点是全局数据一致性,每个server所保存的数据都完全一样
2.zookeeper集群角色:
* Leader领导者:
事务请求(DDL)的唯一处理者和调度者
* Follower跟随者:
执行非事务请求(DQL),将事务请求转发给Leader处理,并参与投票选举
* Observer观察者:
执行非事务请求(DQL),将事务请求转发给Leader处理,但是不参与投票选举;只有在比较庞大的zookeeper集群环境下,才启用Observer角色
3.zookeeper集群Leader投票选举
* 全新集群选举:比较服务器ID(myid)
* 非全新集群选举:数据ID(version),服务器ID(myid),逻辑时钟(投票次数)
每次对zookeeper节点数据进行更新,version都+1,version越高,说明数据完整度越高