正见——佛陀的证悟(一)诸行无常(选摘)
这是从《正见-佛陀的证悟》这书中,摘出来的句子,我认为有意义,或者对四法印中的诸行无常有理解的部分, 一直放在QQ空间中, 前两天拿出来看了一下, 觉得还是有不少的体会,所以把它搬过来了, 后续的内容是不是会更新还是要看我懒不懒了。 只是对老与死的厌恶,并不足以让太子离开王宫而踏入未知的世界;悉达多会采取这么激烈的行动,是因为**他实在无法合理地解释所有已生和将出生的一切众生命运就是如此而已。**如果所有生者都必须衰朽死亡,那么花园中的孔雀、珍宝、华盖、熏香、音乐,放拖鞋的金质拖盘、进口的玻璃水瓶、他与耶输陀罗和罗睺罗的感情、家庭、国家,都变得毫无意义。这一切的目的到底是什么? 完全不凭借任何科学工具,悉达多太子以吉祥草为垫,坐在一棵菩提树下,探索人类的本性。经过了长时间的思维,他终于了悟到**一切万有,包括我们的血肉、我们所有的情绪和我们所有的觉受,都是由两个以上的元素组合而成。**当两种或多种元素和合在一起,新的现象就会产生;钉子和木头产生了桌子;水和叶子产生了茶;而恐惧、虔诚和救世主,就产生了神。这些最终的产物,并没有独立于其各别元素的存在。相信它真实独立存在,是最大的骗局...
less命令占用内存过高
在华为的月度报告中, 发现了奇怪的问题,有一台机器在每天都会内存使用率飙到100%,偶尔的几次还会出现OOM的记录。在追踪问题的过程中,发现机器上每天的2,4,6,8点会自动运行处理日志的脚本,并统计关键字的数量。 这个脚本的过滤日志思路是, 使用 less 命令打开昨天的所有日志文件,并且读取内容,过滤其中的关键字,命令类似如下: 1less yesterday*.log.gz | grep -e "xxxxx" -e "xxxxx" | sort | uniq | wc -l 关于Less, More, Cat, Zcat这个四个命令可以分成两组: less / more 的命令是为了个人类查看文件的内容设计的程序; cat / zcat 是一次性输出内容到屏幕的; 两组命令的唯一区别是是否提供前后反复查看的功能。但是就是这个功能,导致了命令执行的逻辑其实是完全不同的。 less命令的执行方式将查看到的数据放入内存中(USED),所以 如果是一个10G的日志,就会占用10G的内存, 如果不够,系统就会进行交换和将...
Kubernetes集群的学习笔记(7)
Kubernetes的Dashboard 和 分级认证权限。 Dashboard的简介Dashboard算是k8s的一个管理的web界面。不做具体的操作,登录的时候使用的是K8S提供的用户名和密码。 Dashboard的部署只需要从github进行apply资源清单即可。 Dashboard的登录使用Token登录 获取系统中默认的admin的token,或者创建一个需要登录和管理的ServiceAccount,然后Binding到Role或者 ClusterRole,进行权限的控制 查看集群中自动创建的dashboard的secret, 系统部署完成之后自动创建了一个可管理全部集群的secret 12~]$ kubectl get secret -n kube-system | grep dashboarddashboard-admin-token-g85h7 kubernetes.io/service-account-token 3 109d 在这个secret中有Token相关的信息 1~]$ kube...
Kubernetes集群的学习笔记(6)
K8S的认证部分, ServiceAccount以及RBAC 。 授权插件 Node ABAC RBAC Webhook 常用的授权插件就是RBAC 基于角色的授权和访问控制基于角色的访问控制,就是将权限授予Role,而不是User。 将权限的控制授予Role, 将User分配到Role。默认的是拒绝全部, 无法也无需定义拒绝权限,定义的Permission是许可访问的权限。 角色,User Accouts OR Service Accounts. 许可, Permission分为两个部分:Operation 以及 Object. 角色以及角色绑定Role – RoleBinding Role 和 RoleBinding 是建立和控制 NameSpace 级别的权限。 集群角色以及集群角色绑定ClusterRole – ClusterRoleBinding Cluster 和 ClusterBinding 是建立和控制 Cluster 级别的权限。 NOTE: 特殊的情况,可以对名称空间级别的 特殊的绑定方式ClusterRole – RoleBinding 可以使用 Ro...
i3wm的简单配置
将自己的桌面环境迁移到了i3。Gnome好用是好用的,但是体量还是有点儿大了,吃资源有点多。 这个现在已经更新到 DWM 上面了, 对于这里面还有其他的工具是一直在用的, 比如 picom 等等。 安装i3-gaps安装的过程比较简单,pacman 就完事儿了。 12345678910111213pacman -Syyu pacman -S i3-gaps 这里有两个可以选择,一个是i3-wm, 还有一个是i3-gaps, 我用了i3gaps, 好看一些。pacman -S alacritty pacman -S polybarpacman -S compton (最新的软件改名了,叫picom,但是安装的方式不变的。)pacman -S picompacman -S dmenupacman -S rofipacman -S feh pacman -S varietypacman -S unzip-natspec #unzip-natspec貌似是在archlinuxcn里面的,可以处理zip解压的时候乱码的问题,不用考虑手动指定解压的-O了。 配置i3在已经有Gnome...
Kubernetes集群的学习笔记(5)
K8S集群的存储卷笔记。 整体的存储卷调用结构: 在k8s的集群中,Pod声明自己需要存储卷资源,同时创建自己的PVC,PVC绑定到集群中已经注册的PV资源,例如 已经建立的NFS网络空间。PV资源通过存储系统的分配,直接提供给Pod来使用。 PVC属于名称空间级别,PV属于集群资源。 存储卷的类型 EmptyDir:只在Node上存在的存储卷,Pod删除的时候存储卷也会被移除,无法持久存储,叫做EmptyDir,做临时存储和缓存使用,可以使用Node的内存。 HostPath: Docker的存储卷类型,Node节点上的目录。 网络存储: SAN, NAS; 分布式存储(Glusterfs,Cephfs,rbd); 云存储(EBS, Azure Disk,特定的托管在云上的服务) 1kubectl explain pod.spec.volumes 可以查看支持那些存储。 PVC对于用户来说,无法掌握所有的存储系统的知识和技能,因此,创建了PVC的逻辑层,在定义需要使用存储卷的Pod中只需定义需要的空间以及存储的类型,不需要详细的考虑后端存储的信息和配置。 PVC被定...
Kubernetes集群的学习笔记(4)
K8S Service资源的笔记以及Ingress资源的笔记。 k8s的serviceservice的模型: userspace(kube-proxy), iptables, ipvs Service的类型请求发送的过程: Client –> Node’s IP:Node’s Port –> Cluster’s IP:ServicePort –> PodIP: ContainerPort Service的类型: ClusterIP是将提供服务的Pods统一建立一个集群内部的可访问接口,为集群内部的服务提供入口,PodsPort to ClusterIP:Port. NodePort是将Node的端口映射出去的方式,每个节点各自对外提供一组IP:Port用来对外提供服务 - PodsPort to NodePort. LoadBalancer使用LBaaS的方式对外提供服务,共有云环境可用,例如阿里云。 Externalname可将外部的服务引入到集群的内部,需要提供的字段是外部网络的真正的DNS服务的CNAME(FQDN)。 HeadlessSe...
k8s所有的NS删除的时候都进入Terminating状态
集群无法删除Namespace解决方式。 Namespace 无法删除 始终处于Teminating强制删除的方法,临时方案。 将名称空间的配置文件导出。kubectl get namespace testtest -o json > tmp.json 编辑这个临时文件。vim tmp.json 删除spec字段中的值。 "spec" : { "finalizers" : [ # delete this line. "kubernetes" # delete this line. ] # delete this line. } 使用另一个terminal, 运行本地的proxy, 连接到API server。 kubectl proxy --port=8888 通过ApiServer进行删除 curl -k -H "Content-Type: application/json...
Linux_Cobbler搭建本地YUM源同步k8s阿里云
昨天晚上尝试使用阿里云的时候出现问题 ,阿里云的k8s源安装的时候报错,无法正常通过yum安装。内网正好放了一台Cobbler,所以直接从Cobbler同步阿里的repo过来放到内网,防止这个事情再次发生。 Cobbler是什么 Cobbler是一个免费开源系统安装部署软件,用于自动化网络安装操作系统。 Cobbler 集成了 DNS, DHCP,软件包更新, 带外管理以及配置管理, 方便操作系统安装自动化。Cobbler 可以支持PXE启动, 操作系统重新安装, 以及虚拟化客户机创建,包括Xen, KVM or VMware. Cobbler透过koan程序以支持虚拟化客户机安装。Cobbler 可以支持管理复杂网路环境,如创建在链路聚合以太网的桥接环境。 FROM Wikipedia Cobbler Repo的建立k8s的源,Cobbler直接建立的同步不可以是因为k8s的目录结构和一般软件源的结构不同。(开始以为阿里云会一直保持带有Pool文件夹的那个结构, 今天早上看到结构已经和普通的yumrepo一样了,记录一下出现这种问题怎么办好了。)其实解决的方案就是手动同步,使...
Kubernetes集群的学习笔记(3)
k8s笔记YAML格式定义资源。 通过YAML定义PodsapiVersionkubectl api-versions查看所有可用的组名apiVersion:[Group/Version] Kind 资源类别Metadata 元数据 name: uniq Key namespace labels Key-Value annotations SelfLink: 资源引用的链接API格式:/api/group/verison/namespaces/namespace/type/name Speckubectl explain pods.spec可使用命令查看:定义用户期望的目标状态。 Status自动维护即可 ,不需要更改。 简单的YAML实例12345678910111213apiVersion: v1 kind: Podmetadata: name: myapp-pod labels: app: myapp version: v1spec: ...


