核心路由转发
[root@docker-33 ~]# vim /etc/sysctl.conf
[root@docker-33 ~]# sysctl -p
net.ipv4.ip_forward = 1
rc:run control
ln -s 文件名 软连接名
start slave:可以重启两个线程,mysql主从复制
单点故障
CAP定理(CAP theorem)
在计算机科学中, CAP定理(CAP theorem), 又被称作 布鲁尔定理(Brewer's theorem),
它指出对于一个分布式计算系统来说,不可能同时满足以下三点:
• 一致性(Consistency) (所有节点在同一时间具有相同的数据)
• 可用性(Availability) (保证每个请求不管成功或者失败都有响应)
• 分隔容忍(Partition tolerance) (系统中任意信息的丢失或失败不会影响系统的继续运作)
tailf 交互查看
curl 是常用的命令行工具,用来请求 Web 服务器。显示html文本。
curl -s http://192..... web监听 s:静默,不输出什么东西。。。
transfer:转移
referer:引用页
accept:接收
cookie:网络饼干(网络或互联网使用者发给中央服务器信息的计算机文件);
socket:套接字。套接字文件一般用于本地连接
self-discipline:自律,自我训练,自我修养
absolutely:绝对地,当然
comparative:比较的,相对的
distracted:注意力分散的
temptation:诱惑
indispensable:不可或缺的
greed:贪婪
estimable:值得尊敬的
worldview and sense of value:世界观和价值观
authority:授权,权威
contains:包含
overwrite:覆盖
pattern:图案,模式
graceful:优雅的启动。会先查看是否启动
IP地址+端口号 :网络套接字
127:本机回环地址,内部通信
lvresize : -l 以PE格式 -L:以M为单位
run-parts 目录路径,将目录下的可执行程序都执行一遍
ntsysv
/etc/systemd/查看用户级别软连接,再去依赖看软连接
命令直接查看systemctl list-unit-file
内存:易失性,速度介于CPU和磁盘之间,CPU最快
磁盘:持久性保存
https://www.gnu.org/
https://www.kernel.org/
nohup 全称:no hang up
黑白色:普通文件,配置文档,文本文档。。。。
浅蓝色:软链接,(快捷方式)
绿色:可执行文件(脚本,程序等)
黄色:设备文件
红色:压缩包,图片,rpm软件。。。。
玫瑰红:套接字文件
rpm -qa | wc -l,统计安装了多少个rpm软件包
挂载即把一个分区或磁盘放在一个目录里。
Windows其实也需要挂载,只不过它是把分区或磁盘挂载到A:B:C:……Z:这样开头的特定文件夹里。
Linux用目录名挂载分区或目录的好处是:一、便于操作,你可以把分区或磁盘挂载到任何你想要的目录或文件夹里。二、顾名思义,由于挂载的文件夹或目录可以自己指定,所以就可以挂载到自己创建的或相关内容的目录或文件夹里。三、挂载数量没有限制,windows的分区挂载到Z:就不能继续挂载了,或者说Windows挂载的分区数不能超过26个;而Linux则没有这个限制,特别是网络磁盘映射,你可以挂载任意多的共享文件夹到你的本地文件夹里。
DNS非必需?
软连接bin,sbin,为了兼容REHL6
bash的内置命令:cd等
root不受权限限制
recursive 递归
directory 目录
通过ls –l, file, stat几个命令来查看文件的类型等相关信息。
字符设备:字符流有序的访问(例如:键盘)
块设备:随机(无序)
这两种类型的设备的根本区别在于它们是否可以被随机访问
文件名既不是属性,也不是数据,是目录下的ID的别名,给人看的,目录的数据:文件名和inode
通过 stat 命令,查看文件的详细属性 :stat + 文件名
文件系统本质是一种规则,决定数据以何种方式存放在磁盘中。
(写入速度,读取速度,空间利用率)
Linux系统能支持多种目前流行的文件系统,如EXT2、EXT3、EXT4、FAT、FAT32、VFAT和ISO9660,XFS。
文件系统最小单位扇区(512byte)
格式化:创建文件系统的过程
bitmap:位图表
stat:看inode内的详细内容
cp :先读取文件,再在新路径创建,再复制。
mv :同分区不要读取文件内容,修改目录的数据块内容,跨分区剪切需要读取文件。因为不同分区的数据块和inode位图表不同,需要重新分配。
> :重定向输出,覆盖式
>>:追加式,重定向输出
<:重定向输入,覆盖式
<<:重定向输入,追加式
加1表示:标准输出
加2表示:错误输出,例如lssss 2> ***.mp4
软连接指向路径
stat查看以下。
ls -l显示的时间是Mtime.
Accesstime:访问时间(惰性更新)
Modifytime:数据块被人改动的时间(最后一次)
Changetime:属性被人改动的时间(最后一次)(属性:大小,权限,类型,所有者/组,时间,指针)
1Byte = 8bit (1B=8b)
fdisk -l:查看分区表
alias:别名,(执行命令,先找别名记录,没有再找PATH。)
root/家目录下的.bashrc文件,可以保存个性化设置,例如:永久生效的alias。(终端启动时会读取.bashrc,所以要重新打开终端)
prompt:提示
常用man的类型
1:普通指令帮助
5:文件配置帮助
8:超级命令帮助
hierarchy:层级,等级制度
{}引用结果,将结果放入{}中内。
yum remove :删除已安装的
w:查看CPU负载
df -hT:查看系统磁盘使用情况
free:查看内存信息
du -h:统计目录实际大小,-h:human
ps aux:查看系统所有进程
grep , awk , sed .
awk -F "" :分隔符为空,每一个字符为一列,默认为空格分隔
tar :解压时按照压缩时选择的路径解压。(打包时使用绝对路径:会按照绝对路径生成解压目录。)
192.168..
``:命令执行符,优先级最高。=$()
passwd:保存用户的信息(真人和系统)
shadow:保存用户的密码
last:历史登录成功的用户信息,/var/log/wtmp
lastb:历史登录失败的用户信息,/var/log/btmp
source(等同于【. 】:点+空格):没有执行权限的文件,用source执行,直接加载到当前进程,影响当前进程。
(独立进程运行方式)一般命令:在当前进程中产生一个子进程,加载的数据在子进程上执行,不影响父进程。
默认变量不能继承,export使变量能够继承,一直向下继承
env:查看环境变量,php
history查看内存中的,还未写入磁盘中,即不在~/.bash_history文件中,exit后才能写入磁盘
read:可读取用户的输入,交互式 。 例如:read -p "提示语句" A。A为变量名。read能读取用户的输入并赋值给变量A。
$?:保存上一个指令的返回值,0表示执行成功,非0失败
/etc/rc.d:0:关机,1:单用户模式(安全模式),2:多用户模式(无网络),3:完整多用户(常用),4:预留(未定义),5:图形界面,6:重启 ## init 0
/etc/rc.d/rc.local:开机自启动,登录程序之前
ls -a -l -d : 所有文件(隐藏文件),详细信息显示,列出目录
$0:ls, $1:-a, $2:-l, $3:-d
$*:不包括第0个
$#:参数个数,不包括第0个
ssh-copy-id + ip地址:把公钥传给IP。
kill :向进程发送指令
uid:从最后一个加起,1001...中间少了一些..1090,后面添加的用户从1090开始计数
useradd u1 -g G1 -G G2:-G:附加组 -g:主要组
所属组之间互相切换不要密码,不属于的切换需要密码
${A}:A的值
${#A}:A的位数
1.5:文件系统驱动
rc.sysinit------->rc3.d的用户程序------->rc.local
(S,K开头的软连接)
MBR:master boot record ##主引导记录
POST:power on self test
先basic,再want
require :强依赖,必须要其先启动才能启动
Want:弱依赖,
local-fs.target :本地文件系统
conflicts:冲突
管理最上层的弱依赖,添加自己的东西 muti.....
文件在usr(系统)中
开机运行时,读取etc(用户)下的软连接,也能读取usr下的软连接
Centos7进入紧急模式:进入编辑模式 ,在 linux16 vmlinuz ... ... 行后加入 rd.break console=tty0 (紧急模式)
uname -a 查看内核版本号
cat /etc/redhat-release 查看系统发行版
TCP三次握手
Unit文件中$MAINPID 是此服务的主进程号
OOM,全称“Out Of Memory”,翻译成中文就是“内存用完了”
swap是一种文件系统,
buffer:缓冲,写入缓冲即解放进程(内存)?加速写
cache:缓存,读取数据放入缓存,加速读
内存不够时,部分可回收,
批量创建文件:
touch log{1..3}:创建3个文件,log和{1..3}中的数字分别组合
{1..3}{1..3}排列组合
grep "RE"
awk $1 ~ /RE/
if [[ =~ RE ]]
vim 搜索/替换 RE
sed s/RE//
rename (不支持 ) prename(支持) s/RE/ /
httpd.conf nginx.conf RE
SQL regexp like "RE"
cmd | xargs:xargs 的标准输入中出现的“换行符、空格、制表符”都将被空格取代。
xargs:将前一个命令的标准输出变成后一个命令的参数。
echo ,ls 不接受标准输入 ,即管道
用法:echo "/etc" | xargs ls
openstack:
glance镜像服务迁移
1,停掉控制节点的glance服务
停掉glance-api glance-registry
2,在先节点上安装数据库,python2-PyMySQL
启动数据库并且安全初始化
3,恢复glance数据库数据,mysqldump -B glance > glance.sql
把生成的sql文件放到新的节点
在新的计算节点:
mysql导入:mysql < "glance.sql“
创建glance用户以及密码
4,安装配置glance服务:
yum install openstack-glance -y
配置glance
从控制节点拉取旧配置然后更改:
拉取glance两个文件,glance-api,glance-registry配置,注意权限
更改链接数据库的信息:
更改数据库controller为本机地址
启动服务
5,迁移glance镜像
scp -r /var/lib/glance/images/
注意镜像权限
6,更改keystone的注册信息(更改endpoint的信息) 注意备份(在控制节点操作)
mysqldump keystone endpoint > endpoint.sql
cp endpoint.sql /data/bak
vim endpoint.sql
%s#http://controller:9292#http://ip:9292#gc(c参数是有交互的检查)
检测:
openstack endpoint list | grep image
openstack image list
7,此时启动实例报错,更改nova配置(包括控制节点,计算节点)
sed -i 's#http://controller:9292#http://192.168.75.17:9292#g' /etc/nova/nova.conf (可用ansilbe批量更改)
重启控制节点:
systemctl restart openstack-nova-api (控制节点)
systemctl restart openstack-nova-compute (计算节点)