首页
关于
Search
1
服务器折腾笔记
588 阅读
2
智能家居改造&HomeAssistant使用
248 阅读
3
树莓派折腾指南
115 阅读
4
FRP端口映射
79 阅读
5
VUE2.0
58 阅读
默认分类
it
算法学习
力扣每日解题
Liunx
前端学习
HTML+CSS
JS
VUE
后端学习
java
python
兴趣爱好
魔方
花切&魔术
折纸
3d打印
航拍
硬件学习
树莓派
刷机经验
esp8266
arduino
生活日记
奇思妙想
琐事吐槽
感慨万千
服务器折腾
登录
Search
标签搜索
小程序
微信
前端
博客
尘埃啊
累计撰写
13
篇文章
累计收到
3
条评论
首页
栏目
默认分类
it
算法学习
力扣每日解题
Liunx
前端学习
HTML+CSS
JS
VUE
后端学习
java
python
兴趣爱好
魔方
花切&魔术
折纸
3d打印
航拍
硬件学习
树莓派
刷机经验
esp8266
arduino
生活日记
奇思妙想
琐事吐槽
感慨万千
服务器折腾
页面
关于
搜索到
13
篇与
zyb
的结果
2024-04-19
本地部署LLM大语言模型
本地部署LLM大语言模型LLM大型语言模型(LLM,Large Language Model)是基于深度学习的一种算法,它使用海量的文本数据来进行训练,可以执行多种自然语言处理(NLP)任务。这些模型通常包含数十亿到数万亿的参数,使得它们能够学习语言的复杂模式并生成人类可读的文本。LLM的核心技术包括Transformer架构和自注意力机制,使模型能够理解文本中的单词和短语之间的关系。这些模型能够执行的任务包括但不限于文本生成、文本分类、问答、对话、翻译、摘要等在线免费大语言模型需要英伟达显卡,cude核心越多显存越大效果越好没有显卡的小伙伴也不要紧,这里推荐几个开源免费的大语言模型国内 (都有app版本,也可以直接下载)https://kimi.moonshot.cn/ kimi 月之暗面 国内初创AI公司https://www.doubao.com/chat/ 豆包 抖音旗下ai产品https://tongyi.aliyun.com/ 通义千问 阿里旗下https://chatglm.cn/main/alltoolsdetail 智普清言 智普公司和清华团队 模型开源可本地部署需要魔法http://chat.openai.com/ chatGPT3.5 openAI公司 现在已经不需要注册了https://console.anthropic.com/ openAI公司主创离职 初创公司 Anthropic 需要注册https://build.nvidia.com/explore/discover 英伟达部署的开源模型网站安装ollamaollama是一个开源框架,简化了大模型部署步骤,现在已经支持各系统部署https://ollama.com/ 下载地址,选择自己要部署的系统进行安装,安装完成以后进终端测试是否安装成功 ollama -v下载模型以llama3模型举例ollama list 可以查看当前安装的的所有模型默认只有本机可以访问,如果openwebUI配置在其他ip需要手动修改环境变量winOLLAMA_ORIGINS=*OLLAMA_HOST=0.0.0.0如果访问不到,检查防火墙和端口linuxOLLAMA_HOSR=0.0.0.0 ollama serve升级ollama mac和win可以直接在任务栏更新,linux需要使用更新脚本进行更新curl -fsSL https://ollama.com/install.sh | shwin版本默认存储在c盘 C:\Users\<username>\.ollama\models`,可以设置环境变量,设置OLLAMA_MODELS为所选目录其他问题可以详看官方文档 https://github.com/ollama/ollama/blob/main/docs/faq.md#how-do-i-configure-ollama-server安装openwebUIhttps://github.com/open-webui/open-webui 项目地址openwebUI 是一个开源的可视化web应用,几乎就是为ollama量身定制的,安装之前需要先部署Docker,这里就不详细讲解docker的安装了 ,可以自行百度docker 安装命令//修改 ollama请求地址 ip:端口号 ollama默认端口号是11434 docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main下载的很慢,需要等一会 安装完成以后 docker ps 查看容器是否在运行访问端使用 doker服务部署地址:3000 端口进行访问web界面第一次会让你先注册,这个随便填就行检查地址是否正常,测试连接
2024年04月19日
34 阅读
0 评论
5 点赞
2024-02-21
arduino开发板学习
Arduino开发板arduino官网 https://www.arduino.cc/arduino 内置函数文档说明 https://docs.arduino.cc/learn/programming/reference/太极中文对照价函数文档说明 http://www.taichi-maker.com/homepage/reference-index/arduino-code-reference/一、认识arduino 图为arduion uno开发板在Arduino中,PWM(脉冲宽度调制)数字端口和模拟(Analog)端口具有不同的功能和特点。PWM(脉冲宽度调制)数字端口:PWM数字端口是指能够产生PWM信号的特殊数字引脚,如Arduino Uno的3、5、6、9、10和11号引脚。其他Arduino板可能有不同的PWM引脚。PWM引脚通过模拟输出的方式产生模拟信号,但它们仍然是数字引脚,只能输出逻辑高或逻辑低电平。PWM信号的特点是可以通过改变脉冲的占空比来模拟出不同的模拟电压,从而控制外部设备的亮度、速度等,例如控制LED的亮度或舵机的位置。模拟端口:模拟端口是指能够读取模拟信号的引脚,如Arduino Uno的A0到A5引脚。这些引脚可以接收来自传感器、电位器等模拟信号,并将它们转换为数字值。模拟端口上的模拟输入被Arduino内置的ADC(模拟数字转换器)转换为数字值。这些数字值的范围通常是0到1023(10位ADC),代表输入模拟信号的电压在0到5V之间的值。模拟端口还可以通过使用PWM来模拟模拟输出。虽然这些引脚通常用于模拟输入,但是某些Arduino板上的模拟端口也具有PWM功能。例如,Arduino Uno的引脚A0到A5也可以产生PWM信号。总的来说,PWM数字端口用于产生PWM信号以控制外部设备的亮度、速度等,而模拟端口用于读取传感器信号并将其转换为数字值。某些Arduino板上的模拟端口也可以用于产生PWM信号,但是它们的主要功能还是模拟输入。二、C++前置知识2.1创建变量名要求变量名称注意事项变量名不能有空格变量名不能有特殊符号不能以数字开头不能使用关键字只能使用数字字母以及下划线命名,且不能以数字开头三、物理,电路硬件前置知识3.1欧姆定律V=I*R V表示电压(单位为伏特),I表示电流(单位为安培),R表示电阻(单位为欧姆)3.2电子元件3.2.1 发光二极管区分正负极,长边为正极,短边为负极,电流很小可以忽略不计(20mA),因此需要在电路中配合电阻使用3.2.2 四角微动开关相连不同侧,同侧不相连3.2.3 上拉电阻当外部信号未连接到输入引脚时,输入引脚处于悬空状态,容易受到干扰而产生不确定的电平。这种情况下,如果没有上拉电阻,输入引脚可能会随机地处于高电平或低电平状态,从而导致系统错误或不可预测的行为上拉电阻的作用是确保输入引脚在未连接外部信号时保持在逻辑高电平状态,以防止悬空状态引发不确定的电平,从而提高系统的稳定性和可靠性。上拉电阻在不同的电路中取值不同,通常在arduino中使用10kΩ的电阻3.2.4 数码管3.2.5 电位器四、arduino小实验(数字引脚)arduino函数总结void setup() {} 只执行一次,通电或rest后执行一次void loop() {} 反复执行pinMode(引脚值,初始化设置)OUTPUT模式 此时引脚为低阻抗状态,可以向其他电路原件提供电流(通常为40mA以内)当引脚配置为输出模式时,它可以向外部设备发送电信号。这意味着它可以控制外部设备的状态。在输出模式下,可以通过编程将引脚设置为逻辑高电平(通常是电源电压,如5V)或逻辑低电平(通常是接地电压,如0VINPUT模式 引脚设为数字输入INPUT 状态时,此时引脚为高阻抗状态,可以识别两种状态 HIGH(高电平) LOW(低电平)当引脚配置为输入模式时,它被用于接收外部信号。这意味着它可以读取外部传感器的值或监测外部设备的状态。在输入模式下,引脚可以读取外部电平,比如读取按钮的状态(按下或释放)或读取其他数字信号。在输入模式下,引脚的电平由外部信号确定。INPUT_PULLUP模式 arduino将开启内部的上拉电阻,设置为输入上拉以后,请勿将该引脚与负压或者高于5v的电压相连,否则会损坏Arduino\这种模式下的输入引脚与普通输入模式相似,但是在此模式下引脚连接了一个内部上拉或下拉电阻,以确保在外部信号未连接时,引脚的电平稳定。当引脚配置为输入模式(带上拉电阻)时,如果外部信号未连接,则引脚会被拉向逻辑高电平(通常是电源电压,如5V)。当引脚配置为输入模式(带下拉电阻)时,如果外部信号未连接,则引脚会被拉向逻辑低电平(通常是接地电压,如0V)。digitalRead(引脚值) 读取当前引脚状态digitalWrite(引脚值, HIGH);HIGH 高电平 5vLOW 低电平 0Vdelay(1000); 等待时间,毫秒值串口函数Serial.begin(9600); 初始化串口通信,波特率调为9600Serial.println(buttonState); 串口输出语句analogWrite(引脚值,范围值) 必须是pwm引脚将一个模拟信号值写入arduino引脚,这个操作可以用来控制LED亮度,或者电机转速在调用analogWrite()前,无需使用pinMode()函数来设置引脚(设置也不影响,可以省略)4.1点亮uno内置LED实例让板载LED灯珠闪烁//当给开发板通点或者执行复位按钮后,setup函数会执行一次 void setup() { pinMode(LED_BUILTIN, OUTPUT);//初始化LED_BUILTIN数字引脚为输出模式,在uno中就是13数字引脚 } //函数会永久反复的执行 void loop() { digitalWrite(LED_BUILTIN, HIGH); // 设置高电平 点亮LED delay(1000); //等待一秒 digitalWrite(LED_BUILTIN, LOW); // 设置低电平 熄灭LED delay(1000); // 等待一秒 }4.2点亮LED让外置LED灯珠闪烁void setup() { pinMode(5, OUTPUT);//将数字5引脚设为输出引脚 } void loop() { digitalWrite(5, HIGH); //高电平 delay(1000); digitalWrite(5, LOW); //低电平 delay(1000); }电路接线 (上拉电阻选用10kΩ ,不加上拉电阻板子会烧掉ardino)4.3通过开关控制 进行数字输入,点亮LED按下开关点亮内置IED灯珠,串口输出由1变为0//读取引脚2的数字输入,将结果显示在串口监视器中 //引脚2连接有按键开关,给它一个名字: int pushButton = 2; //当你按下复位按钮后,setup流程运行一次: void setup() { //串口通讯初始化,每秒9600位 Serial.begin(9600); //设置按键引脚为输入 pinMode(pushButton, INPUT); } // loop 流程会永远的反复运行 void loop() { //读取输入引脚: int buttonState = digitalRead(pushButton); // 显示按键状态 Serial.println(buttonState); //可以在arduion串口窗口查看输出值 delay(1); // 为确保程序稳定运行进行短暂停止 }4.4按键控制Arduino ide灯开关按下开关才会点亮内置IED,使用引脚上拉模式,注意,在上拉模式下,按钮逻辑是反的,因此读数高电平1 灯灭 ,低电平0灯亮// 本示例展示如何使用pinMode(INPUT_PULLUP)。通过本程序,Arduino将读取引脚2 // 的数字输入并将结果显示在串口监视器中。 // 电路: // * 引脚2连接轻触开关,开关另一端接地 // * 引脚13上安装有开发板内置LED //与使用pinMode(INPUT)不同,我们在使用pinMode(INPUT_PULLUP)时不需要外接上拉或下拉电阻。 //开发板内置一个20K欧姆电阻,该电阻将引脚上拉到5V。开关在打开时,引脚读取到高电平。开关闭合后,引脚读取到低电平 void setup() { //开始串口通讯 Serial.begin(9600); //将引脚2设置为输入上拉模式 pinMode(2, INPUT_PULLUP); pinMode(13, OUTPUT);//关于引脚,在arduino uno中 13号引脚用LED_BUILTIN表示 } void loop() { //将开关状态数值读取到变量中 int sensorVal = digitalRead(2); //输出开关状态数值 Serial.println(sensorVal); //请留意在上拉模式下,按钮的逻辑状态是反的。 //即:开关断开时引脚读取到高电平。开关被按下后引脚读取到低电平。 //按钮被按下后,引脚13连接的LED将被点亮。按钮没有按下时,LED熄灭。 //如果按钮没有按下,熄灭LED。否则,点亮LED if (sensorVal == HIGH) { //按钮没有按下 digitalWrite(13, LOW); //熄灭LED } else { //否则 digitalWrite(13, HIGH); //点亮LED } }//代码优化 void setup() { Serial.begin(9600); pinMode(2, INPUT_PULLUP); pinMode(LED_BUILTIN, OUTPUT); } void loop() { Serial.println(digitalRead(2)); digitalRead(2)?digitalWrite(LED_BUILTIN, LOW):digitalWrite(LED_BUILTIN, HIGH);//三元运算 }4.5双控制开关测试同时按下两个按键,才能点亮uno内置ledbool b1; //设定变量 bool b2; void setup() { pinMode(2, INPUT_PULLUP); //设置引脚 pinMode(3, INPUT_PULLUP); pinMode(LED_BUILTIN, OUTPUT); } void loop() { b1 = digitalRead(2); b2 = digitalRead(3); if(!b1 && !b2){ //必须两个都是低电平才能亮灯 digitalWrite(LED_BUILTIN, HIGH); }else{ //否则都不亮 digitalWrite(LED_BUILTIN, LOW); } }4.6双控制开关,外置LED灯珠两个按键都不按下,只显示红灯,按下一个,内置LED闪烁,全部按下显示绿灯//两个按键都不按下,只显示红灯,按下一个,内置LED闪烁,全部按下显示绿灯 bool b1; bool b2; void setup() { Serial.begin(9600); pinMode(2, INPUT_PULLUP);//用于读取开关变化状态 pinMode(3, INPUT_PULLUP); pinMode(4, OUTPUT); //用于给小LED供电 接红灯 pinMode(5, OUTPUT); //接绿灯 } void loop() { b1 = digitalRead(2);//把状态值存入变量,注意开关状态 按下是0 不按是1 b2 = digitalRead(3); Serial.print(b1); Serial.println(b2); if(b1 && b2){//都没按 digitalWrite(4,HIGH); }else if(!b1 && !b2){//都按下 digitalWrite(5,HIGH); }else{//只按一个 digitalWrite(4,LOW); digitalWrite(5,LOW); } } //TODO 有一定概率红绿灯同时亮起五、arduino小实验(模拟引脚)调整小LED亮度只能使用pwm引脚(3,5,6,9,19,11)5.1 通过按键控制LED灯珠亮度bool b1; bool b2; int ledPin = 9; //led引脚 int brightness = 128;//led亮度参数 void setup() { Serial.begin(9600); pinMode(2, INPUT_PULLUP); pinMode(8, INPUT_PULLUP); pinMode(ledPin, OUTPUT); } void loop() { b1 = digitalRead(2);//把状态值存入变量,注意开关状态 按下是0 不按是1 b2 = digitalRead(8); if(!b1 && brightness>0){//按1 并且 亮度大于0 变暗 brightness--; }else if(!b2 && brightness<255){////按2 并且 亮度小于255 变亮 brightness++; } analogWrite(ledPin,brightness);//改变亮点 Serial.println(brightness); delay(10);//等待10毫秒,提高稳定性 }总结,为什么可以控制LED的亮度LED灯实际上调节的是灯明暗的时间比,只不过明暗交替非常快人眼感觉不出来,当明暗交替比50的时候,亮度就是50%。调节参数0-254,实际就是二进制一个字节的大小 时间间隔大的时候,人眼感觉灯的状态是闪烁 时间间隔小的话,人眼感觉的就是明暗的变化了5.2 使用for循环实现呼吸灯效果让led灯慢慢变亮再慢慢变暗int ledPin = 9; //led引脚 void setup() { Serial.begin(9600); } void loop() { //由暗到明 for(int brightness =0;brightness=<255;brightness++){ analogWrite(ledPin,brightness);//改变亮点 Serial.println(brightness); delay(10);//等待10毫秒,提高稳定性 } //由明道暗 for(int brightness =255;brightness>=0;brightness--){ analogWrite(ledPin,brightness);//改变亮点 Serial.println(brightness); delay(10);//等待10毫秒,提高稳定性 } }
2024年02月21日
34 阅读
0 评论
0 点赞
2024-02-16
27岁了
27岁的自己泡沫不知不觉已经27岁了,至今一事无成。小的时候盼望长大,长大以后总怀念以前。怀念以前的雄心壮志,怀念以前的无忧无虑。我曾经有一个大大的理想,那就是开发一款自己的游戏,随着年龄的增长和认知的加深,慢慢觉得这不是一件简单的事情,理想逐渐变成梦想,变成一个难以实现的泡沫,在慢慢上升,然后在阳光的照耀下化为碎片自我人分为自我、他我、真我,即自己眼中的自己,他人眼中的自己和真正的自己,我倒是不在乎别人怎么看我,自己眼中的自己我是一个喜欢研究新鲜事物的人,但是懒惰,有强烈拖延症,有想法却不去实现,喜欢的太多,静下心来的太少。我喜欢跑步,不只是能减肥,更是因为跑步是唯一可以让我静下心来思考的活动,人是需要思考和反思才能总结经验和教训的,我不知道别人是怎样的,我喜欢跑步的时候,听着音乐,自己跟自己说话,脑子里的那个声音大概就是最接近真我的自我了。他总是让我重拾信心,颓废 前段时间生病,是真的抑郁了一段时间,也不是给自己找借口,确实是力不从心。最严重的时候,胃疼,咽喉痛,背部抽筋,右腿膝关节和左手腕关节都疼,整个人都感觉不好了,那种生命力在慢慢流逝的无力感让我难过,我时常这样想,如果我明天就会去世,那么今天所做的努力又是否有意义。 大概是辞职刚回家的那一年,赶上政府发消费券,然后抢了很多,去超市买了很多饮料。大夏天,渴了就从冰箱里拿出来一饮而尽,这样真的很爽,慢慢的嗓子出问题了,去人民医院告诉是咽炎,当时也没当回事,觉得几天就好了,甚至有时候去吃火锅,大概是又过了一个月,22年11月份的时候,胃也开始疼了,疼了一周多,在此之前,我的胃是从来没有疼超过一天的,然后我又去了医院,吃了药也还是没有好转。我在网上各种查,怀疑自己是胃癌,毕竟家里有癌症史,我爷爷是肺癌走的,我大爷曾经也得过胃癌。我决定自己偷偷去做胃镜,等胃镜的那几天晚上我时常发呆,躺在床上,仿佛世界的所有事情与我无关,静静的等待着命运对我的审批,还好结果是好的,出结果那一天,刚好也是生日,浅表性慢性胃炎伴糜烂,C16呼气也是阴性 后来,吃着药,胃也是反反复复,我感觉自己更严重了,我觉得自己就是胃癌,只是没有查出来,我身上甚至出现脂肪瘤。胃疼的时候,觉得家里没有人在乎没有人过问,我想过自杀,开着车一路向北,跑了很久很久,跑到昌城,在生与死之间,我感觉最对不住的就是我闺女,不能陪伴她的童年,参与她的成长,看她一点点长大,变优秀变美丽,结婚生子。我很自私,我也经常对我媳妇说,我希望我死的比你早,这样就不会因为失去你而让我感到痛哭,事实上,我无法想象任何一个亲人离我而去,身边同龄的朋友有三个失去了父亲,对我而言,家人的健康和安危比我重要。 那天,终究还是没有狠下心自我了断,身上的痛苦和精神上的,是无法感同身受的,我离家出走的第二个晚上,我爸找到了我,抱着我就是痛哭,这是这么多年以来,我第一次见我的父亲在我的面前哭,那一刻我真的觉得是我错了,我不应该干这种事情,也庆幸自己没有做错误的决定。救赎 直到现在,胃还是反反复复,但是这都不重要了,重要的是家人都还团聚在一起,少了谁,都将不是一个完整的家。我爱我的家人们,当下实际就是很幸福的,幸福不会永恒,总要珍惜。尤其是我的闺女,小糯米,总是带给我惊喜,两岁的小朋友,就已经很聪明很调皮。我慢慢想开了,即便是我真的得了重病,又何尝不是上帝对你的一种恩赐,给足机会让你全身而退,给足告别和弥补遗憾的时间,毕竟这世界上的意外来临也太多。看过一部美剧西部世界,剧中的仿生人就是在一次次死亡和重生中慢慢有了自己的意识,重复痛苦才会让她们觉醒。现实中的我们又何尝不是,在一次次痛苦沮丧失利中学会成长,慢慢的才会变成一个独立人格的人。重生 所以活着一天,就要好好珍惜一天。我的理想永远不会变,我要努力提高自己的编程水平,只要不是平行线,一直努力也会慢慢靠近交点。我热爱魔方,是它给了我信心,我热爱跑步,是它让我能够独立思考和反思。今年的新年目标就是,好好热爱生活,找一个不错的开发岗位,自研几个小程序和网站,参加魔方比赛有三阶盲拧成绩,半马可以跑进两小时,减肥瘦到130以内,最重要的是家人一定要健健康康快快乐乐。PS:生日收到了妹妹和媳妇亲手做的蛋糕,还有彩票花束,这应该是我这辈子第一次收到鲜花,我真的非常非常开心,感谢我的两个妹妹跟媳妇。晚上有点emo,跑了五公里畅快淋漓,不舒服的心情全都没有了,加油赵勇镔,贵在坚持
2024年02月16日
39 阅读
0 评论
1 点赞
2024-01-31
H5ai轻量下载站搭建
H5ai
2024年01月31日
52 阅读
0 评论
1 点赞
2023-03-02
服务器折腾笔记
服务器折腾笔记最近沉迷ai绘画,想着组装一台服务器跑ai绘画模型用,鉴于最近R730xd骨折,就打算自己装一台,正好也学习一下硬件知识一 、服务器硬件组装1.1R730XD介绍戴尔易安信PowerEdge R730XD发布于2014年,是一款产品结构为2U(1U=4.445厘米)的机架式服务器具体参数:处理器:CPU支持E5 2600系 v3 v4处理器内存:有24个内存扩展槽,最大支持768G硬盘: 有多种组合,常见的是12个3.5盘位+2个2.5盘位阵列卡 支持H330和H730,H730可组RAID0、1、5、6、10、50、60扩展槽:6个PCI接口,可放一张全尺寸显卡电源: 最大双电750w或495w,热拔插冗余电源尺寸:705*483*87mm (需要1000深的机柜)1.2硬件选购在咸鱼斗志斗勇,捡垃圾砍价买齐了所有配件,中间也是折腾了很久,毕竟二手货,但是还好没有翻车,一切都是自己摸索着来的服务器准系统 :戴尔R730xd 1400¥H730阵列卡,12*3.5盘位+2*2.5盘位 全盘架,双散,双电750w,4*千兆网口,带背板CPU : E5 2698bV3 *2 450¥16核心 32线程,主频2.0G 打鸡血满载可到3.0 性价比U 并且支持D4和D3内存cpu测评显卡 : 特斯拉p40 24g缓存 949¥sdwebUI标准尺寸跑图12秒内存: 镁光d4 2rx4 2133 16G*8 1040¥需要购买ecc专用内存,可以错误检查和纠正硬盘:固态: 京造 480g 2.5盘固态 187¥机械:日立4t sas * 5 660¥ (也支持stat接口硬盘,stat为sas的一种子协议,只不过sas服务器专用的二手盘更便宜)配件:螺丝:15.4¥显卡供电线: 38¥总价 :4740¥,一套高性价比服务器就搭好了1.2.1后续 2023.3.2cpu这玩意水太深,买来一个月贬值一半,最开始用的2698bv3,后来出掉换的2680V4这个U.功耗稍微低一点,买价300一颗还不包邮,两颗600块,现在已经不到140一颗了,然后又配了一台服务器直接上的2696v4也是一周内单颗降了50块,系统盘还是换了raid1阵列安全一些,毕竟现在固态也不贵,国产固态崛起,国外的大厂也就不容易起火了第一台服务器配置服务器准系统 :戴尔R730xd 1400¥CPU : E5 2680v4 *2 450¥显卡 :特斯拉P40 24g缓存 949¥特斯拉P4 8g缓存 380¥内存: 镁光d4 2rx4 2133 16G8 1040¥ + 海力士d4 2rx4 2133 16G16 1688¥硬盘:固态:京造 960g 2.5盘固态 *2 (raid1) 685¥机械:日立4t sas * 5 (raid5) 660¥合计: 7252第二台服务器配置服务器准系统 :戴尔R730xd 1100¥ (跟之前同配置,价格也跌了)CPU : E5 2696v4 *2 1700¥显卡 : 特斯拉T40 24g缓存 775¥ (跌的心疼)内存: 三星d4 4rx4 2133 32G*8 1720¥硬盘:固态:三星780evo 1t 2.5盘固态 *2 (raid1) 1200¥机械:希捷4t stat * 3 (raid5) 660¥合计: 7155其他配件机柜买的 1.2m*600宽*1000深的 745¥导轨买了四对静态导轨 *2 240¥动态导轨*2 440 ¥备用sas硬盘 日立4t *2 280¥螺丝:15.4¥显卡供电线*2 76¥注册机及其他软件 :46.8 ¥合计:1843总计:16250 不算不知道一算吓一跳,再加上电费,专线费一年两三万出去了1.3组装硬件硬盘 cpu 内存 显卡都提前到了,主机从北京发潍坊等了足足五天,可把我急坏了来自五湖四海的配件合照开搞之前还仔细看了一遍戴尔R730XD手册和结构图,生怕整错了1.3.1 开搞拿到服务器后,先拆下R730xd盖子,取出风道板,拆下散热器,其中一个散热器螺丝还滑丝了,废了好大劲才弄开,把散热器残留硅脂擦干净然后装上了CPU(CPU如果只装一个的话要装在CPU1槽)内存条全部插白色槽位(然后黑色最后绿色),组8通道 (R730xd这外观是真的好看,虽然是8年前的老古董了,设计还是可以的)机械硬盘一开始还插错了位置,没有用螺丝固定,后面又买了m3*5的镀锌沉头螺丝固态的螺丝没到的时候,直接插上面了,盘架都省了显卡是最折腾人的,一开始不会装,怎么装都装不下,后来又重试可以装,差点把显卡卖掉.送的转接线又不行,又重新买的转接线默认pcie接口识别不了p40显卡,所以无法预估发热量,风扇就会100%转速,需要手动设置风扇转速,这里我用github上的一个大佬的软件把风扇设置到了30%,软件下载地址,需要注意的是,解压文件要在英文路径下,打开软件使用管理员权限,服务器要打开impi权限网络通讯功能才可以,点击应用会有一点延迟,耐心等待即可,每次重启会失效,需要重新设置最后:装完以后一定要盖上盖板再开机,不然影响风道风扇也会以100%的转速吹,噪音贼大如果硬件读取不正确 需要到bios中清一下idrac的日志缓存启动按F10进入配置界面选择系统设置高级硬件设置idrac设置选择系统事件日志清除选择是,保存然后重启引导1.3.2细节图1.3.3指示灯异常总结正常情况下应该是运行状况指示灯蓝色常亮异常情况运行状况灯和硬盘灯黄灯闪烁,raid组硬盘丢失运行状况灯和电气灯黄灯闪烁,双电源只插了一个,冗余丢失CPU异常CPU 内部错误 (CPU IERR) 或 CPU 机器检查错误通常不是 CPU 本身的错误。而是 CPU 在系统中检测到错误或从系统组件接收到错误指令的迹象。它是由诸如固件不匹配、系统总线中断或内存读/写中断之类的非 CPU 事件引起。理论上,错误可能由任何系统组件、软件或硬件引起。警告:请勿卸下 CPU!CPU IERR 错误很少由 CPU 故障引起,对 CPU 的引用完全基于已报告错误的模块。尽管您可能在一些故障排除网站或论坛上看到这些内容,但除非经过培训并配备了相应的设备,否则请勿卸下CPU解决 CPU IERR要解决此错误,请按照故障处理的结构化计划确定哪个组件导致了该错误以及如何解决该错误。1.检查系统事件日志以查找是否有与CPU IERR同时发生的任何其他错误。2.如果发现任何其他错误,请先解决这些错误。解决错误的方式将取决于所发现的错误。3.将BIOS和iDRAC固件更新为最新版本。4.清除系统事件日志。也就是说,在Open Manage Server Administrator或iDRAC(对于两者,打开事件日志,滚动到底部并按“clear log”[清除日志]),除非从系统事件日志中清除了旧的CPU IERR错误,否则在错误解决后,它们将引起警报。5.如果未发现错误,或CPU IERR重现,请关闭系统、拔下电源线并按住服务器电源按钮20秒,然后再插回电源线并重新打开系统。这个过程被称为释放残余电量 (方法5解决)6.重新引导 f2进bios选system Setup - System BIOS ,选择 system profile Settings,进入后将右边的 Performance Per Watt(DAPC)改为 Custom内存条插满以后会降频,可以在上图memory Frequency中设置内存频率二、服务器系统&磁盘阵列配置组装好硬件第一步就是开机测试,插好键盘鼠标显示器,视频输出用的是vga接口,在家里翻了半天才找出来两根.连接外设开机,这一刻心里还挺忐忑万一硬件有故障还得退换货,而且都是散件谁出的问题都不一定按开机键后屏幕有输出,但是雪花屏还闪烁,一开始还以为是板载核显有啥问题,后来换了根线和显示器解决问题了2.1idrac设置显示器能正常显示以后,第一步是设置idacr接口IDRAC又称为Integrated Dell Remote Access Controller,也就是集成戴尔远程控制卡,这是戴尔服务器的独有功能,iDRAC卡相当于是附加在服务器上的一计算机,可以实现一对一的服务器远程管理与监控,通过与服务器主板上的管理芯片BMC进行通信,监控与管理服务器的硬件状态信息。它拥有自己的系统和IP地址,与服务器上的OS无关。是管理员进行远程访问和管理的利器开机按F10进入,先设置语言为中文,然后找到系统设置,IDRAC设置,设置好内网IP地址和网关,因为我没有插idarc网卡,所以启用nic那要选自己使用的网口,设置好以后保存重启即可(没有网的情况下可以用网线插idarc网口另一头插笔记本连接)通过自己刚刚设置的静态ip直接登录即可,默认用户名root密码是calvin,第一次登录后会让你更改默认用户名和密码(一开始连不上网也是折腾了半天,以为是ip设置冲突了,后来发现是交换机坏了,再后来发现网线头也坏了,又重新做了一个水晶头,仔细看网口的两个灯是否都正常)登录以后可以查看详细的设备信息,和服务器状态,以及开关机服务器,也可以登录虚拟控制台,这样就无须使用外设设置了虚拟控制台设置我用java打开一直提示网络中断,本地装的是jdk8.0不知道是不是版本有冲突,就使用的html5模式如果提示连接被拒重新登录一下idrac后,更改下视频加密启用状态再连接就可以了可以在idrac更新选项里更新驱动,R730XD驱动下载地址 ,更新bios和idrac登录 iDRAC转至 概览 > iDRAC 设置 > 更新和回滚 。此时会显示 Firmware Update(固件更新)页面。在Update(更新)选项卡中,选择Local(本地)作为File Location(文件位置)。单击Browse(浏览),选择所需组件的固件映像文件,然后单击Upload(上传)。上传完成后,Update Details 部分会显示上传到 iDRAC 的每个固件文件及其状态。如果固件映像文件有效且已成功上传, 则 Contents 列会在固件映像文件名旁边显示 (+) 图标。展开该名称可查看Device Name(设备名称)、Current(当前)和Available firmware version(可用固件版本)信息。选择所需的固件文件,然后执行以下操作之一:对于不需要主机系统重新启动的固件映像,请单击Install(安装)。例如,iDRAC固件文件。对于需要主机系统重新启动的固件映像,请单击Install and Reboot(安装并重启)或Install Next Reboot(下次重新启动时安装)。要取消固件更新,请单击Cancel(取消)。当您单击安装和重新引导或安装下次重新引导时, 会显示消息更新作业队列单击 Job Queue 以显示 Job Queue 页面,您可以在此页面查看和管理待处理的固件更新。您还可以单击 确定 以刷新当前页面并查看固件更新的状态。2.2设置raid阵列服务器系统只能装在阵列卡的盘组上,哪怕只有一块硬盘也要组raid0才能用,这里先讲一下阵列卡区别和raid的阵列,然后再讲一下怎么设置2.2.1阵列卡对比H330阵列卡(咸鱼大多数准系统带的卡)无缓存的,支持RAID 0 1 5 10 50入门级硬件阵列卡,不具备板载缓存,因此不要拿来做为RAID5 使用,典型的3盘RAID5配置读取速度在300-400M左右,还算正常,但写入速度最高不足20M/s IOPS相当低,连单块硬盘1/5的速度都不到,在较高业务IO应用场景,会严重影响系统运行效率H730阵列卡(当时做完功课才价钱买的带H730阵列卡的准系统)1G的缓存和电池 支持RAID 0 1 5 6 10 50 60缓存主要是用于硬盘写入加速,其工作原理主要是将大量的写IO请求数据先缓存起来,等缓存快用满时,再批量刷到磁盘上,降低机械硬盘同时读写而导致IO偏低的影响,后备电池则是防止服务器突然断电,缓存数据未刷到硬盘会导致数据丢失设计的,未写入硬盘的数据会在下次开机后自动回写同时RAID 5不建议超过8块机械硬盘 RAID0 1 5 6 10 50 60 模式 磁盘高速缓存:关闭 写策略:回写 预读策略:自适应预读固态硬盘 RAID0 5 模式 磁盘高速缓存:开启 写策略:直写 预读策略:不预读H730P阵列卡2G的缓存和电池 支持RAID 0 1 5 6 10 50 60此型号为H730的增强版,缓存增加到了2G,硬件处理能力也更高一点,对机械硬盘读写速度也有一定的提升,但区别没有H330和H730大,如果计划使用24盘位的机型并满配机械硬盘用于数据存储,或者用于大块文件读写,建议选择使用2.2.2 RAID组对比RAID全称Redundant Array of Independent Disks,中文简称磁盘冗余阵列,多个物理硬盘组成一块虚拟硬盘,从而达到安全且提高读写性能的要求raid0:采用剥离,数据将在几个磁盘上进行分割。数据被分成很多数据块,每一数据块会被写入不同的磁盘。从而,每一磁盘的工作负荷都得到了降低,这有助于加速数据传输最少需要两块硬盘,硬盘损坏会导致数据丢失存储量 100%raid1:通过磁盘镜像来实现,主要用来确保数据的可靠性。同样的数据将被复制存储到不同的磁盘上,如果某个磁盘出现故障,还可以在阵列内的某个磁盘上找到相应的数据,因此可以很容易地进行恢复最少需要两块硬盘,硬盘允许损坏一块,不会影响IO速率存储量 50%raid10:RAID-10是RAID-1和RAID-0的结合。在所有RAID等级中,性能、保护功能及容量都是最佳的求至少四块硬盘,硬盘允许损坏一块存储量 50%raid5:RAID-5通过一种称为奇偶检验的技术保持数据的冗余。在多个磁盘上进行数据剥离时,奇偶位数据也会包括在内并分布于阵列内的所有磁盘上。奇偶数据用于保持数据的完整性并在磁盘出现故障时进行重建。如果阵列内的某个磁盘出现故障,丢失的数据可以根据其它磁盘上的奇偶位数据进行重建最少需要三块硬盘,硬盘允许损坏一块,坏盘后严重影响IO速度存储量为(n-1)/n%,硬盘越多存储量百分比越大raid50RAID-50是RAID-5与RAID-0的结合。此配置在RAID-5的子磁盘组的每个磁盘上进行包括奇偶信息在内的数据的剥离。每个RAID-5子磁盘组要求三个硬盘,允许某个组内有一个磁盘出现故障,而不会造成数据丢失RAID-5子磁盘组至少两组,每个盘组至少三块,最小组合需要六块,硬盘允许损坏一块存储量为(n-x)/n%,x为RAID-5子磁盘组数量raid6raid6是在raid5的基础上为了加强数据保护而设计的求至少四块硬盘,硬盘允许损坏两块存储量为(n-2)/n%2.2.3 设置raid详细步骤因为我对速率没啥太大要求,为了节省硬盘选的raid5阵列,固态硬盘用来存放系统选的raid1先进入idrac虚拟控制台,然后选择冷引导,按F10进入设置(按键要是没反应,用虚拟键盘的按键),修改引导方式为bios引导,然后保存重新引导(默认是bios引导可以省略这一步)bios引导重启时 出现黑窗口界面 按ctrl+R进入阵列卡设置界面选中阵列按F2对阵列进行操作,新加阵列选择阵列卡按F2进行操作格式化一下阵列配置好的界面,可以看到整个阵列卡信息,有两个盘组两个虚拟磁盘五个物理磁盘,这样就配置好了,按esc退出,ctrl+alt+del重启2.2.4 其他硬盘问题硬盘状态变为foreign https://blog.csdn.net/weixin_44265882/article/details/117014559DELL的服务器有一块硬盘坏了,需要更换。把旧的硬盘拔下,插入新的硬盘,由于这块硬盘不是之前做阵列的时候的。所以插上去会提示foreign,只要把新的硬盘加入到阵列中即可。2.进入PD Mgmt中查看故障盘的状态(foreign:外来的,online:正常,missing:磁盘未找到,failed:失败)导入硬盘,点确定即可,然后保存退出把引导重新改回uef面板信息若依然异常,检查日志和硬件信息.都无异常断电重启即可恢复三 、安装ESXI系统系统我选的是exis,当然也可以选用pve这个看个人喜好,要注意的是安装linux和exis需要把引导模式设为uef,安装win需要把引导模式改为bios,所以上一步组阵列设置了bios还需要再改回uef才能正常安装2.1烧录镜像准备好系统盘 ,修改引导为uefi重启按f11 选择启动盘开始安装回车下一步,再按F11选择安装磁盘,回车确认键盘回车,然后输入esxiroot用户密码 需要8位以上包含数字字母特殊字符,确认下一步按F11安装等安装完后会提示你拔下U盘并重启,就会启动esxi了(如果卡黑窗口按F1 进入系统)启动以后可以在界面查看esix的部署信息,以及ip地址通过ip地址访问esxi系统界面,安装完成(用户为root,密码为前面自己设定的)2.2 获取认证证书使用注册机或以下许可证获取esxi长期支持,并检查是否生效(过期时间永不失效)exsi6.7许可证 0A65P-00HD0-3Z5M1-M097M-22P7H exsi7许可证 JJ2WR-25L9P-H71A8-6J20P-C0K3F HN2X0-0DH5M-M78Q1-780HH-CN214 JH09A-2YL84-M7EC8-FL0K2-3N2J22.3 esxi离线升级步骤升级前需要先停用所有已启用虚拟机,开启维护模式和ssh 然后用xshell连接 ,升级补丁提前上传到服务器 ,复制好服务器硬盘路径 (可以去[vm官网](https://customerconnect.vmware.com/patch)找,需要注册,注册失败可以试试选美国,province选择California,city填Sacramento,邮政编码94205)通过ip地址和用户名密码连接到esix的sshcd 刚刚复制的磁盘路径 #ll查看补丁是否存在 vmware -v #查看当前版本 esxcli software vib install -d "/vmfs/volumes/63f8e66e-a8244c0c-a8aa-ecf4bbd445c8/ESXi670-202201001updeta.zip" #""中为补丁在硬盘中的路径 如果安装失败则使用 -f强制安装,或手动删除依赖冲突 reoot #安装完后重启,从esxi web界面查看是否升级成功2.4安装虚拟机首先把准备好的镜像文件上传到硬盘存储中虚拟机点击创建虚拟机选择创建新虚拟机,然后设置名称跟兼容性以及系统版本配置虚拟机硬件引导默认efi改为bios,然后保存打开电源设置,就会进行winodws系统安装步骤设置完以后需要安装VMware Tools,否则默认显卡无法使用关闭虚拟机,然后点击设置安装tools系统会自动重启并挂载vmtools的镜像,打开我的电脑的光驱,点击安装镜像文件,然后无脑一下步即可,重启完成安装重启依旧虚拟机常见问题默认不添加声卡,需要手动添加无法修改硬盘容量是因为有快照,删除快照就好了无法启动的虚拟机,维护模式下sshvim-cmd vmsvc/unregister 13 #13为标识2.5安装esxi显卡驱动vgpu授权只支持14.4 -14.2 的驱动,分别需要esxi7.0.3和exis7.0.2,这里我装的7.0.3所以装14.4的驱动P40设置为禁用直通上传esxi显卡驱动的vib文件(7.0.2的驱动向上兼容 8.0也能兼容)到服务器硬盘,记住硬盘的地址,关闭所有虚拟机打开维护模式,启用ssh连接esxi,这里ssh连接工具使用xshell,输入ip地址,用户名密码连接,密码必须键盘手动输入才行安装驱动命令 esxcli software vib install -v vib文件路径,注意必须使用绝对路径否则报错更新驱动命令esxcli software vib update -v vib文件路径reboot 重启,时间久一点而且需要重新打开ssh权限nvidia-smi重启后验证是否装好 若ecc不为off 输入 nvidia-smi -e 0关闭ecc,启用或者关闭ECC都需要重启主机检查驱动 lspci | grep NVIDIA关闭维护模式和ssh四 、安装VCSA和vgpu全步骤4.1 esxi和VCSA关系vSphere 的两个核心组件是ESXi和vCenter ServerESXi 用于创建并运行虚拟机和虚拟设备的虚拟化平台,ESXi是直接安装在物理机器上的,是采用Linux内核的虚拟化专用操作系统vCenter Server是一项服务,用于管理网络中连接的多个主机,并将主机资源池化。一个vcsa可以管理多个esxi主机4.2 安装vcsa镜像参考链接https://baijiahao.baidu.com/s?id=1718644330105702853&wfr=spider&for=pchttps://blog.csdn.net/sj349781478/article/details/121172209https://zhuanlan.zhihu.com/p/359001834vcsa必须跟esxi版本一致,7.0.3的esxi就需要7.0的vcsa,vm官网下载对应的镜像,然后挂载到本机电脑上,这里用win电脑举例下好以后,双击镜像挂载到DVD驱动器,找到vcsa-ui-install/win32/install 安装点击安装,然后下一步,确认已知配置VCSA安装位置配置VCSA名称 ssh密码根据需求选择自己的大小,我就两台服务器所以选微型选择安装硬盘位置配置VCSA网络,然后点击完成等待第一阶段部署继续第二阶段与主机同步,禁用ssh然后下一步sso配置vsphere.local不加入客户体验提升计划,并下一步,然后点击完成,开始第二阶段安装通过ip地址访问管理界面,输入用户密码登录administrator@vsphere.local4.3 绑定esxi主机新建数据中心这里我不搭集群直接添加主机即可输入ip地址,然后下一步继续输入用户名密码确定,下一步先分配试用证书即可配置登录权限,这里我用的禁止,可以根据自己需求来选继续下一步,点确定,到此绑定完成4.4分配许可证使用注册机生成激活码,添加许可证添加完成(有!是因为还没有分配证书)分配许可证VCSA分配证书ESXI主机分配证书 4.5 配置P40显卡共享类型默认情况下vSphere会使用vsga模式在主机硬件类里找到图形,选择直接共享主机开启维护模式开启ssh 输入nvidia-smi查看是否生效五.安装授权服务器licserve英伟达vdws vgpu lic授权200个(可多开叠加) 永久有效 无限时间!此bin文件适用于14.2 14.3 14.4的licserver,可授权的驱动版本最高到2022年11月的515,524版本。支持m60,rtx6000,rtx8000显卡等具体官网了解NVIDIA GRID 授权许可 vDWS vws vPC vApp永久许可适用于V100 A100 A40 A10RTX600 RTX 8000 RTX A6000 RTX A5000 M60 M6 M10 P100 P6 P4 P40 T4等所有GRID系列.安装授权请先打开下面网站了解详细介绍 https://docs.nvidia.com/grid/5.1 安装centos精简版系统使用centos7精简版,占用小本身做授权服务器也无需多高配置,1h2g即可提前准备好镜像上传到服务器,创建好centos虚拟机因为部署VCSA,所有esxi统一被管理,只能在vcsa上创建新的虚拟机,大体步骤基本上一致,这里不再赘述修改虚拟机网卡选择手动 8a:50:13:0c:ae:06 (200个授权 76:A5:48:4D:7E:20)开启虚拟机后,在系统设置中,关闭虚拟机的时间自动同步,将时间改为 2018年7月19号(200个授权的日期为2020-02-04 18:40:00),并关闭NTP自动同步连接网络,自行配置IP以及其他网络信息然后打开以太网进行下一步设置root密码并等待系统安装完成并重启5.2 安装授权服务通过ssh远程连接到contos(直接html5页面访问虚拟机也可以),安装必要软件yum update -y #更新系统 yum install java -y #安装java8&tomcat yum install tomcat tomcat-webapps -y上传licserve文件centos ssh创建文件夹 mkdir zhaoyongbin本机移动到文件解压目录执行CMD指令 scp setup.bin root@centosIP地址:刚刚创建的文件夹名称 输入密码上传centos ssh 移动到创建的文件夹中输入ll检查文件在不在创建的文件夹里运行授权服务chmod 777 setup.bin 设置文件最高权限./setup.bin 启动服务一路按回车,有确认就同意Y填写tomcat路径 默认安装路径 /usr/share/tomcat ,默认端口 7070授权端口 8080管理端口,然后继续回车等待服务启动5.3 关闭防火墙设置服务自启systemctl stop firewalld #停止防护墙 systemctl disable firewalld #禁用防火墙自启服务 systemctl start tomcat.service #启动tomcat服务 systemctl enable tomcat.service #设置tomcat服务自启 systemctl status tomcat.service #查看服务状态 systemctl list-unit-files #查看所有自启服务 we前后 q退出5.4 验证授权服务器并导入授权文件验证服务是否正常运行,访问 http://192.168.32.203:8080/licserver导入授权文件5.5 打开NTP自动同步改回正确的时间上传完成后改回正确的时间并打开NTP自动同步 参考连接yum -y install chrony #安装软件 systemctl enable chronyd #开机自启 systemctl start chronyd #启动 timedatectl status #查看时间同步状态 timedatectl set-ntp true #开启网络时间同步 date #查看系统时间是否正确5.6 设置虚拟机自启参考链接VCSA和licserve都是必需虚拟机,每次重启服务器手动开启太麻烦,因此我们设置自启选择esxi中的管理-系统-自动启动-编辑设置选择为启用,启动延迟改为30秒,停止延迟改为0秒,默认都为120秒,可根据自己或客户需求更改,然后保存将虚拟机配置开机启动可根据需求设置自启顺序重启esxi主机测试虚拟机自启服务是否正常,以及授权服务是否自启正常六、配置win10虚拟机之前已经搭好了一个win虚拟机,但是需要配置一下才能正常使用P40显卡6.1 备份虚拟机手动在esxi界面中添加声卡 不然没有声音win10虚拟机更新系统安装VMwaretools 不然没有默认显示处理器安装向日葵和驱动之前克隆虚拟机,原虚拟机作为备份可以修改硬件配置确认完成后等待虚拟机复制完成6.2 安装向日葵等远程软件打开刚刚复制好的镜像,安装向日葵软件,设置开启自启并记好登录密码,因为装好P40驱动后重启默认连接的是副屏,导致虚拟机无法正常操作安装parsec (parsec移动网会连不上)6.3 安装GUID显卡驱动安装完远程软件就可以配置显卡了,关闭虚拟机,添加pci设备虚拟化vgpu分配6g显存重启虚拟机,在设备管理器中看一下显卡是否已经识别下载对应版本的GUID驱动,并安装无脑下一步安装完成以后重启虚拟机 (安装失败有可能系统未更新导致)6.4 配置代理服务器安装完驱动以后,就只能通过远程软件访问,这里我们使用向日葵连接打开英伟达驱动面板,输入授权服务器IP地址和端口号然后应用可以看到授权成功在授权服务器页面也能看到认证信息6.5 解锁144帧率P40为了保证稳定性默认限制锁60帧,我们需借助软件解锁144帧率,来达到完整的性能释放虚拟机配置文件加一行pciPassthru0.cfg.frame_rate_limiter = 0解锁60帧限制使用cru添加1080P 144帧 屏幕参数让配置生效在设置-系统-屏幕中 找到高级显示设置确认完后保留更改,此时帧率已设置为144把该屏幕设置为主屏幕且仅在该屏显示可以通过鲁大师跑分测试帧率6.6 其他设置&问题系统设置里设置禁止主机自动休眠,不然长时间待机向日葵连不上需要重启才能连接vmware EXSI虚拟机加NVIDIA VGPU后,内存大于32GB无法开机,虚拟机需要加入参数
2023年03月02日
588 阅读
2 评论
4 点赞
1
2
3