区块链学习笔记(6(1),深入理解Linux运维的核心知识点

这篇具有很好参考价值的文章主要介绍了区块链学习笔记(6(1),深入理解Linux运维的核心知识点。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

(3)检查创世块文件

configtxgen -inspectBlock genesis_block.pb

(4)  检查通道文件(fabric2.2及以前会用到)

configtxgen -inspectChannelCreateTx channel.tx

3. 部署节点(通过docker-compose配置文件)

创建节点的方式有两种:

(1)在创建任何节点之前,必须在本机上自定义其配置文件。对于peer节点,该文件称为core.yaml,而orderer节点的配置文件称为orderer.yaml;

(2)使用一个docker容器,将docker节点跑在一个docker容器里面。

这里使用的是第二种方法,使用docker容器,首先将原来test-network里的compose文件夹下的compose-test-net.yaml和compose文件夹下的docker文件夹里的docker-compose-test-net.yaml两个文件结合成一个docker-compose.yaml文件,这里面包含了orderer和peer节点及相应的cli的配置信息,将里面相关环境变量的路径换成自己的路径

**注意事项!!!!**在创建peer节点时,我的peer节点每次一创建就会自动退出,查看日志说是缺少core文件,但通过docker容器创建节点时,core.yaml的配置信息其实都是放在了docker-compose.yaml里面的,所以一直找不到原因

区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习

最后发现问题出现在

 - ./crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com:/etc/hyperledger/fabric

卷映射上。在 Docker 中,当使用 - ./some/path:/another/path 这样的语法时,是在指定一个卷(volume)映射。这意味着 Docker 会将宿主机上的 ./some/path 目录或文件的内容复制到容器内的 /another/path 目录。注意这里的复制,严格意义来说,它并不是复制,而是替换。

例如./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com文件夹里有tsl和msp两个文件夹,而/etc/hyperledger/fabric有msp,tsl,ca等等文件或文件夹,这个映射生效后,/etc/hyperledger/fabric里的文件就只有映射过来的msp和tsl文件夹,其他文件夹和文件会丢失。因此,为了避免意外地覆盖容器内的现有文件和子目录,应该确保每个卷映射都是精确的,只映射确实想要替换的文件或目录。

在docker-compose.yaml文件夹的节点 volumes配置里,将上面的内容该为下面的

 - ./crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp:/etc/hyperledger/fabric/msp
 - ./crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls:/etc/hyperledger/fabric/tls

得到了正确的创建效果,节点也不会自动关闭退出网络。状态均为up。

区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习

4.将节点加入通道

4.1 加入orderer节点进入通道,激活通道

创建了创世块文件之后,通道相当于进行了初始化,但里面什么都没有,并且也没有任何节点加入里面,加入第一个节点进入通道,类似于激活通道。

export OSN_TLS_CA_ROOT_CERT=${PWD}/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
export ADMIN_TLS_SIGN_CERT=${PWD}/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt
export ADMIN_TLS_PRIVATE_KEY=${PWD}/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key
osnadmin channel join --channelID hellofabric-channel --config-block ./channel-artifacts/genesis_block.pb -o orderer.example.com:7053 --ca-file $OSN_TLS_CA_ROOT_CERT --client-cert $ADMIN_TLS_SIGN_CERT --client-key $ADMIN_TLS_PRIVATE_KEY

因为在这个过程中,我的代码报了很多错误,总是在tls连接时出错,为此我检查了很多地方,但总是感觉没什么问题,弄了很久都没弄出来。

辅助验证错误的工具

证书检查

检查证书是否存在并正确配置

openssl verify -verbose -CAfile $OSN_TLS_CA_ROOT_CERT $ADMIN_TLS_SIGN_CERT

检查证书的有效性

openssl x509 -text -noout -in /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem

网络检查

docker inspect <容器名/容器id>

可以查看到容器的ip配置

然后通过ping和talnet命令来进行检测

检查防火墙配置

sudo iptables -L INPUT -n -v | grep :7050

最后查出来原因在于我的-o写的有问题,端口要和orderer节点所监听的端口对应,也不能忘了写端口。-o这一部分出错,就会对网络配置产生影响,在控制台就会出现tls握手出错的问题。

4.2 加入普通节点

首先要进入容器内部来创建通道

docker exec -it cli1 bash

peer channel join -b ./channel-artifacts/genesis_block.pb

区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习

我这里是把节点放在两个cli容器的

4.3 为通道设置锚节点

锚节点的作用就是让不同组织底下的节点互相能够进行通讯,发现对方的节点。

进入cli1容器中,获取配置文件并输入到指定文件

peer channel fetch config channel-artifacts/config_block.pb -o orderer.example.com:7050 --ordererTLSHostnameOverride orderer.example.com -c hellofabric-channel --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem

进入channel-artifacts文件夹下,使用 configtxlator 工具来进行通道配置任务(该工具主要由两个功能,一个是执行 protobuf 和 json 两种数据结构的转换,另一个是执行配置更新)。

首先,将配置块信息从 protobuf 类型转换为可读的 json 类型

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习
区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习
区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习
区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习
区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习

为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。

区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习

本份面试集锦涵盖了

  • 174 道运维工程师面试题
  • 128道k8s面试题
  • 108道shell脚本面试题
  • 200道Linux面试题
  • 51道docker面试题
  • 35道Jenkis面试题
  • 78道MongoDB面试题
  • 17道ansible面试题
  • 60道dubbo面试题
  • 53道kafka面试
  • 18道mysql面试题
  • 40道nginx面试题
  • 77道redis面试题
  • 28道zookeeper

总计 1000+ 道面试题, 内容 又全含金量又高

  • 174道运维工程师面试题

1、什么是运维?

2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

3、现在给你三百台服务器,你怎么对他们进行管理?

4、简述raid0 raid1raid5二种工作模式的工作原理及特点

5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

7、Tomcat和Resin有什么区别,工作中你怎么选择?

8、什么是中间件?什么是jdk?

9、讲述一下Tomcat8005、8009、8080三个端口的含义?

10、什么叫CDN?

11、什么叫网站灰度发布?

12、简述DNS进行域名解析的过程?

13、RabbitMQ是什么东西?

14、讲一下Keepalived的工作原理?

15、讲述一下LVS三种模式的工作过程?

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

17、如何重置mysql root密码?

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
区块链学习笔记(6(1),深入理解Linux运维的核心知识点,2024年程序员学习,运维,区块链,学习

讲一下Keepalived的工作原理?

15、讲述一下LVS三种模式的工作过程?

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

17、如何重置mysql root密码?

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-ic3laK6k-1712613797973)]文章来源地址https://www.toymoban.com/news/detail-861521.html

到了这里,关于区块链学习笔记(6(1),深入理解Linux运维的核心知识点的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • DevOps理念:开发与运维的融合

    在现代软件开发领域,DevOps 不仅仅是一个流行的词汇,更是一种文化、一种哲学和一种方法论。 DevOps 的核心理念是通过开发和运维之间的紧密合作,实现快速交付、高质量和持续创新。 本文将深入探讨 DevOps 文化的重要性、原则以及如何在团队中实现开发与运维的融合。

    2024年02月10日
    浏览(1)
  • 《深入理解计算机系统(CSAPP)》第8章 异常控制流 - 学习笔记

    写在前面的话:此系列文章为笔者学习CSAPP时的个人笔记,分享出来与大家学习交流,目录大体与《深入理解计算机系统》书本一致。因是初次预习时写的笔记,在复习回看时发现部分内容存在一些小问题,因时间紧张来不及再次整理总结,希望读者理解。 《深入理解计算机

    2024年02月08日
    浏览(1)
  • 《深入理解计算机系统(CSAPP)》第6章 存储器层次结构 - 学习笔记

    写在前面的话:此系列文章为笔者学习CSAPP时的个人笔记,分享出来与大家学习交流,目录大体与《深入理解计算机系统》书本一致。因是初次预习时写的笔记,在复习回看时发现部分内容存在一些小问题,因时间紧张来不及再次整理总结,希望读者理解。 《深入理解计算机

    2024年02月06日
    浏览(1)
  • 重温《深入理解Java虚拟机:JVM高级特性与最佳实践(第二版)》 –– 学习笔记(一)

    第1章:走近Java 1.1 Java的技术体系 SUN 官方所定义的 Java 技术体系包括:Java程序设计语言、Java虚拟机、Class文件格式、Java API类库、第三方(商业机构和开源社区)Java类库。 其中,「Java程序设计语言」、「Java虚拟机」、「Java API类」这三个被称为 JDK(Java Deployment Kit),即

    2024年01月23日
    浏览(1)
  • 当DevOps遇见AI,智能运维的黄金时代开启

    卡斯帕罗夫和李世石真的败给了机器吗? 1996年3月9日(IBM的深蓝和谷歌的AlphaGo)在人类选手的对面,是人工智能汇集了所有人类智慧和经验的智能流算法,如果是这样的话人类必败无疑。 但反过来想如果人类也有一个人工智能辅助来比赛呢?那胜负就未尝可知了。 卡斯帕罗

    2023年04月26日
    浏览(1)
  • 深入理解区块链的工作原理

    作者:禅与计算机程序设计艺术 区块链是一个由分布式数据库组成的共享系统,它的独特之处在于它能够记录下所有历史上的数据,并通过一个公共的、不可篡改的 ledger(账本) 来记录所有交易记录和数据变更。通过这种方式,所有的用户都可以验证、验证交易记录和数据,

    2024年02月08日
    浏览(3)
  • 区块链钱包开发(Android篇),深入解析android核心组件和应用框架

    作用: 1、备份更容易。按照比特币的原则,尽量不要使用同一个地址,一个地址只使用一次,这样会导致频繁备份钱包。HD钱包只需要在创建时保存主密钥,通过主密钥可以派生出所有的子密钥。 2、私钥离线更安全。主私钥离线存储,主公钥在线使用,通过主公钥可以派生

    2024年03月24日
    浏览(1)
  • 【递归】:原理、应用与案例解析 ,助你深入理解递归核心思想

    递归在计算机科学中,递归是一种解决计算问题的方法,其中解决方案取决于同一类问题的更小子集 例如 递归遍历环形链表 基本情况(Base Case) :基本情况是递归函数中最简单的情况,它们通常是递归终止的条件。在基本情况下,递归函数会返回一个明确的值,而不再进行

    2024年02月21日
    浏览(2)
  • 详解Django请求与响应:深入理解Web Http交互的核心机制

    本文深入探讨了 Django 中的请求与响应处理,从 Django 请求和响应的基础知识、生命周期,到 HttpRequest 和 HttpResponse 对象的详细介绍。同时,讨论了 Django 的视图和请求、响应处理,以及安全性和异步处理的考虑。最后,对比了 Django 与 Flask、FastAPI 等框架在请求响应处理上的异

    2024年02月13日
    浏览(1)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包