当前位置:首页 » 云服务器 » 阿里云服务器运行pinode节点

阿里云服务器运行pinode节点

发布时间: 2024-01-04 01:34:41

⑴ 阿里云pi节点用多大的宽带

使用100m或以上的宽带网络。
PI将成为全世界瞩目的加密数字币,手机就可以免费挖矿,活跃矿工已经超过3000万,注册用户超过一亿,来自全世界200多个国家,其价值潜力远超越一般认知,也将会成为全世界广泛流通的数字货币,没有之一。
如果被选上成为普通节点或超级节点,则相当于建立一个世界级银行网点,收益将会源源不断!而现在正是PI币的大红利期,所以看明白的人都会要搭建属于自己的节点服务器。

⑵ 本地测试远程端口可以联通但是pinode节点端口打不开

一、预防休眠睡眠功能关闭电脑运行

1、开启[控制台]

2、点选[电源选项]

3、点选[按下电源按钮行为]

4、将按下电源钮、按下睡眠按钮、(笔记本再多出阖上笔电萤幕)两个或三个下拉式选项,皆选择[不进行动作]

5、回上一页,点选[变更电脑睡眠时间]

6、全部可下拉式选择[永不]

7、萤幕可设置自动关闭时间或是手动关闭(很多关闭萤幕键盘位置不同,网搜)

二、关闭win系统自动更新造成自动重新启动

1、开启[设置]

2、点击[更新与安全性]

3、点击[进阶选项]

4、在暂停更新下,选择选取日期(下拉式),选择最后面一天

三、关闭docker自动更新

1、鼠标移到docker图标右键

2、点击最上面[Settings]

3、将第二个勾取消(Automatically...)

4、右下点击[Apply&Restart]

四、检查其他软件自动连网更新

部分软件会自动重新启动电脑(例如:防毒软件、办公室软件、游戏软件),这部分请依据软件名称网搜取消自动更新方法。

节点的问题排除
一、测端口

我们大家都知道,竞选超节首要前提就是必须正确打开端口,打开端口首要前提就是必须开通ipv4公网,下面进入正题:

如何查看端口是否正确打开复制网址到浏览器:

https://pi-mods.de/nodeports/

点击scan,如果发现31401-31403 绿色open,就说明端口开放正常。

端口测试必须在pi node和docker正常运行(running)的前提下,测试才有准确!!!



由于大部分派友用的都是普通家用宽带,在上网高峰期的时候,测试端口可能会发现有时候31401-31403只能开一到两个端口,这是完全正常的,3个开一个,另外两个肯定也是开的,不放心可以测试多次,有一次全开就行。

二、查看本地区块高度,只要本地区块高度有变化就是正常的



图中红色框框部分就是区块高度,由于墙的原因,这里区块高度有人几秒钟变一次,有的几十秒,几分钟,甚至几十分钟或者更长时间才变化(这种情况通常是网络状况不好或者电脑关机或重启后没有及时打开程序导致长时间追赶区块导致),搞不清楚原理的,记住这里有变化就行了。另外还要补充一点就是区块高度下面有时候出现两个框框,这是长时间链接项目方主服务器超时导致,这个填写一次,就不用理会了 ,出现不出现框框都是正常的。0.4.7版本的节点主要测试功能就是当项目方主服务器链接不上或者不存在了,可以通过第三方已知节点带我们加入恒星区块链网络。

考虑到有的朋友英文太差,我下面简单的补充下这个界面英文的含义



上面那段英文的意思是:打开节点

你可以运行包含区块链的Node版本,通过打开下面的开关(小红点),你的计算机将运行一个Docker容器,该容器运行一致性算法,并使你能够观察Pi Testnet(pi测试网络),它会一直开着直到你把它关掉,你的计算机将不再运行区块链。

你是候选节点,我们还没有选择参与pi 测试网的超级节点或节点,需要通过KYC,我们将很快做出选择

三、查看故障排除页面



常见英文含义:Second秒,minute分钟,hour 小时,day天,month 月。

其实这个界面懒人只需要关注两点即可

那就是state:synced!所有的都不用看了,latest block 即使有延迟也是假延迟,看着不舒服的可以刷新。



或者同时按住CTRL+R快捷键刷新。

当state不是synced ,只要latest block不是特别离谱延迟几天也无需理会,程序会自动修复,这个节点程序是自动的,不需要你人为去干预。导致延迟有两大因素:一是长时间网络异常,例如网线松动接触不良或者上网高峰期,运营商机房线路故障,这种错误,一般网络异常情况解决了,程序能自动修复,如果异常的时间比较久了,程序不能修复,可以通过切换运行区块链的小红点开关来重启共识容器区块链程序。一关一开建议间隔20秒以上,以免操作过快导致程序崩溃。当然你也可以重启电脑来试着解决。二是节点程序本身的bug问题,当网络长时间异常或者意外关机,导致区块文件损坏或者内部程序出错,程序无法正常同步了,尝试了各种方法无果后,只能通过清除区块来解决,这种方法要慎用,不到万不得已不建议通过清除区块来解决问题。关于真假延迟可以通过命令查看,就是那个“每隔1分钟查看一次节点同步进度”批处理文件,双击即可打开



当看到state:Synced 说明没有延迟,即使有也是假延迟。

当看到最后一行是catching up 后面英文没有包含.json这几个字母并且没有长时间一动不动,都是正常的。

①端口检测容器:absent表示缺失,exited表示退出,这里无论显示什么都是正常状态,0.4.7无需开启端口检测容器:所以显示缺失,以前端口检测容器开启过,现在关闭状态就是显示退出。

② 节点状态:有3种状态,一开始joining SCP加入恒星网络,后来是Catching up 追赶区块中,Synced已经同步的。节点这3种状态根据网络状况是来回切换的,不能单纯看这个来决定节点是否正常。只要不是一直joining SCP都不需要人为干预,保持端口开放,程序会自动调整!

③ outgoing connections外出连接数,即最大能同时与远端节点链接数,系统设置不超过8个,不是0都是正常的;incoming connections:进来的连接数,即最大同时能服务别的节点连接数,系统设置不超过64个;连接数量多少没一定,主要取决于你的网络稳定性,也不能单独看这个来决定节点正常与否,如果没有公网ip,这里会一直显示0,如果你开通了公网ip,这里只要不是一直显示为0,节点都是正常状态。supporting other nodes:这里无论显示Yes or No 都是正常的。

④consencus container共识容器运行状态:分4种,首次创建是creating,启动状态是starting,正常运行状态是:running!!!退出exited

⑤ Remove all blockchain data:移除所有区块数据,建议谨慎操作,测试阶段,只有长时间不同步,可以试着进行移除操作,不建议频繁操作!!! 移除区块后要记得重新开启运行区块的小红点开关。

Latest block:最近的区块,这里可以查看区块延迟,现阶段普遍延迟,这块无论显示什么都是正常状态,Protocol version 协议版本显示与否都正常,由于墙的问题,安装日期和可用率都不用在意。

一句话总结:现阶段只要端口31401-31403处于open状态,别的数据都无需太在意。不要看到自己的区块高度和别人误差一点点就认为节点不正常了。家庭宽带出现网络波动是很正常的,当你网络出现波动时,这个时候你的区块高度肯定和别人有点误差的,这很正常,程序会自动追赶同步。由于墙的原因,导致有些数据不能及时从项目方服务器回传到本地,所以界面上看到的很多数据都不是实时的。

端口能正确开放,你的节点能正常同步你就是一个合格的待选节点!

⑶ 申请pi节点要公网还是家用网

节点是Pi生态系统中的第四个角色,只能运行普通电脑或者服务器上,Pi节点将负责验证分, 如果公网IP申请下来,再打开Pi node软件,

⑷ 两个服务器如何搭建pi节点

方法如下:
一、必备条件:1、一台电脑,笔记本或台式都可以,系统win10专业版,8G内存及以上2、阿里云服务器,有固定IP,1CPU,2G内存,2M宽带及以上。(注:阿里云服务器已经虚拟化,不支持二次虚拟化,所以不能直接部署Pi节点)二、购买阿里云服务器:购买方法:打开官网使用支付宝或淘宝账号登录选择“入门首选”立即购买即可(新用户仅96元一年,有条件的朋友建议买“最新代产”)操作系统选择windowsserver2008R2企业版64位中文版、带宽选择2M、1CPU2G内存确认购买即可。三、设置云服务器端口规则:设置方法:控制台点击左上角图标展开菜单,选择“云服务器ECS”点击你的云服务器名称本实例安全组点击安全组名称入方向、手动添加端口规则。四、部署云服:远程连接:首先重置实例密码,改成你的密码,并立即重启完成后我们点击远程连接,选择Workbench输入你的密码登录,即可进入云服务器桌面,跟我们的电脑一样。部署方法:1、开始管理工具服务器管理器角色添加角色下一步网络策略和访问服务、下一步下一步勾选“网络策略服务器”和“路由和远程访问服务”、下一步安装、完成后关闭。2、展开“角色”、右击“路由和远程访问”、点击“配置并启用路由和远程访问”下一步勾选“自定义配置”下一步勾选“VPN”和“NAT”,下一步完成、确定、启动服务。3、展开“IPv4”、右击“NAT”、新增接口本地连接、确定勾选“公用接口连接到Internet”及在此接口上启用NAT,确定右击“NAT”新增接口内部、确定勾选“专用接口连接到专用网络”确定。4、右击“路由和远程访问”、属性点击IPv4、静态地址池、输入起始IP与结束IP、确定点击“安全”、身份验证方法、勾选第234项、确定然后都选择“是”,等待完成即可。5、展开“配置”本地用户和组右击“用户”、新用户设置用户名pinode、密码、取消勾选选项、创建完成后关闭右击“pinode”、属性拨入、允许访问、分配静态IP地址、10.1.0.2、确定保存即可。6、下载TCPMapping工具(已经配置好),解压到服务器任意文件夹里打开即可,同时勾选“开机自动运行”。五、本地家庭电脑配置:设置方法:右击网络图标打开“网络和Internet”设置VPN、添加VPN连接VPN提供商选择“windows内置”、连接名称写Pi节点、服务器名称或地址填写你的云服务器公网IP,VPN类型选择点对点隧道协议、用户名与密码填写我们前面在服务器设置的,然后保存点击“Pi节点”进行连接,发现我们本地IP变成了公网IP。

⑸ 2020-08-25

Prometheus 实现邮件告警(Prometheus+Alertmanager+QQ邮箱或者网易163邮箱,目前测试过这两种邮箱都可以发送告警邮件)

Prometheus实现邮件告警原理如下:

Prometheus官方有一个附带的中间件:alertmanager,通过设置rules规则和路由转发可以实现邮件告警,前提是你需要有一个可以发送邮件的邮件服务端(可以自建或者使用互联网公司提供的免费邮箱)

告警原理图

Prometheus完整架构图

我之前得出的错误结论如下:

推荐直接在虚拟机操作系统上直接安装Prometheus和Alertmanager,不推荐其中任何一方在容器中运行,因为测试过在容器中运行Prometheus和alertmanager,结果出现如下错误情况

第一种情况是:我的node-exporter掉线跌机了(手动关机,模拟突然掉线跌机),Prometheus却提示节点依然在线?有时候却能够正常显示节点掉线跌机,生成告警发送邮件

第二种情况是:我的node-exporter掉线跌机了(手动关机,模拟突然掉线跌机),Prometheus提示节点掉线,告警生成,但是没有发送邮件,我手动恢复node-exporter后,告警解除,邮件能正常发送邮件提示告警已经解除。。。。

第三种情况是:我的node-exporter掉线跌机了(手动关机,模拟突然掉线跌机),Prometheus提示节点掉线,告警生成,正常成功发送邮件,我手动恢复node-exporter后,告警解除,邮件没有发送出来。。。。

以上三种情况之前经常出现,当时第一步以为是自己设置的scrape_interval不合理导致的,结果调试几次,问题没有解决,第二步以为是自己的服务器时间没有做到精确同步,然后我去设置和阿里云的ntp服务器同步,结果问题依然没有解决,第三步,换个方向,把alertmanager迁移到虚拟机操作系统上安装运行,问题解决!

北京时间是GMT+8小时,有些同志的时间可能是UTC的,但是如果是在要求不太十分精确的情况下,UTC时间是刚刚好等于GMT时间

为了避免时区的混乱,prometheus所有的组件内部都强制使用Unix时间,对外展示使用GMT时间。

要改时区有两个办法

1 .修改源码,重新编译

2. 使用 docker 运行 Prometheus,挂载本地时区文件

docker run --restart always -e TZ=Asia/Shanghai --hostname prometheus --name prometheus-server -d -p 9090:9090 -v /data/prometheus/server/data:/prometheus -v /data/prometheus/server/conf/prometheus.yml:/etc/prometheus/prometheus.yml -u root prom/prometheus:v2.5.0

正文开始

安装alertmanager

容器安装方式:

docker run -d --name alertmanager -p 9093:9093 -v /usr/local/Prometheus/alertmanager/alertmanager.yml:/etc/alertmanager/alertmanager.yml prom/alertmanager:latest

先在宿主机/usr/local/Prometheus下创建一个文件夹alertmanager,然后在文件夹里创建alertmanager.yml配置文件,待会才能映射到alertmanager容器里的/etc/alertmanager目录下

global:全局配置

   resolve_timeout: 问题解决的超时时间

   smtp_from: 发送告警邮件的邮箱账号

   smtp_smarthost: 邮箱 SMTP 服务地址,这里是以QQ邮箱为例,也可以用网易163邮箱,这个和我之前设置zabbix邮件告警时的配置一样

   smtp_auth_username: 如果没有设置邮箱别名,那就是账户名

   smtp_auth_password:  邮箱的授权码,不是 账户密码,你可以在QQ邮箱或者网易163邮箱网页端设置,开启 POP3/SMTP 服务时会提示,和配置zabbix邮件告警的时候几乎一样

   smtp_require_tls: 是否使用 tls,根据环境不同,来选择开启和关闭。如果提示报错 email.loginAuth failed: 530 Must issue a STARTTLS command first,那么就需要设置为 true。着重说明一下,如果开启了 tls,提示报错 starttls failed: x509: certificate signed by unknown authority,需要在 email_configs 下配置 insecure_skip_verify: true 来跳过 tls 验证。

templates: 告警模板目录,可以不编写模板,有默认模板

    Subject: '{{ template "email.default.subject" . }}'

    html: '{{ template "email.default.html" . }}'

route:报警的分发设置

    group_by:分组

    group_wait: 分组等待时间

    group_interval: 5m 每组时间间隔

    repeat_interval: 10m 重复间隔

    receiver: 接收方式,请注意!这里的名字要对应下面receivers中的任何一个名字,不然会报错,这里其实就是选择方式,有邮箱,企业微信,wehook,victorops等等

receivers:接受方式汇总,即告警方式汇总

例子:

receivers:

- name:'default-receiver' 

email_configs:

- to:'[email protected]'    

  html: '{{ template "alert.html" . }}'    

  headers: { Subject: "[WARN] 报警邮件test"}

inhibit_rules:   抑制规则

当存在与另一组匹配的警报(源)时,抑制规则将禁用与一组匹配的警报(目标)。

包括源匹配和目标匹配

alertmanager官方是这样说的

Inhibition

Inhibition is a concept of suppressing notifications for certain alerts if certain other alerts are already firing.

Example:  An alert is firing that informs that an entire cluster is not reachable. Alertmanager can be configured to mute all other alerts concerning this cluster if that particular alert is firing. This prevents notifications for hundreds or thousands of firing alerts that are unrelated to the actual issue.

Inhibitions are configured through the Alertmanager's configuration file.

当存在与另一组匹配器匹配的警报(源)时,禁止规则会使与一组匹配器匹配的警报(目标)静音。目标警报和源警报的equal列表中的标签名称都必须具有相同的标签值。

在语义上,缺少标签和带有空值的标签是同一件事。因此,如果equal源警报和目标警报都缺少列出的所有标签名称,则将应用禁止规则。

为了防止警报禁止自身,与规则的目标和源端 都 匹配的警报不能被警报(包括其本身)为真来禁止。但是,我们建议选择目标匹配器和源匹配器,以使警报永远不会同时匹配双方。这很容易进行推理,并且不会触发此特殊情况。

接着是规则rules

不解释了,自己研究官方文档

alertmanager的非容器安装方式是

 wget https://github.com/prometheus/alertmanager/releases/download/v0.20.0/alertmanager-0.20.0.linux-amd64.tar.gz

tar xf alertmanager-0.20.0.linux-amd64.tar.gz

mv alertmanager-0.20.0.linux-amd64 /usr/local/alertmanager

vim /usr/lib/systemd/system/alertmanager.service

[Unit]

Description=alertmanager

Documentation=https://github.com/prometheus/alertmanager

After=network.target

[Service]

Type=simple

User=root

ExecStart=/usr/local/alertmanager/alertmanager --config.file=/usr/local/alertmanager/alertmanager.yml

Restart=on-failure

[Install]

WantedBy=multi-user.target

Alertmanager 安装目录下默认有 alertmanager.yml 配置文件,可以创建新的配置文件,在启动时指定即可。

其余方式和上面一样

接着是Prometheus,我之前的博客里有写了容器安装和非容器安装的方法,自己去翻阅

然后是在prometheus.yml里修改相关配置

首先去掉alertmanager的注释,改成IP加你设置的端口号,默认是9093

接着在rule_files: 下面写下规则文件的绝对路径,可以是具体文件名,也可以是*,也可以分几级文件,*默认是全部匹配

接着是被监控项的设置,这里设置完成可以在Prometheus网页里的targets里看得到

请注意,这里设置的参数名字要和rule规则中设置的参数名字一模一样,否则你的prometheus服务会无法启动,然后报错

如果不在特定的job下设置scrape_interval(优先级高于全局),则默认采用gobal下的scrape_interval

最后模拟节点掉线,手动关闭node-exporter或者Cadvisor

docker stop node-exporter 或者容器ID

docker stop cadvisor 或者容器ID

或者把up{{job='prometheus'}} == 1 设置成1,反向设置,不用关掉服务,就可以看看告警成不成功

说明一下 Prometheus Alert 告警状态有三种状态:Inactive、Pending、Firing。

Inactive:非活动状态,表示正在监控,但是还未有任何警报触发。

Pending:表示这个警报必须被触发。由于警报可以被分组、压抑/抑制或静默/静音,所以等待验证,一旦所有的验证都通过,则将转到 Firing 状态。

Firing:将警报发送到 AlertManager,它将按照配置将警报的发送给所有接收者。一旦警报解除,则将状态转到 Inactive,如此循环。

没有配置告警模板时的默认告警格式是这样的

节点恢复后邮件告知是这样的

写了模板后是这样的

还要重新映射模板文件夹路径到alertmanager容器里的相对路径,然后重启alertmanager,当然,如果目录下没有模板文件,则不显示

告警模板

在alertmanager.yml中修改相关设置

重启alertmanager

docker restart alertmanager

最终效果不是很好

热点内容
电脑服务器详细介绍图 发布:2025-01-23 12:03:42 浏览:155
社保查询密码是什么东西 发布:2025-01-23 12:03:35 浏览:63
御龙在天脚本辅助 发布:2025-01-23 11:57:16 浏览:886
我的世界电脑版服务器号码 发布:2025-01-23 11:57:14 浏览:980
小科编程 发布:2025-01-23 11:48:55 浏览:673
安卓手机如何禁止未知软件安装 发布:2025-01-23 11:47:31 浏览:690
脚本我是一 发布:2025-01-23 11:44:27 浏览:642
安卓的哈灵麻将哪里下 发布:2025-01-23 11:26:17 浏览:230
全本免费阅读器在哪缓存 发布:2025-01-23 11:14:54 浏览:440
传输数据加密 发布:2025-01-23 11:03:20 浏览:256