CentOS单机安装k8s并部署.NET 6程序 压测 记录
前面部分依照CentOS单机安装k8s并部署.NET 6程序来进行,内存、cpu、centos版本一致,之前222元买的三年8M 2c4g腾讯云轻量服务器,这个教程算是写的很详细的了,基本可以一致执行下去就能打开网页
我卡在了搭建私有仓库部分,里面写的是需要添加insecure-registries,然后重启,但是重启之后我这里一直启动不了(IP已经修改成自己服务器的IP),随后我将添加的insecure-registries部分删掉,然后推送仓库时推送到了自己的docker hub(10.211.55.10:8888替换成自己的hub名称,后面的yaml里面也需要对应修改),并且想着后面做压测,就稍微改了一下代码,在app.Run();前增加了
app.UseEndpoints(endpoints =>
{
endpoints.MapGet("/get",async content => {
await content.Response.WriteAsync("hello!");
});
});
这样,压测我们就直接访问/get
如果按照教程搞完之后,需要对网站进行修改,然后更新到k8s,那么可以在 dotnet publish 之后,将文件复制进容器中
docker ps -a
docker cp /root/publish/. a4951a90cc85:/app/
docker commit -m="添加get" a4951a90cc85 wangpengzong/k8s-netcore-demo:1.1
docker push wangpengzong/k8s-netcore-demo:1.1
然后去修改yaml文件里面的image,将image: wangpengzong/k8s-netcore-demo修改成image: wangpengzong/k8s-netcore-demo:1.1,然后保存
执行kubectl delete -f deploy.yaml删除之前创建的yaml和对应pod等
再执行一下kubectl create -f deploy.yaml --validate一下即可,执行之后需要重新查看新的端口号kubectl get svc -n k8s-netcore
压测我是用的是go-stress-testing(压测工具如何选择? ab、locust、Jmeter、go压测工具【单台机器100w连接压测实战】),安装时可能出现安装不了的问题,例如
A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.,更改一下代理go env -w GOPROXY=https://goproxy.cn,direct即可
-c 表示并发数
-n 每个并发执行请求的次数,总请求的次数 = 并发数 * 每个并发执行请求的次数
-u 需要压测的地址
# clone 项目
git clone https://github.com/link1st/go-stress-testing.git
# 进入项目目录
cd go-stress-testing
# 运行
go run main.go -c 1 -n 100 -u https://www.baidu.com/
简单压测,如果直接访问网站go run main.go -c 100 -n 100 -u http://ip:port,结果是这样的

某运维大佬评价

访问刚才的/get `go run main.go -c 100 -n 100 -u http://ip:port/get```,结果是这样

此次给出的评价是

CentOS单机安装k8s并部署.NET 6程序 压测 记录的更多相关文章
- 10、二进制安装K8s之部署CoreDNS 和Dashboard
二进制安装K8s之部署CoreDNS 和Dashboard CoreDNS 和Dashboard 的yaml文件在 k8s源代码压缩包里面可以找到对应的配置文件,很多人从网上直接下载使用别人的,会导致 ...
- 7、二进制安装K8s之部署kube-proxy
二进制安装K8s之部署kube-proxy 1.创建配置文件 cat > /data/k8s/config/kube-proxy.conf << EOF KUBE_PROXY_OPT ...
- 8、二进制安装K8s之部署CIN网络
二进制安装K8s之部署CIN网络 部署CIN网络可以使用flannel或者calico,这里介绍使用calico ecd 方式部署. 1.下载calico二进制安装包 创建所需目录 mkdir -p ...
- 6、二进制安装K8s之部署kubectl
二进制安装K8s之部署kubectl 我们把k8s-master 也设置成node,所以先master上面部署node,在其他机器上部署node也适用,更换名称即可. 1.在所有worker node ...
- 3、二进制安装K8s之部署kube-apiserver
二进制安装K8s之部署kube-apiserver 一.生成 kube-apiserver 证书 1.自签证书颁发机构(CA) cat > ca-config.json <<EOF ...
- 4、二进制安装K8s 之 部署kube-controller-manager
二进制安装K8s 之 部署kube-controller-manager 1.创建配置文件 cat > /data/k8s/config/kube-controller-manager.conf ...
- 5、二进制安装K8s 之 部署kube-scheduler
二进制安装K8s之部署kube-scheduler 1.创建配置文件 cat > /data/k8s/config/kube-scheduler.conf << EOF KUBE_S ...
- 2、二进制安装K8s 之 部署ETCD集群
二进制安装K8s 之 部署ETCD集群 一.下载安装cfssl,用于k8s证书签名 二进制包地址:https://pkg.cfssl.org/ 所需软件包: cfssl 1.6.0 cfssljson ...
- [转帖]CentOS 7安装并启动Google浏览器(★firecat亲测有效★)
CentOS 7安装并启动Google浏览器(★firecat亲测有效★) https://blog.csdn.net/libaineu2004/article/details/82821405 自己 ...
随机推荐
- “伏魔”赏金 | WebShell检测之「模拟污点引擎」首次公测,邀你来战!
安全是一个动态的过程,攻防对抗如同在赛博世界里降妖伏魔,其要义是:取彼之长,补己之短.--伏魔引擎的诞生 伏魔引擎挑战赛 注册时间: 2022.01.10 00:00:00 - 2022.01.24 ...
- Solon 开发,五、切面与环绕拦截
Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注 ...
- Centos下安装Spark
(注:由于第一次安装操作失误,所以重新安装了,因此截图为第一次的截图,命令为第二次安装的命令) (注:图是本人安装所截图,本人安装参考网址:https://www.cnblogs.com/shaosk ...
- 多种语言tcp编程
再次强调,最好socket编程 c#的tcpclient等封装无法对接android的socket服务器 c#的tcpclient等封装可对接java的socket服务器 python socket服 ...
- Git安装详解
官网地址: https://git-scm.com/ 查看 GNU 协议,可以直接点击下一步. 选择 Git 安装位置,要求是非中文并且没有空格的目录,然后下一步. Git 选项配置,推荐默认设置,然 ...
- memcached 小记
Memcached是一个自由开源的,高性能,分布式内存对象缓存系统. Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串.对象).这些数据可以是数据库调用.API ...
- 使用du与df命令查看磁盘容量不一致
在Linux系统的ECS实例中,执行du与df命令查看磁盘容量,出现不一致的现象 执行df -h命令查看文件系统的使用率,可以看到500G 执行du / -sh 命令只使用250G 执行du和df命令 ...
- 如何在pyqt中使用 QGraphicsView 实现图片查看器
前言 在 PyQt 中可以使用很多方式实现照片查看器,最朴素的做法就是重写 QWidget 的 paintEvent().mouseMoveEvent 等事件,但是如果要在图像上多添加一些形状,那么在 ...
- 面向计算机视觉的深度学习 | iBooker·ApacheCN
原文:Deep Learning for Computer Vision 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 不要担心自己的形象,只关心如何实现目标.--<原则>,生 ...
- js null和{}区别
{}是一个不完全空的对象,因为他的原型链上还有Object呢,而null就是完全空的对象,啥也没有,原型链也没有,所以null instanceof Object === false;[]就更不用说了 ...