git fetch origin 远程分支名x:本地分支名x 采用此种方法建立的本地分支不会和远程分支建立映射关系
git fetch -a 查看远程新分支
git checkout 分支名
git checkout -b 本地分支名x origin/远程分支名x 采用此种方法建立的本地分支会和远程分支建立映射关系。
git checkout -b 1.3.dev origin/1.3.dev
git push --set-upstream origin branch_name来在远程创建一个与本地branch_name同名的分支并跟踪
git branch --set-upstream-to=origin/dev dev
git checkout -b ac_branch origin/ac_branch   这才是拉取远程分支ac_branch到本地
git clone http://gitlab.test.com/vts/vts_engine.git
git push origin dev上传当前分支
删除远程分支:git push origin --delete dev_20181018
删除本地分支: git branch -d dev_20181018
git rebase master
查看一个文件的所有改动历史
git log --pretty=oneline filename


有问题:
git checkout dev
git pull origin dev
git checkout dev_imagesearch
git rebase dev
vi components/builder
git add components/builder
git rebase --continue
 git branch  
git push origin dev_imagesearch -f
git rebase --continue
rm -rf .git/rebase-apply/
git rebase dev
git branch

恢复工作树文件
git restore --source=HEAD :/
使用指定分支的代码(此处develop)强制覆盖代码
git reset --hard origin/develop
git reset --hard bff8250cded7fa25143626df9322de298c52a3ff 恢复到指定版本
git push -f origin master 强制提交
  
版本查看
docker --version  docker-compose --version
启动 Docker
sudo systemctl start docker
容器运行查看
sudo docker ps 只查看当前运行的容器
sudo docker ps -a:查看所有容器,包括停止的
显示所有images
docker images
sudo docker images | grep vts-dev
镜像下载
docker pull  reg.docker.test.inc.com/gml/vts_builder:1.2.rc1
镜像启动:
sudo docker run --net=host -id --name my_vts_engine -d dapeng_vts_engine:latest
镜像debug启动:
sudo docker run --net=host -id --name my_vts_engine -d --entrypoint tail dapeng_vts_engine:latest
进入容器
sudo docker exec -it localbuilder_1.2.rc1 /bin/bash
启动容器  
--hostname :指定hostname;
--net : 指定网络模式
--ip:指定IP
--name : 指定命名
sudo docker run --net=host -id --name localbuilder_1.2.rc1 --entrypoint="/bin/bash" reg.docker.alibaba-inc.com/gml/vts_builder:1.2.rc1
连接redis容器
sudo docker exec -ti my_vts_redis redis-cli
启动/停止某个(多个)容器 -t 指定时间
docker start/stop(-t) id/name[name...] 
强制中断 -s指定SIGINT信号类型,默认“kill”
docker kill (-s) name[name...] 
重启 -t 指定时间
docker restart (-t) name[name...]
报错的日志
docker logs 容器的id
将本地文件上传到容器的指定目录中
docker cp 本地文件路径 ID全称:容器路径
从容器里面拷文件到宿主机
docker cp 容器名:要拷贝的文件在容器里面的路径       要拷贝到宿主机的相应路径 
退出容器:exit
删除容器 docker rm 
删除镜像 docker rmi hello-world
sudo docker rmi dapeng_vts_base/vts-dev_base:3.0
查看环境变量
env 
Docker-Compose常用命令:
版本查看 docker-compose --version
登陆:sudo docker login --username=vts_auto_test --password=r123456 reg.docker.test-inc.com
打标签:sudo docker tag 0b7739b459ad reg.docker.test-inc.com/vts-test/vts-dev_base:1.0
推送:sudo docker push reg.docker.test-inc.com/vts-test/vts-dev_base:1.0


k8s~kubectl 常用命令:
kubectl --version
查看当前在哪个k8s环境
kubectl config get-contexts
查询k8s集群 masterUrl命令:
kubectl cluster-info
如果不在张北6,使用
kubectl config use-context bach@zb6可以切换

查看所有 pod 列表, -n 后跟 namespace, 查看指定的命名空间
kubectl get pod -n vts |grep vts
查看日志
kubectl logs -f dapengtest-fingerprint-202012141701-3461947505 -c main -n vts
查看 Pod 的详细信息,
kubectl describe pod <pod-name>
$kubectl describe pod fingerprint-everythingsearch-86f5fd6f6c-searcher-6c77f95b9b-0-0 -n vts
进入pod容器
#适用于当前pod只有一个容器
kubectl exec -it podA -n vts bash
打镜像这个drone的container进入方法:后面的/bin/bash 替换为sh
#pod里有多个容器
--container or -c 参数
例如:假如这里有个Pod名为my-pod,这个Pod有两个容器,分别名为main-app 和 helper-app,下面的命令将打开到main-app的shell的容器里。
$kubectl exec -it my-pod -c container bash -n its
kubectl exec -it drone-n6m83evz80xbyaygqxbq -c drone-a36s6a01lcja9pkrgby9 bash -n vts
查看服务信息
kubectl get service -n vts|grep wanwu
查看所有pods的ip
kubectl get pods -o wide
kubectl get pod -n vts -o wide| grep pod
退出:exit
查看api-versions:kubectl api-versions | grep -i apps
查看yaml信息:kubectl get deployment drone-server -n vts -o yaml
删除:kubectl delete pod podA podB -n vts
查看CronJob:kubectl get jobs -n vts
删除Job:kubectl delete jobs podA podB -n vts
K8s拷贝文件到pod内:
kubectl -n 分区名 cp ./project_extend.sql pod名字:/
kubectl -n vts cp vcs dapengvts-vtssearch-0:/home/admin/vts/searcher/data/
kubectl -n 分区名 cp /tmp/foo <some-pod>:/tmp/bar -c <specific-container>
从pod内拷贝文件到宿主机上:
kubectl -n vts cp podA:pod路径 宿机路径
kubectl cp -n vts pod:/drone/src/vts_continuous_delivery/cicd/ /home/wb-ldp766934/tmp/vts/ -c container
kubectl -n vts cp /home/wb-ldp766934/tmp/vcs dapengvts-vtssearch-0:/home/admin/vts/searcher/data/
重启原因
kubectl logs --previous pod -n vts
安装pod:
kubectl apply -f drone-runner.yml -n vts
外部执行容器命令
kubectl exec -it podA -n vts -- python verify_index_memory.py
外部执行容器创建目录
kubectl exec -it podB -c spark-master -n spark  -- mkdir -p /usr/local/spark 
批量删除Searcher:
kubectl get SearcherMatrix -n vts |grep cicd | awk -F ' ' '{sum=sum" "$1} END {print sum}'|xargs kubectl delete SearcherMatrix -n vts
批量删除flow:
kubectl get pod -n vts|grep cicd | awk -F ' ' '{sum=sum" "$1} END {print sum}' | xargs kubectl delete pod -n vts
# 仅输出pod nginx中最近的20条日志 :kubectl logs --tail=20 nginx
# 输出pod nginx中最近一小时内产生的所有日志: kubectl logs --since=1h nginx

helm命令:
#查看helm版本
helm version
helm repo list    #列出所有源,当前还没有添加源
# 添加一个国内可以访问的阿里源,不过好像最近不更新了
helm repo add ali https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts  
如果能连外网,可以加google,f8
helm repo add google https://kubernetes-charts.storage.googleapis.com 
helm repo add fabric8 https://fabric8.io/helm
# 更新源
helm repo updaten
# 查看chart,即已经通过helm部署到 k8s 平台的应用
helm list    或者  helm ls
helm -n vts list | grep dapengimage
# 若要查看或搜索存储库中的 Helm charts,键入以下任一命令
helm search 
helm search 存储库名称 #如 stable 或 incubator
helm search chart名称 #如 wordpress 或 spark
测试:
helm install -n vts cicdvideosearch ./ -f values-zb6-cicd.yaml
helm uninstall cicdvideosearch -n vts


# 查看charm详情
helm inspect ali/wordpress
Linux命令
启动:
sh run.sh #启动
jobs #查看任务
bg 1 #转入后台
后台启动
nohup sh run.sh &
查看当前所有tcp端口:
netstat -apnt
ps xuf
ps aux 显示索引保护其使用者的行程 
lsof -i:端口号
netstat -apnt | grep 15001
netstat -ntlp //查看当前所有tcp端口
swap禁用:swapoff -a
swap启用:wapon -a
解压:
tar -xvf test.tar
1.按照文件名查找:
find /home/wb-ldp766934/vts_engine/ -name build_index.py
linux复制指定目录下的全部文件到另一个目录中
cp -r dir1 dir2
copy隐藏文件夹
cp -a
Linux查找文件夹下包含某字符的所有文件
grep -r 字符串 ./
grep foo filename  显示file文件里匹配foo字串
grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行
grep -B 5 foo file 显示foo及前5行
grep -A 5 foo file 显示foo及后5行
linux 统计文件中关键字出现的次数: grep -o "*" aa|wc -l
在linux下使用cat命令时如何退出
在键盘上按下Ctrl+D (或者键入Control-D)。
Linux:在文件最后一列添加递增数(awk,cat函数)
cat file1.txt | awk '{print $1,$2 " " NR}'  > ddy
第二列后面加个where,并以tab键分割
cat a.txt  |awk '$2=$2 "\twhere"'
增加一列 自增主键
cat a.txt  |awk '$8=$8 " " NR'
cat file_name | awk 'NR==1 || NR==2 || NR==10'  显式第1、2、10行
cat filename | awk '{print $3} == 2'
Linux 给文件夹或者文件增加权限
chmod -R 777 文件夹
参数-R是递归的意思
777表示开放所有权限
chmod 777 test.sh
ctrl+左右键:在单词之间跳转
ctrl+a:跳到本行的行首
ctrl+e:跳到页尾
Ctrl+u:删除当前光标前面的文字 (还有剪切功能)
ctrl+k:删除当前光标后面的文字(还有剪切功能)
Ctrl+L:进行清屏操作
Ctrl+y:粘贴Ctrl+u或ctrl+k剪切的内容
Ctrl+w:删除光标前面的单词的字符
Alt – d :由光标位置开始,往右删除单词。往行尾删
1. 查看目前所有文件系统的可用空间及使用情形
df -h
du -h --max-depth=1
2. 查看文件或文件夹的磁盘使用空间
du -h --max-depth=1 your_dest_dir
输入^A的方法是ctrl+v ctrl+a
查看数据有多少:wc -l filename
查看文件第一行:sed -n '1'p filename
显示filename前面20行: tail -n +20 filename
显示filename最后20行: tail -n 20 filename
Ssh中断连接:法1:Ctrl+D 法2:输入 logout
vi替换:
:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky 
"incOverwritten":"1"
rpm解包:rpm2cpio FileName.rpm | cpio -div
linux输入特殊分割符 ^A
1、首先进入插入(编辑)模式;
2、然后按ctrl + v 键,最后按 ctrl + a 即可
查看隐藏字符:set list

• linux相关
• 常用命令:mv、cd、mkdir、cp、cat、more、scp、pwd、ls、grep、find、sed、awk、df、du。。。
• linux问题排查命令:top、vmstat、sar、ps、iostat、mpstat、free、netstat、lsof
• shell 脚本

Kafka
登录进容器
kubectl exec -it devops-dev-84c948c874-tnc2p -n vts bash
然后用下面的命令查看topic列表:
kafka-topics.sh --zookeeper kafka-zookeeper.vts-deploy.svc.cluster.local:2181 --list
创建topic
bin/kafka-topics.sh --create --bootstrap-server node1:9092,node2:9092,node3:9092 --topic topicName --partitions 12 --replication-factor 2 --config cleanup.policy=compact --config retention.ms=500

kafka-topics.sh --zookeeper kafka-zookeeper.vts-deploy.svc.cluster.local:2181 --create --topic topicName --partitions 12 --replication-factor 3 --config cleanup.policy=compact --config retention.ms=500
查看明细
kafka-topics.sh --zookeeper kafka-zookeeper.vts-deploy.svc.cluster.local:2181 --describe --topic topicName
删除Topic
kafka-topics.sh --zookeeper kafka-zookeeper.vts-deploy.svc.cluster.local:2181 --delete --topic topicName
生产消息
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test1
消费topic test1的消息
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test1 --from-beginning

Homebrew的使用
1.查看Homebrew命令:brew help
2.安装任意包:brew install <packageName>,eg:brew install node
3.卸载任意包:brew uninstall <packageName>,eg:brew uninstall git
4.查询可用包:brew search <packageName>
5.查询已安装包列表:brew list
6.查看任意包信息:brew info <packageName>
7.更新Homebrew:brew update
8.Homebrew帮助信息:brew -h
8.查看brew版本:brew -v
10.更新brew版本:brew update
11.整理重复语句:open ~/.zshrc -e、open ~/.bash_profile -e
Homebrew的安装
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
https://zhuanlan.zhihu.com/p/59805070
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

OSSCMD安装配置
1、下载
wget https://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/internal/oss/0.0.4/assets/sdk/OSS_Python_API_20160419.zip
2、解压
unzip OSS_Python_API_20160419.zip -d OSSCMD
3、安装
sudo python setup.py install
4、确认生效 ,在任意目录敲击osscmd能出现如下内容就表示生效了
5、配置文件
osscmd config --host=oss-cn-shanghai.aliyuncs.com --id={access key} --key={key secret} 
个人配置:osscmd config --host=oss-cn-shanghai.aliyuncs.com --id=LTAInXgGPKq5zXsz --key=1234567 

osscmd  config --id=1234567 --key=123456 --host=oss-cn-shenzhen.aliyuncs.com 
osscmd put target/vts_builder_flink-1.0.9-SNAPSHOT.jar oss://vts-shenzhen/
oss://vts-shenzhen/下你建一个自己的子目录
上传:osscmd put xx oss://vts-shenzhen/dapeng/, 下载:osscmd get oss://vts-shenzhen/dapeng/xx xx。你用的机器上保证安装好了oss,用我给你的config命令配置好。

pop安装pip
curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
python get-pip.py

deploy添加:
- if (echo $DRONE_COMMIT_MESSAGE | grep "deploy"); then exit 0; fi
deploy过滤:
git diff|grep 'diff --git'|awk -F ' b' '{print $2}'

git log -2 |grep commit
awk '{print$2}' commit_file

git diff|grep 'diff --git'|awk -F ' b' '{print $2}'


pod替换镜像
kubectl get pod -n vts | grep cicd
 1017  [2021-04-02 18:45:50] kubectl describe pod flow-cicdvideo20210402182435-5b667b4b4b-rh9wt -n vts
 1018  [2021-04-02 18:48:06] kubectl get pod -n vts |grep cicdvideo20210402182435
 1019  [2021-04-02 18:48:20] kubectl get deployment -n vts |grep cicdvideo20210402182435
 1020  [2021-04-02 18:48:50] kubectl edit deployment flow-cicdvideo20210402182435 -n vts
 1021  [2021-04-02 18:49:14] kubectl get pod -n vts |grep cicdvideo20210402182435
 1022  [2021-04-02 18:50:27] kubectl delete pod fingerprint-cicdvideo20210402182435-86545cd998-searcher-6bdb96db5c-0-0 -n vts
 1023  [2021-04-02 18:50:34] kubectl get pod -n vts |grep cicdvideo20210402182435
 1024  [2021-04-02 18:50:56] kubectl delete pod fingerprint-cicdvideo20210402182435-86545cd998-searcher-6bdb96db5c-1-0 -n vts
 1025  [2021-04-02 18:51:02] kubectl get pod -n vts |grep cicdvideo20210402182435
 1026  [2021-04-02 18:51:17] kubectl describe pod flow-cicdvideo20210402182435-55ddc99bbf-mwbb9 -n vts


 


 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐