16154?1488593031

刘佩妮 (Student)

Penny

国防科学技术大学

Ta在确实 almost 3 years

  • 湖南-长沙
  • 2016-09-02开始使用
  • 11325次访问(自2016年5月)
Ta的动态
16154?1488593031
发布时间:05/17/2019 21:12
更新时间:05/17/2019 21:12

1. Create vxlan device

# ip link add vxlan0 type vxlan id 42 group 239.1.1.1 dev eth1 dstport 4789 This creates a new device named vxlan0.

  The device uses the multicast group 239.1.1.1 over eth1 to handle traffic for which there is no entry in the forwarding table. The destination port number is set to the IANA-assigned value of 4789. The Linux implementation of VXLAN pre-dates the IANA's selection of a standard destination port number and uses the Linux-selected value by default to maintain backwards compatibility.

                 

                2. Delete vxlan device

# ip link delete vxlan0


                3. Show vxlan info

# ip -d link show vxlan0

回复 ︿
16154?1488593031
发布时间:05/17/2019 21:11
更新时间:05/17/2019 21:11

debug way


#service sshd stop 
#/usr/sbin/sshd -d 


回复 ︿
16154?1488593031
发布时间:05/10/2019 20:00
更新时间:05/10/2019 20:00

#查看当前磁盘状态

$ df -h

$ sudo fdisk -l  (记住start和end的数字)

$ lsblk


#调整分区

$ sudo fdisk /dev/sda1

(谨慎使用w命令)

p 命令查看当前分区

---------------给/扩容------------------

先删除原分区 d

然后新建分区 n (起始地址要跟删除前的一致)


#刷新分区

$ sudo partprobe /dev/sda1


#resize分区



$ resize2fs /dev/sda1



reference:

https://uly.me/xfs-vs-ext-2-3-4/

https://www.jianshu.com/p/273daea17b2a

回复 ︿
16154?1488593031
发布时间:02/14/2018 10:35
更新时间:02/14/2018 10:35

找到集群内部的hosts配置

修改host配置到指定节点


hosts理论上是保存后生效,如果没有生效

1) 重启机器
2) 重启服务

      Ubuntu: $sudo /etc/init.d/networking restart

       ubuntu: service network restart

回复 ︿
16154?1488593031
发布时间:02/11/2018 01:12
更新时间:02/11/2018 01:12

配置istioctl所在目录的环境变量


export PATH=$PATH:/root/local/bin

回复 ︿
16154?1488593031
发布时间:02/10/2018 16:52
更新时间:02/10/2018 16:52

kubenetes node - NotReady

按照以下顺序排除错误:


1、该node是否具有网络连接,若无请打开


2、该node的网络虚拟组件是否良好,下图良好的


3、重置node

kubeadm reset
systemctl stop kubelet
systemctl stop docker
rm -rf /var/lib/cni/
rm -rf /var/lib/kubelet/*
rm -rf /etc/cni/
ifconfig cni0 down
ifconfig docker0 down
systemctl start docker
kubeadm join --token=7ea0f6.9ccb96bc13f22650 192.168.58.129

回复 ︿
16154?1488593031
发布时间:02/10/2018 16:29
更新时间:02/10/2018 16:29

fsck from util-linux 2.26.2 

/dev/sda10 contains a file system with errors, check forced. 

/dev/sda10: Inodes that were part of a corrupted prphan linked list found.

/dev/sda10: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. (i.e., without -a or -p options) 

fsck exited with status code 4 

The root filesystem on /dev/sda10 requires a manual fsck


非法关机导致以上错误,

博客上解决方法输入fsck.ext3 -y /dev/sda10 提示fsck.ext3 not found行不通


试了很多办法最终解决方法为去掉ext3.

即,输入命令 fsck -y /dev/sda10

回复 ︿
16154?1488593031
发布时间:12/26/2017 14:52
更新时间:02/10/2018 16:24


第一行Number of users to simulate是模拟用户的数量,第二行Hatch rate (users spawned/second表示产生模拟用户的速度,所有用户产生完后开始测试统计,填写完成后点击“Start swarming”即可开始测试





下面写解释一下locustfile.py里面的内容。每个locustfile.py里面最少包含两个内容:用户的基本信息、用户的任务信息。 
用户的基本信息由示例中的User(继承自Locust)定义,min_wait和max_wait定义了每个用户执行两个任务之间的等待时间的上下限,单位是毫秒,task_set属性指向一个TaskSet类,TaskSet类定义了用户的任务信息。本例中每个用户执行每个任务之间会等待1~3秒之间的一段随机时间。 
用户的任务信息由示例中UserBehavior(继承自TaskSet)定义,每个任务由@task装饰器定义,一个TaskSet中可以有多个任务,也可以指定任务的执行权重。本例中用户只有一个任务,就是什么也不做。

from locust import Locust, TaskSet, task

class UserBehavior(TaskSet):
    @task
    def job(self):
        pass

class User(Locust):
    task_set = UserBehavior
    min_wait = 1000
    max_wait = 3000




测试结果展示

Locust在执行测试的过程中,我们可以在web界面中实时地看到结果运行情况。

相比于LoadRunner,Locust的结果展示十分简单,主要就四个指标:并发数、RPS、响应时间、异常率。但对于大多数场景来说,这几个指标已经足够了。

在上图中,RPS和平均响应时间这两个指标显示的值都是根据最近2秒请求响应数据计算得到的统计值,我们也可以理解为瞬时值。

如果想看性能指标数据的走势,就可以在Charts栏查看。在这里,可以查看到RPS和平均响应时间在整个运行过程中的波动情况。这个功能之前在Locust中一直是缺失的,直到最近,这个坑才被我之前在阿里移动的同事(网络IDmyzhan)给填上了。当前该功能已经合并到Locust了,更新到最新版即可使用。

除了以上数据,Locust还提供了整个运行过程数据的百分比统计值,例如我们常用的90%响应时间、响应时间中位值,该数据可以通过Download response time distribution CSV获得,数据展示效果如下所示。




回复 ︿
16154?1488593031
发布时间:12/28/2017 20:24
更新时间:02/10/2018 16:24

1.标题如何居中?

使用宏包 

\usepackage[justification=centering]{caption} 


2.表格文字如何居中?

\begin{tabular}{ c c c p{2cm}<{\centering}}

一个c代表1列,p{2cm}<{\centering},更改数字可以改变长短。
回复 ︿
16154?1488593031
发布时间:06/23/2017 18:04
更新时间:12/26/2017 14:40

https://o-my-chenjian.com/2016/07/04/Easy-With-Docker/#建立docker私有仓库



查看images列表

docker images

创建一个image

docker build -t chenjian158978/wmcluster_sitealive .

删除一个image

docker rmi image_id

删除所有的images

docker rmi $(docker images -q)

查看当前运行中的容器

docker ps

查看当前的容器

docker ps -a

运行一个image

进入容器的命令行:docker run -it image_name /bin/bash

退出容器命令行:exit

再次进入命令行(在容器运行才行):docker exec -it container_id /bin/bash

后台运行容器:docker run -idt image_name

查看docker(images/container)详细信息

docker inspect images_id/container_id

由改变后的container生成image

docker commit -m='change server.xml' container_id tomcat-process:test

登录到docker

docker login

推送到dockerhub上

docker push username/imagename

搜索dockerhub上的一个镜像

docker search docker_name

下载一个镜像

docker pull docker_image_name

默认是官网dockerhub,但是如果经常pull和push,建议建立私有仓库

从容器中拷贝出文件

docker cp container_id:/run.sh /home/administrator/run.sh

将外部文件拷贝到容器中

docker cp /home/administrator/run.sh container_id:/run.sh

保存(save)docker镜像

sudo docker save image > /home/chenjian/save.tar

导入save.tar文件

docker load < /home/chenjian/save.tar

导出(export)docker容器

sudo docker expot container_id > /home/chenjian/export.tar

导入export.tar

sudo docker import /home/chenkjian/export.tar

save vs export

从文件大小(size)中可知 saveed-loaded:没有丢失历史与层(layer),可以回滚 exported-imported:丢失所有历史,无法进行回滚

给镜像添加仓库名称与tag

有时会遇见repository与tag都为<none>

可用:sudo docker tag image_id repository_name:tag_name

如果tag_name没有的话,tag为latest

清理所有的镜像与容器

摧毁:docker kill $(docker ps -a -q)

移除容器: docker rm $(docker ps -a -q)

移除镜像: docker rmi $(docker ps -a -q)

其中“$()”可以与“”互换



进入容器内部

前提是必须是正在运行的容器
docker exec -it container_id /bin/bash
运行exit退出



commit命令用来将容器转化为镜像,运行下面的命令,我们可以讲刚刚的容器转换为镜像:

sudo docker commit -m “Added nginx from ubuntu14.04” -a “saymagic” 79c761f627f3 saymagic/ubuntu-nginx:v1

其中,-m参数用来来指定提交的说明信息;-a可以指定用户信息的;79c761f627f3代表的时容器的id;saymagic/ubuntu-nginx:v1指定目标镜像的用户名、仓库名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。注意的是,你一定要将saymagic改为你自己的用户名。因为下文还会用到此用户名。



1.1       启动docker服务

sudo service docker start

1.2       容器操作

1.2.1        根据容器创建镜像

docker commit containerName/Id repository/name

1.2.2        新建并启动容器

根据一个镜像可以启动多个容器,启动容器的命令是docker run

docker run -t -i ubuntu:12.04  /bin/bash

或者

docker run -p 8081:8080 镜像id

常用参数解释:

-t 表示让Docker分配一个伪终端并绑定到容器的标准输入上

-i 表示让容器的标准输入保持打开

-d 表示以守护方式打开(即非交互模式,后台运行)

还有一个比较常用的,做网络配置时端口映射的参数-p,例如下面的命令将宿主机的3222端口映射到容器的22端口、将宿主机的3280端口映射到容器的22端口,用法如下:

#-p 设置端口映射 -p 宿主机端口:容器端口 

docker run -t -i -p 3222:22 -p 3280:80 87e5b6b3ccc1 /bin/bash

1.2.3        查看已启动的容器

docker ps

查看所有容器

docker ps -a  

1.2.4        启动一个已存在的容器  

后面的id为容器ID

docker start 8d98fd43acd4

1.2.5        进入容器

docker attach 8d98fd43acd4

以交互模型进入容器

docker exec -ti containerName/Id sh

1.2.6        停止容器

docker stop 8d98fd43acd4

停止所有容器

docker stop $(docker ps -a -q)

1.2.7        删除容器

容器必须是停止状态的才可以删除

docker rm 8d98fd43acd4

删除所有停止的容器

docker rm $(docker ps -a -q)

1.2.8        导出/导入容器

将容器id为7691a814370e 的导出到当前目录下 名称为ubuntu.tar

docker export 7691a814370e > ubuntu.tar

将当前目录下的容器ubuntu.tar导入

docker import - ubuntu.tar

1.3       镜像操作

1.3.1        根据dockerfile创建镜像

docker build -t imageName .

1.3.2        运行mysql镜像

docker run -d -P -e mysqld -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=ips -v /mysql_data:/var/lib/mysql -p 3306:3306 --restart=always mysql

1.3.3        清除none镜像

docker images|grep none|awk '{print $3 }'|xargs docker rmi -f

1.3.4        删除images

通过image的id来指定删除谁

docker rmi <image id>

要删除全部image的话

docker rmi $(docker images -q)

1.3.5        导出/导入镜像

将镜像名为imageName的镜像导出到home目录下 名称为Name.tar

docker save imageName > /home/Name.tar

将home目录下的镜像Name.tar导入

docker load < /home/Name.tar


回复 ︿
点击展开更多
问题和建议
还能输入50个字符 Submit

加入QQ群

关注微信APP


×