- 博客(161)
- 资源 (7)
- 收藏
- 关注
原创 如何在Power Linux上运行AIX程序(实现验证,附源码开源地址)
最后更新2021/1/10静心研究了小半年,终于把原型验证搞定了,可以在Power Linux上直接运行AIX程序。当然,目前只是实现了POC,还有大量的工程工作。源代码下载地址:https://gitee.com/HarryHurryHungry/xcuse
2021-11-28 14:38:45 701
原创 Essential Google Cloud Infrastructure: Foundation
最后更新2022/04/12google的课程没搞明白,好多重复,也无所谓了,可能更适合我这种看书学习不求甚解的人——一遍一遍深入嘛,每看一遍相关的内容,做一遍笔记,自然就了解得更多,可能也解决了相应的问题。由于大部分都已经重复过,这里只记录一些以前忘记的,重要的,有意思的东西。有四种方式可以访问GCP,gui console;shell;API(SDK,Library,RESTful API);最后是cloud mobile api,就是手机上用的东东。shell里执行的命令其实也是API的一部分,
2022-04-15 03:30:21 345
原创 GCP application performance management lab
最后更新2022/03/19这是这节最后一个实验了,加油!照例先enable service,然后下载repository,再build一下。再开一个cloud shell(点一下头部标识中的+),下载另一个用于debug的repository。在本地(cloud shell)安装一下dependency,然后本地测试,看看是否正常,这是一个摄氏华氏温度转换的小网页程序。测试OK后要转为app engine部署,照例先创建app engine,再deploy有(通过省缺的app.yaml)转到app
2022-03-19 17:30:27 300
原创 GCP Cloud Audit Logs,Network Trafic with VPC Flow Logs Lab
最后更新2022/03/18先到IAM,audit logs,在filter用google cloud storage找到storage,然后查看一下右侧的属性,总共有四种:admin readadmin writedata readdata write其中admin write对于admin来说是永存的。admin相当于可以操作元数据,而data则是具体log数据。实验要求其它三种授权,都点上然后save下面要生成一些log,先创建存储空间:gsutil mb gs://$DEVSHELL
2022-03-19 15:11:52 671
原创 GCP Advanced Logging and Analysis Lab
最后更新2022/03/19这个室验是对log进行分析,还是先创建实验环境。最早的笔记里记录了登录实验环境第一步就是校验和设置用户、project,后来就没有写,但这个很重要。gcp里大部分资源都是以project划分的,如果没有切换到合适的project,那么在console中就看不到对应的信息,所以一定要设置正确或者及时切换到合适的project,对于每次都是不同用户登录的实验环境更是如此,以后不强调了,但切记,以下两条命令基本上是开cloud shell时必然首先要执行的两条命令:gcloud a
2022-03-19 10:47:47 479
原创 GCP Compute Logging and Montioring, Lab
最后更新2022/03/18这个lab是实现logging的,起始依然是创建engine,一个是vm,另一个是gke cluster,创建gke cluster时需要设置enable logging,没看到,有时间时再再创建一遍,找一下位置。但是创建完之后能看到cloud logging为system and workloads,cloud monitoring也是system,都OK,奇怪,难道缺省如此?补充,又重新创建了一下,创建的时候,左侧确实有各种选项,到feature一项,就可以看到对应log
2022-03-18 21:34:25 2571
原创 GCP Monitoring and Dashboarding Multiple Projects from a Single Workspace Lab
最后更新2022/03/17这个室验是一个dashboard看多个projects的信息。照例先进console,不同的是同时给了3个projects,记录好哪个用于monitor,哪个是worker1和worker2,具体没区别,但以后要一致。先在worker1 project里从marketplace选择nginx opensource packaged by bitnami,这是打包好的开发、部署资源,Launch一下,再deploy,名字设置为worker-1-server,别的都是省缺设置。
2022-03-18 12:10:31 2549
原创 Reliable Cloud Infrastructure: Design and Process学习笔记
最后更新2022/03/16忘记更新对应的学习笔记,补上。这一科有9节,加上0章简介简介google cloud的好多功能有点相似,这科内容是介绍应该选什么产品,怎么选择,怎么规划,怎么设计等等。首先,你要有个软件产品的设计思想,包括对需求和用户的定义,这个没人能帮你,要你自己解决,google cloud只是个辅助的实现工具,要拿这个工具干什么,你自己决定。有了这个核心设计思想之后,就要对实现过程进行解构,例如将大目标——10个亿,变成10个1个亿的小目标。。。在现代设计中,基于云架构的系统,最佳
2022-03-16 15:44:43 1372
原创 Monitoring Application in Google Cloud, Lab
最后更新2022/03/15登陆进来还是先开cmd shell,然后查看授权:gcloud auth listgcloud config list project如果不对,就要用gcloud config set user, gcloud config set project设置一下,一般是连续做几个室验,用不同用户登录时会混乱,建议学慢点,一个web开启做一个室验,然后都关掉。。。take it easy!创建个logging目录,再用git把室验用的repository下载下来。修改一下ma
2022-03-15 14:39:22 427
原创 GCP Deploying Apps to Google Cloud Lab
最后更新2022/03/14今天的室验是deploy app,和以前的好像有点重复,再来一遍吧,加深印象,另外还有些新操作。还是先下一个git repository,这个里面包括了python service main.py,requirements.txt,Dockerfile,还有html之类的,我要做的就是搞一个app.yaml,里面很简单,只有一行,设置一行:runtime: python 3.7Docker build test就不做了,因为都是git里面的,指定docker就好,提示一下
2022-03-14 13:25:24 2036
原创 GCP reliable google cloud infrastructure, devops lab
最后更新2022/03/13先到menu source repository里建立repository,还是不很好找,source repository在CI/CD分类里面。点右上角的add repository按钮,输名字devops-repo,选择好对应的project就创建完了,然后开个cloud shell,clone一下repository:gcloud source repos clone devops-repo然后用cloud console提供的edit,在devops-repo目录
2022-03-13 15:02:46 1892
原创 Essential Google Cloud Infrastructure: commands and notes in lab
最后更新2022/03/12查看用户及授权信息gcloud auth list查看当前projectgcloud config list project以及:gcloud config list --allcomponents是啥呢?当成是插件吧,或者说是gcloud支持功能的驱动:gcloud components list查看及设置当前缺省zone,regiongcloud config get-value compute/zonegcloud config set compute
2022-03-12 12:59:56 1144
原创 Essential Google Cloud Infrastructure: Foundation
最后更新2022/03/08有点事情,中断了几天,继续GCP。GCP Fundamental看完了,但是lab还没做,翻墙越脊的,太麻烦,过些时候方便了一起练习。继续学习下一课。essential系列其实是再走一遍fundamentals的全部介绍,但每一部分都更深入了一些。本篇Foundation着重在compute engine和networking(virtual machine,virtual network),另外两篇core service和scaling/automation则介绍其余的I
2022-03-08 15:53:07 3846
原创 devops之gcp core infrastructure fundamental,应用云;开发、部署、监控
最后更新2022/02/06下面来看看GCP提供什么应用PaaS服务。
2022-02-09 16:52:54 798
原创 CUDA试水
最后更新2022/02/07准备了好多天的gcp,docker,迫不及待先搞起来。在自己的本子上,还是要准备环境。搞了半天才发现,一直用的竟然还是WSL 1,汗,以为一直在用WSL 2呢!wsl2enable feature:enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart支持虚拟机:enable-feature /featurename:VirtualMachinePlatform
2022-02-07 18:08:04 714
原创 devops之gcp core infrastructure fundamental, 容器
最后更新2022/02/06kubernetes engine,GCP提供了k8s管理docker容器,这是介于:IaaS Infrastructure as a Service,提供了服务器(cpu,内存),文件系统,网络的计算引擎PaaS Preset runtime as a Service,提供应用应用引擎之间的东西,而且可能同时包含了两者的特点或者优势。一个完整的计算引擎需要考虑大量的操作系统相关的东西,而对于一个简单应用来说,好多都是无需提供,用不到的东西。额外的冗余并不总是好的,
2022-02-07 12:05:14 529
原创 devops之gcp core infrastructure fundamental, 存储
最后更新2022/02/06gcp的存储具有广义存储的意义,不仅仅是磁盘,更具有数据持久化的含义,而且格式很多有六种类型:cloud storage,这是传统存储,当然类型不是传统的FC,SCSI块设备存储,而是目标存储,说人话就是随便存的存储。那就是个目录、文件,你随便往里面扔就行了,直接用,可以跨整个internet提供,数据在传输过程中省缺就是SSL加密,对其它用户加密/保密(?不知道更确切是哪个),自由/动扩充,管理容易,没最低消费,按使用量付费。如果觉得上下传带宽不够,可以把物理介质(磁盘、
2022-02-06 14:27:31 831
原创 devops之gcp core infrastructure fundamental, 虚拟机及网络
最后更新2022/02/04介绍虚拟机及与虚拟机相关的技术Virtual Private Cloud (VPC虚拟私有云)网络每个project都有自己的VPC,你可以自由设置,可以把各种资源及Internet联在一起,也可以隔离开。创建project的时候可以创建特定的VPC,也可以使用省缺的VPC。VPC是全球统一规划的,而子网是地区专有的。这话说得不清楚,我的理解是VPC具有全球唯一性,你在亚太区定义了一个VPC123,那么在北美区就不能定义VPC123(如果也定义,它们是不是就是一个?或者就不
2022-02-04 12:44:31 596
原创 devops之gcp core infrastructure fundamental,开始动手前,用户、授权
最后更新2022/02/02gcp如果粗略参考着安全相关的内容,可以这么划分边界:google负责和管理基础设施安全用户负责自身数据安全google为你提供各种最佳实践、模板、产品和解决方案再进一步说,可以再详细切分一下:图中黄色部分由google负责,篮色部分由用户负责,这算是个分工界面定义吧,最左侧,全是篮色,那就是传统的方案:用户自己全管,自己建数据中心、采购设备等等。右侧则依次根据用户使用gcp的程度,有不同的分工界面。当然,google不会忘记自我吹捧一下:由于哥的规模太大了,远超
2022-02-03 12:53:08 756
原创 devops之gcp core infrastructure fundamental, 概念
最后更新2022/02/01参加了一个google的课程,不知道能不能坚持下来,今天第一讲:google cloud platform core infrastructure fundamental什么是cloud computing云计算云计算(更进一步说,其实是谷歌的云计算)有几个主要特征:按需求计量,自助服务。这里有两个关键点,第一是根据需求(或者叫做使用,用多少,算多少);另一个是自助完成,把原材料都准备好了,你自己用多少,拿多少,最后统一结账。期间看不到直接的人工干预,全过程都是你自己完
2022-02-01 18:19:01 657
原创 devops summary
最后更新2022/01/032022年是这样开年,为生活再次屈服了。。。啥时候可以不服呢?怎么觉得没这个可能了?好吧,与生活一致就可以了,叫做心从所欲不逾矩。从今天10点半开始学习devop,还好,有运维,开发,设计,测试,甚至学习的经验,还有啥不行呢?以前想持续做一件事情,做深做透。现实要求做所有的事情,做快,做好。其实并不矛盾。那么,开始。学习套路一,收集概念,开始搜索关键词(由无序的,无整理的到聚焦);devops是开发和运维结合的产物,将开发(甚至包括设计)流水线化的结果:设计->开发
2022-01-03 13:14:54 490
原创 qemu分析之linux-user 2
最后更新2021/12/30终于走到ppc代码call out的位置。如果是同架构cpu,glue代码做转换还相对容易一些,直接可以跳转过去,而且代码是统一的,相对简单一些。如果不同架构CPU,ABI不同,指令代码不同,这个glue code需要好好研究一下。看来未来一段时间,都要搞这个东西了。忽然想到了一个”捷径“,可以用原有写好的ppc (同架构)glue代码做桥接。具体来说,就是把ppc glue code作为guest代码load进来,类似库函数实现。而ppc glue code里面具体调用sy
2021-12-30 15:27:46 540
原创 qemu之linux-user分析 1
最后更新2021/12/26这几天研究qemu linux-user有关的问题,此地立个桩,把我认为值得记录的研究结果记录在此。qemu整体的编译不细说了,只针对我需要的ppc64相关关键记录,很大众特别是没遇到问题的过程就不记录了,也许以后整理全本说明的时候填充一下。另外由于我的最终目标是搞aix-user,与aix-user相关的内容也许会在这里有关联,但全部的内容应在另一个专题中,此处都是linux-user的东西。需要继续分析的标记为黑体,随时更新。前置通过configure定义目标,我用的是
2021-12-26 14:22:17 1175
原创 aix libc函数映射3
最后更新2021/12/22这两天研究qemu userspace tcg如何触发跳出guest转由host function call执行的问题,另外也碰巧和一帮人讨论userspace程序call kernel时到底发生了什么,两个问题都不约而同走到了一起。下面是最近研究的结果。注意:首先仅限于aix+linux+power指令集,如果是x86,可能有很大区别。甚至不同操作系统版本都可能有差别;其次,个人研究,不确保正确。当然,如果后续得到更确认的结论,我会更新本文,但你别依赖本文作为论据、证据;还
2021-12-22 15:29:20 384
原创 执行XCOFF(AIX)程序的两种方案比较
最后更新2021/12/17xcoff程序与AIX(OS)、Power服务器、Power ISA紧密绑定,尽管没有任何硬性规定xcoff不能跑在别的OS或者CPU之上,但到目前为止,这四者差不多四位一体,主体上是捆在一起的。Power ISA,只有IBM Power CPU一种实现,甚至用于嵌入式的PowerPC产品都越来越少了。当然IBM借助于OpenPower基金会,也做了若干努力,例如搞了一些新的开源产品,包括Microwatt等,这是在对抗x86和ARM扬汤止沸动作中,又拼命想移除RISC-V
2021-12-17 20:54:53 964
原创 qemu-linux-user ELF vs XCOFF 1
最后更新2021/12/14注:以下及以后本系列都是个人对相关技术在此时此刻的理解和研究,会根据学习深入,不断修正,但过去历史文章不见得会被(及时)修改订正,见谅。当然欢迎读者批评指正,本人虚心接受,但什么时候把文章修改正确,不好说。============================================qemu-linux-use利用linux binfmt执行机制(或者说代码)实现了对ELF的解析和加载。判断文件类型的机制是统一的,binfmt提供了两个方案:扩展名和MAGIC魔
2021-12-15 16:48:18 925
原创 ppc64abi32-aix-user设想
最后更新2021/12/11陆陆续续做了几个月的基础工作,拼凑一个个碎块,大概需要的脚垫准备齐全,要填的坑也都有了填坑的办法,准备再增加代码虚拟执行,让AIX应用直接跑在x86 Linux之上,同时也把在虚拟环境下,两套系统接口部分的方案搞清楚,确定下来:哪个效率更高?跑完整虚拟机,包括硬件设备驱动、BIOS都虚拟化,最终分界在虚拟硬件设备硬件接口部分;跑userspace代码虚拟,接口部分设定在应用程序调用系统调用部分;其实其中还穿插着AIX API与Linux API转换;PowerISA和
2021-12-11 12:36:02 461
原创 aix libc函数映射2
最后更新2021/13/04NLS,regex有了些眉目,然后曾经以为被填满的旧坑变成了陷阱。XMC_XO重定向出了问题,重定向结果不对,打击心情,陆续再继续研究吧。cut可以直接跑,没啥问题,算是第一个直接跑起来完全没问题的AIX 32位程序;TODO:grep, head, tail, tr目前都存在XMC_XO的问题,待解决。awk,crash 。。。more,需要libcurses.a,这个放以后;...
2021-12-04 17:54:02 159
原创 aix libc函数映射1
最后更新2021/11/29xcoff解析、重定向之后,要搬砖头盖长城了。libc/unix总共三千多个export的函数、变量要一个个搞定,大工程啊!先研究方案。极小化入口参数对照分析可能是个解决办法搞一个包含目标函数、变量的最小程序,分别在aix和pl上编译,然后对比入口参数。三种可能:完全一样,包括参数结构。中头彩了,直接用就好。大概一样,只有顺序不同,问题不大,也是二等奖,不过是在glue代码中做个转换,五分钟搞定。完全不一样,特别是包含名称相同但内容不同的结构体、没有对应的函数或
2021-11-30 11:10:24 750
原创 关于scsi锁的故事
最后更新2021/11/01一不小心,已经11月了。。。冬天围着火锅烤串喝啤酒的好日子。scsi锁的出发点很正确,谁用谁锁,用后开锁,目的是避免并行访问的时候有其它不知情的访问变更了数据,更狠毒的是变更了meta数据,整体存储数据结构就乱掉了,典型的防止上屋抽屉事件发生的设计。怎奈刚刚开始,既有自身设计考虑不周,经常有用后锁不释放的情况,也有主机OS驱动或者存储程序bug,甚至硬件链路问题,导致锁成了孤儿,挂在那里锁死了访问。当然,想当年,本高手还是一脑袋浆糊,也没这个先知先觉,于是共享磁盘7135
2021-11-01 13:27:54 523
原创 aix xcoff可执行文件分析4
最后更新2021/10/31十月最后一天收尾,遥遥无期漫无边际的前路有了可估计的日程。32位加载过程基本搞定,要写一个从头到尾的程序实现一下,忽然发现恐怖的libc shr.o竟然有3000多个依赖symbol !要是都搞一搞,奶油雪糕都凉了。想了一个偷懒的办法,从前往后,首先需要哪个,加载哪个;其次弄个universal的call,都去调用它,然后程序执行的时候输出被谁调用了,尽管程序fail,但是至少留下了遗言,把这个call解决之后再来,终究需要的call都能显示出来。对于小程序,估计十几个,最多几
2021-10-31 14:37:54 216
原创 4.2 一击必杀 (草稿)
最后更新2021/08/28在这一章总结了一些PowerVM设计和实现中的实战场景,都属于那种了解了原理和背后真相时候其实很简单,但在当时都耗费了若干天、星期去发现问题所在,去解决。先把想到的典型问题、场景写一下,慢慢展开讨论。读者如果有相关问题,请留言。不限于IBM PowerVM,AIX,但本人对其它平台不熟,可能无法快速找到问题所在。共享磁盘scsi锁。不是研究这个锁本身的是否设置的问题,这已经是AIX或任何操作系统的常识,在这要讨论的是AIX对应的参数放到了什么地方。VIO网络带宽使用率上
2021-08-28 14:35:22 90
原创 4.1.4 设计思路和常用方案(下)
最后更新2021/08/25没有免费的午餐,某一方做得很好,一定是另一方面比较差,如果所有放面都提高了,那么。。。实现比较麻烦,至少思考起来很麻烦:-) 。一定要牢记,真的没有例外,如果有例外,那是你认知不够,还没有意识到。一个架构从整体看,永远是越简洁越好。但为了达到特定的要求,如果无法在算法逻辑上做到更优化,逐渐添加鸡零狗碎打补丁是无可避免的事情。在设计之初不能做到简洁,则拖延系统上线时间,降低实现能力,甚至无法实现;在运行过程中不简洁,则如同二手房的旧厨房,不做整体的装修改造,满眼油烟污垢,满
2021-08-25 12:31:36 127
原创 4.1.4 规划、设计的艺术(技术)流派和常用技法(上)
最后更新2021/08/25超写实人工->脚本->批处理->微服务->公有云->公共IT基础设施 代表作品:Daniel Heilig手机作品 | +->网管->私有云 代表产品:冷军《小姜》Daniel Heilig手机作品图片引自:https://www.sohu.com/a/437592302_375507冷军《小姜》图片引自:http://collection.sina.co
2021-08-25 10:57:35 136
原创 4.1.3 为什么技术的尽头是艺术
最后更新2021/08/22我们面对太多的未知我们对自己也一无所知一切都随时间在改变,包括我们自己主观和客观的对立这些都是技术无法解决的终极问题,既然技术没办法,只好靠艺术了。艺术家是骗子么?架构师是骗子么?如何区分真架构师和假狗屎?正如看起来相似的画作背后的蕴涵和基础并不相同,相同的设计方案并不代表着有相同的思考过程。你见过的毕加索是这样:但你见过这样的毕加索么?而这是他13-14岁时的作品。(以上两幅画引自https://www.sohu.com/a/123335377_534761)
2021-08-25 10:14:50 568
原创 4.1.2 到底在规划、设计什么
最后更新2021/08/19以最简单,最朴素的语言说,规划、设计就是在拼凑一个框架,虚拟填补小说的事实,让最后一切发生的合情合理,顺乎自然,没有例外。规划,不能将悲剧的结局变成喜剧收尾,但依靠编剧的功底,能够将剧情玩弄于股掌之间,让每位观众在悲喜之间起伏跌宕。。。哦,说反了,其实是无感,规划、设计大师的目标是观众无感,走出剧场的观众甚至忘记了刚才在干嘛。。。做IT系统规划、设计的人有专有称号,被称为IT架构师,说起来有点可悲,所有其他行业的设计师都希望惊艳观众,唯独IT系统的设计师,最终极追求是透明、无感
2021-08-20 11:58:52 79
原创 4.1.1 比较几种虚拟化实现技术
最后更新2021/08/18虚拟化技术是一个非常笼统的概念,本身包含了很多维度的规范、定义。在前面章节已经从概念上对几个重要视角做了说明,例如关于资源共享和隔离的范畴和颗粒度,虚拟化所在的层次和相互关系等。通常,虚拟化的核心是对物理CPU的虚拟化,与此配合的会有整机虚拟化(虚拟机)、整机各组件虚拟化(CPU、内存、设备),或者软件的运行环境虚拟化等等。所有这些之中,最为重要的则是与CPU或者说是指令执行有关的虚拟化。今天,在IT业界,有许多虚拟化”品牌“或技术名词,它们实际上都是包含了特定虚拟化部分,实
2021-08-19 11:54:36 964
Essential Google Cloud Infrastructure: Foundation视频
2022-04-15
PowerPC 64bits ELF ABI version 1.9
2021-04-24
Linux on Power Architecture Platform Reference
2021-04-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人