工作常用命令集

查看160.14 是否把发布脚本放到了/usr/local/bin下

〓〓〓〓〓〓〓〓〓〓git相关〓〓〓〓〓〓〓〓〓〓
【发布类】

find -name .gitignore|xargs rm -rf
find -name .git|xargs rm -rf
tar cvf yii2-mongodb.tar yii2-mongodb
tar -xvf yii2-mongodb.tar
rm -rf yii2-mongodb
git add --all
git commit -m "删除重新提交"
git push -u origin master


#find ./ -name ".gitignore" | awk '{print "rm -f " $1}' | sh #删除.gitignore

【版本回退相关】
git reflog # 显示当前分支的最近几次提交
git show [commit] # 显示某次提交的元数据和内容变化
git log -p 显示文件相关的每一次diff
git log 查看历史版本
git reset --hard 11eca8e
git push -f -u origin master


###撤销某次git提交
git reflog
git revert 提交号
git reflog
git push origin HEAD --force

【解压缩包相关】
gunzip *.gz #压缩成tar包
tar tvf file.tar #查看包中哪些文件
zcat jp-mmlbk-web-1_update_1250_1275_201903281506.tar.gz | grep --binary-files=text index.php #查看包中哪些文件,不建议用
unzip *.zip #解zip包
zip FileName.zip DirName #打包成zip包
tar -zxvf #解tar包
tar -cvf file.tar DirName #打包成tar包
tar -czvf /jpdata/backup/mml/jp-spt-web-1`date "+%Y%m%d%H%M"`.tar jp-spt-web-1/ #打包备份

 

〓〓〓〓〓〓〓〓〓〓K8S常用〓〓〓〓〓〓〓〓〓〓
k8s MA_ENV
kubectl get pod,svc -n ma
kubectl exec iperf-6c9fcff7fb-slbkl -it -n ma /bin/bash

 


k8s服务访问地址格式
<name>.<namespace>.svc.cluster.local:<port>
或者
<clusterIP>:<port>

首先要进入跳板机
ssh root@172.16.205.200
kubectl get pod,svc,ingress -n demo-mml -o wide
kubectl describe ingress.extensions/pro-sfj-web-1 -n pro-sfj
kubectl -n pro-syj-saas-1 get svc -o wide #查链接ip
kubectl describe ingress/pro-bns-api-1 -n pro-bns #LB方式查问题
kubectl get pods --all-namespaces -o wide |grep -v Running #没有运行的pod
kubectl describe pod pro-mml-jp-ccm-core-1-3491695315-zfg52 -n pro-mml #例子,查pod是否正常
kubectl describe pod pro-shengyj-web-1-786bb49c5-8gpdt -n pro-website
kubectl get pod -n pro-mml -o wide | sed s/[0-9]h[[:space:]]/100/g | sed s/[0-9]d[[:space:]]/2400/g | sort -nrk 5 #按顺序查看容器
kubectl get po -n demo-mml --sort-by=.status.startTime -o wide #按顺序查看容器
kubectl get pod -n pro-common -o wide

kubectl -n demo-mml exec -it demo-mml-tigase-1-5b5c9f75d8-lchz6 bash
kubectl -n pro-jpdt exec -it pro-jpdt-jp-jpdt-core-1-3173860500-99w15 bash #进入jpdt容器

kubectl exec -ti pro-mml-jp-mml-saas-web-1-2393758854-d3w4f -n pro-syj-saas-1 /bin/bash

kubectl exec -ti demo-jpdt-jp-jpdt-core-1-2909271251-019r5 -n demo-jpdt-jp-jpdt /bin/bash
kubectl exec -ti pro-mml-jp-mml-saas-web-1-2393758854-d3w4f -n pro-mml /bin/bash #redis进入容器
cd /var/www/html/shoufuj2/ #查看试运行环境文件目录
ps -ef |grep tomcat #查看Java进程
/app/tomcat/bin/version.sh #查看Java版本
##进入容器例子:
kubectl exec -ti pod/pro-jiaparts-web-1-794db79674-55pwn -n pro-website /bin/bash
kubectl exec -ti demo-icp-edi-syj-shop-1-1586822164-tb92j -n demo-icp /bin/bash

 

kubectl exec -ti pro-shengyj-web-1-6d5bf94654-hgwdf -n pro-website /bin/bash

 

kubectl exec -ti /bin/bash -n pro-website pro-shengyj-web-1-6d5bf94654-hgwdf


kubectl describe -n pro-website pod/pro-jiaparts-web-1-849b4d85bb-96h9z
kubectl logs -n pro-website pod/pro-jiaparts-web-1-849b4d85bb-96h9z

kubectl get pod,svc -n ma #查第三方服务
kubectl exec iperf-6c9fcff7fb-slbkl -n ma -it /bin/bash #查第三方服务
kubectl get pod,svc -n pro-website
telnet pro-mml-jp-jpbill-core-1.svc.cluster.local 6293

k8s有一个弊端,重启的时候回导致zookeeper起不来

 

 

〓〓〓〓〓〓〓〓〓〓官网更新〓〓〓〓〓〓〓〓〓〓
172.16.35.1 #更新官网用这个机器
172.16.201.11; 172.16.201.12 #这两台机器都做了同步

ssh root@172.16.35.1
rz #上传官网更新包 unzip #解压官网更新包
cp -r frontend /jpdata/www/shengyj/ #当前目录下复制到对应目录覆盖,frontend/ 是解压后的目录
cp -r ETL_update_20181211_02.zip /jpdata/www/shengyj/frontend/web/download/ETL/ #这是ETL更新包

###可以先连接部署机器160.14到下载包的目录,再scp文件到发布机 172.16.35.1
scp -r ETL* root@172.16.35.1:/jpdata/www/shengyj/frontend/web/download/ETL/
scp -r /jpdata/demo/demounipei/logo/carlogo/169.png root@172.16.35.1:/jpdata/www/
scp -r /root/mml5600* root@172.16.35.1:/jpdata/www/shengyj/frontend/web/download/

chown -R apache:apache * #每次放到网站根目录下都要设置权限
chmod -R 755 mml53* #文件也要设置权限
http://shengyj.com/download/ETL/ETL_update_20190308_01.zip #测试

 


〓〓〓〓〓〓〓〓〓〓公共环境〓〓〓〓〓〓〓〓〓〓
【生产redis】
redis-cli -h pro-redis.pro-common.svc.cluster.local #进入容器查redis
ssh root@172.16.120.24
redis-cli
info 可以看到所有库的key数量
select 0 选择库
dbsize 则是当前库key的数量
keys *
del mq:1557676800 #删除键
exists mq:1557676800 #判断该键值是否存在,存在返回 1,否则返回0
get
keys jiaparts:cc:zhIsPublish*
LPOP "jiaparts:cc:zhIsPublish:166104:141:"
dump "jiaparts:cc:zhIsPublish:166104:141:"
dump "jiaparts:cc:zhIsPublish:191643:156:"
dump "jiaparts:cc:zhIsPublish:191644:156:"

【试运行redis】
ssh root@172.16.201.82
每个产品使用的redis不同
ssh root@172.16.205.200
kubectl get pods --all-namespaces -o wide |grep redis
kubectl -n demo-bns exec -it demo-bns-redis-2886266786-21z6h bash #进入容器
redis-cli
select 0
get mq:1557676800 #查询键值对,1为存在,0为不在
del mq:1557676800 #删除键值
get mq:1557676800 #再次查询是否存在

 

 

【生产mongodb】
mongo pro-mongo.pro-common.svc.cluster.local #进入容器查mongo
ssh root@172.16.120.34
mongo #进入mongo系统
show dbs; #查看数据库
use ccm; #选择数据库
db.version(); #当前db版本
db #查看当前所在库
db.stats(); #当前数据库状态
show tables; #查看表
db.ccGoodsBean.find({"brandName":"统一"}); #查看键值
db.ccGoodsBean.find().count(); #查询 统计记录条数
db.ccGoodsBean.getIndexes(); #查看索引
db.outergoodsLoadInfo.find().count();

 

【mysql】
wangzq@172.16.160.1
生意嘉的jpdn库连接方式是: mysql -uwriteuser -pjiaparts@rw -h127.0.0.1 -P$prod_jpd
syj-saas数据库的连接方式是: mysql -uroot -pjiaparts -h172.16.200.7
mysql -uwriteuser -pjiaparts@rw -h 127.0.0.1 -P$prod_css_db #连接生产库
mysql -uwriteuser -pjiaparts@rw -h 127.0.0.1 -P$demo_db #连接试运行库
mysql -uroot -p #这个可以不用
mysql -uapp -pjiaparts -h 192.168.180.11
show databases; #查看库
use oc; #选择库
show tables; #查看表
describe jpbill_users; #查看表(jpbill_users)的结构
select count(1) from mml.organ where Status = 0 and IsDelete = 0;
/bin/systemctl start mysqld.service #启动mysql
#开机启动设置
systemctl enable mysqld
systemctl daemon-reload
#查看密码
grep 'temporary password' /var/log/mysqld.log.
mysql -uroot -p #登陆
select user(); #当前登陆用户
select database();#查看当前数据库


添加字段vim /etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
validate_password=off #停止密码策略
systemctl restart mysqld


GRANT USAGE ON *.* TO 'user01'@'localhost' IDENTIFIED BY 'zabbix' WITH GRANT OPTION; #新建账户zabbix,密码zabbix
alter user 'root'@'localhost' identified by 'Wangzq'; #更改密码
grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'zabbix' with grant option; #允许账户zabbix能从本机连接到数据库zabbix

flush privileges; #刷新系统授权表
cd /usr/lib64/mysql/
ln -s libmysqlclient_r.so.18.1.0 libmysqlclient_r.so #添加软连接
ln -s libmysqlclient.so.18.1.0 libmysqlclient.so #添加软连接

 

【zabbix】
cd /usr/local/src #进入软件包下载目录
groupadd zabbix #创建用户组zabbix
useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-
mysql=/usr/bin/mysql_config
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #添加系统软连接
cp /usr/local/zabbix-3.2.6/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server #服务端 添加开机启动脚本
cp /usr/local/zabbix-3.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd #客户端 添加开机启动脚本
chmod +x /etc/rc.d/init.d/zabbix_server #服务端 #添加脚本执行权限
chmod +x /etc/rc.d/init.d/zabbix_agentd #客户端 #添加脚本执行权限
chkconfig zabbix_server on #服务端 #添加开机启动
chkconfig zabbix_agentd on #客户端 #添加开机启动
配置web站点
cd /usr/local/zabbix-3.2.6/
cp -r /usr/local/zabbix-3.2.6/frontends/php /usr/local/nginx/html/zabbix
chown zabbix.zabbix -R /usr/local/nginx/html/zabbix
cat /tmp/zabbix_server.log #查看zabbix日志
service zabbix_server restart #启动zabbix服务端
service zabbix_agentd restart #启动zabbix服务端

CPU空闲-低于百分之20时触发严重

【nginx】
/etc/nginx/conf.d
cd /usr/sbin
./nginx -t #进入nginx安装目录sbin下,输入命令./nginx -t校验配置文件
cd /usr/sbin
./nginx -s reload #sbin目录下执行重启
./nginx -v #查看版本
/nginx/sbin/nginx -c /etc/nginx/conf.d/shengyj.conf #启动代码格式 nginx安装目录地址 -c nginx配置文件地址
systemctl restart|start|stop nginx.service #通过编译安装的,服务在挂载后的执行方式
systemctl reload nginx.service #重启
GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY 'Wangzhiqiao1992!' WITH GRANT OPTION; #新建账户zabbix,密码Wangzhiqiao1992!
FLUSH PRIVILEGES; #再次刷新系统授权表
systemctl daemon-reload #重载系统配置

【PHP】
rpm -qa |grep php
php -v
systemctl start|status php-fpm.service
systemctl enable|disable php-fpm
whereis php
/usr/local/php/sbin/php-fpm 启动php-fpm
ps aux|grep php-fpm #查看php-fpm的master进程号
kill -USR2 42891 #重启
#php-fpm 关闭:
kill -INT 'cat /usr/local/php/var/run/php-fpm.pid'
#php-fpm 重启:
kill -USR2 'cat /usr/local/php/var/run/php-fpm.pid'
netstat -lntup | grep 9000 #查看端口是否冲突
killall php-fpm
#没有killall这个命令
yum -y install psmisc
/usr/local/php/sbin/php-fpm -t
rm -rf /usr/local/php/var/run/php-fpm.pid
/usr/local/php/sbin/php-fpm -y /usr/local/php/etc/php-fpm.conf -c /usr/local/php/etc/php.ini


[标签]
<html>
<body bgcolor="gray"><!--灰色背景 -->
<img src="/i/eg_w3school.gif" width="300" height="120" /> #这是一个图片
<nav>#制定导航链接是否显示
<a href="/html/">HTML</a> |
<a href="http://192.168.1.12:81"class="test" >这是一个链接 </a>
</nav>
<ins>下划线</ins>
<pre>
预格式文本。
它保留了 空格
和换行。
</pre>
<h1 align="center">对标题进行了居中排列</h1>
<hr />这是一个水平线
<p>段落</p>
<BR>换行</br>
</body>
</html>

【elasticsearch搜索引擎】
先进入跳板机
es IP地址
默认密码jiaparts
例:curl 'localhost:9200/_cat/indices?v'

武汉本地
172.23.6.230:9300 root/unipei
sh /jpdata/server/elasticsearch-6.2.3/bin/elasticsearch -d

 

【zookeeper】
发布时,重启zookeeper就一定要按顺序重启:
java
api
php
停止时是从下往上
/jpdata/server/zookeeper/bin/zkServer.sh start #启动

 

【SVN】

ps -ef |grep svn
kill -9 pid
svnserve -d -r /opt/svn/repositories/

 

【uwsgi】
ps -ef|grep uwsgi
pkill -f uwsgi -9 #杀死进程
uwsgi /usr/local/share/Django/test_api.ini #重启


【mq】
sh bin/mqshutdown namesrv #关闭
tail logs/rocketmqlogs/namesrv.log #日志
cd /root/logs/rocketmqlogs/
nohup sh mqnamesrv &
nohup sh /usr/local/RocketMQ/bin/mqbroker -n localhost:9876 & #启动mq
# nohup java -jar do_iptable.jar >/dev/null 2>&1 & #启动jar包

ps aux | grep java


执行nohup java -jar do_iptable.jar & 运行jar会提示:nohup: 忽略输入并把输出追加到"nohup.out"
执行nohup java -jar do_iptable.jar >/dev/null & 运行jar会提示:nohup: 忽略输入重定向错误到标准输出端
修改运行方式为nohup java -jar do_iptable.jar >/dev/null 2>&1 &即可。


〓〓〓〓〓〓〓〓〓〓日志类〓〓〓〓〓〓〓〓〓〓
ssh root@172.16.160.3
进入root目录
fab topic |grep 组件名称 #所有频道中筛选
fab logsize:组件名称
fab logfrom:production-mml-jp-spt-web-1,1000 #从这个组件的第1000条日志开始查看

###启动/监控Tomcat日志
ps -ef | grep java #查看Tomcat进程有没有启动
/jpdata/server/tomcat/bin/catalina.sh start
cd /jpdata/server/tomcat/bin/ #进入Tomcat目录
sh startup.sh #启动tomcat
tail -800f /jpdata/server/tomcat/logs/catalina.out #查看最后800条日志

 

〓〓〓〓〓〓〓〓〓〓linux常用〓〓〓〓〓〓〓〓〓〓
base64 -w 0 xx.crt #base64 转换key
tree -a #展开树目录
df -hT #查看硬盘分区
ifconfig #查看网卡
ps -ef | grep java |grep mml #查看mml组java进程
more /etc/services #翻页查看服务
ls -lht #当前各个目录文件大小
du -sh #查看当前所有文件总大小
tar tvf shengyj.tar.gz |wc -l #包文件数量
free -m netstat -lntp kill -9 pid #结合端口查看pid杀死进程
Telnet #ping80
top #实时查看进程动态
find / -name filename #跟目录开始查找某个文件
w #查看当前访问机器的本地机器信息
du -h #查看文件大小
ps aux | less #正在运行的进程
source /etc/profile #运行该句指令使修改生效
yum list installed | grep php #已安装的php文件
yum remove installedpackage #卸载已安装包
yum search all php-fpm #该安装包的所有版本
groupadd -r nginx #建立系统组
useradd -r -g nginx nginx #建立系统账号,指定用户所属的群组。
systemctl daemon-reload #重新加载
hostnamectl set-hostname xxx #永久性的修改主机名称,重启后能保持修改后的。

 

【防火墙】
systemctl start|stop|status firewalld.service #开启服务,停止,状态
systemctl enable|disable firewalld.service #开机启动|关闭
firewall-cmd --state #查看运行状态
firewall-cmd --get-active-zones #查看活动区域
firewall-cmd --get-service #查看所有支持的服务
firewall-cmd --reload #重新加载防火墙
firewall-cmd --permanent --zone=public --list-ports|services #查看开启的端口和服务
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp #开启某个端口
firewall-cmd --permanent --zone=public --add-service=https #启动某个服务
#设置某个ip 访问某个服务,如:ip 192.168.0.4/24 访问 http
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"
#删除上面设置的规则
firewall-cmd --permanent --zone=public --remove-rich-rule="rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"
iptables -L -n | grep 21 #检查设定是否生效
firewall-cmd --query-service ftp|ssh|http #查看各种服务状态
firewall-cmd --add-port=3128/tcp #自行加入要开放的 Port
netstat -untlap |grep :10051 #查看10051端口是否开启


http://gitlab.jiaparts.com/load-balancing/production-lb/pro-lb-common/blob/master/conf.d/pro-lb-squid-80.conf
解析域名--->NGINX修改配置添加域名--->LB调度--->重启
生意嘉的2级域名放到/jpdata/www/shengyj/


进入容器清理Runtime缓存,实时生效不用重启

 


〓〓〓〓〓〓〓〓〓〓centos安装环境〓〓〓〓〓〓〓〓〓〓
【Nginx基本环境】
yum install gcc-c++ #编译安装必不可少的
yum install -y pcre pcre-devel #nginx的http模块使用pcre来解析正则表达式
yum install -y zlib zlib-devel #nginx 使用 zlib 对 http包的内容进行gzip
cd nginx-1.10.1
./configure #自定义默认配置
编译安装
make
make install
启动、停止nginx
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s reload
默认路径:
/usr/local/nginx/html/index.html #默认网站根目录

 

 

 

Nginx怎么关联php:
location ~ \.php$ {
try_files $uri =404;
root /var/www/html;
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;
include fastcgi_params;
}
其中关联php,fastcgi_param有三种写法:
location ~ \.php$ {

#root /usr/share/nginx/html;

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

#fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name;

fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;

#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;

include fastcgi_params;

}

 

 

 

 

 


/usr/local/nginx/sbin/nginx -s reload

Nginx没有pid文件
报错:
nginx: [error] invalid PID number "" in "/usr/local/nginx/nginx.pid"

解决方法:
[root@localhost nginx]/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

 

journalctl -f -u nginx.service #查看nginx日志及状态

 

 

停电通知: 服务器需要按步骤关机
先关K8S, 再关数据部view虚拟化服务器, 其它随意
每台VM关机后进入维护模式,再关机PM

K8S集群
先关node节点
172.25.0.103;
172.25.0.104;
172.25.0.117;
118;119;120
再关master
172.25.0.50 (手动);
172.25.0.51;
再关仓库
192.168.165.249
最后关ETC存储
172.25.0.20;
172.25.0.21;
172.25.0.22
开机服务器,反过来


210 桌面有一个程序需要手动
数据部按顺序:
240是物理机,开机每过10分钟启动一次
241;
192.168.2.242;
192.168.2.243;


Tower报错:
rsync error: error in socket IO (code 10) at clientserver.c(125) [Receiver=3.1.2]
172.23.2.1(同步服务器)
查看rsync服务(启动失败)
事件查看器: Rsync: PID 8656: `Rsync' service stopped, exit status: 11
打开Cygwin程序
cd /var/run
rm -rf rsy*
再次启动rsync服务

posted @ 2019-05-20 10:04  快闪开,我要起飞了  阅读(134)  评论(0编辑  收藏  举报