Skip to main content

Posts

Showing posts from January 20, 2019

Install Minikube on Centos7

  Configure Kubernetes which is Docker Container Orchestration System. On this exmaple, Install Minikube to configure Single Node Cluster within a Virtual machine. [1] Because using VM, Install a Hypervisor which is supported by Minikube. On this example, Install KVM. For other Hypervisors, it's possible to use VirtualBox, VMware Fusion, HyperKit. [root@dlp ~]# yum -y install qemu-kvm libvirt libvirt-daemon-kvm [root@dlp ~]# systemctl start libvirtd [root@dlp ~]# systemctl enable libvirtd [2] Configure Kubernetes repository and Install Minikube. [root@dlp ~]# cat <<'EOF' > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-$basearch enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOF [root@dlp ~]# yum -y install kubectl

计算机实验室之树莓派:课程 2 OK02 | Linux 中国

OK02 课程构建于 OK01 课程的基础上,通过不停地打开和关闭 OK 或 ACT LED 指示灯来实现闪烁。假设你已经有了  课程 1:OK01 [1]  操作系统的代码,它将是这一节课的基础。 1、等待 等待是操作系统开发中非常有用的部分。操作系统经常发现自己无事可做,以及必须要延迟。在这个例子中,我们希望通过等待,让 LED 灯打开、关闭的闪烁可以看到。如果你只是打开和关闭它,你将看到这个视觉效果,因为计算机每秒种可以打开和关闭它好几千次(LCTT 译注:视觉暂留效应会使你难以发觉它的闪烁)。在后面的课程中,我们将看到精确的等待,但是现在,我们只要简单地去消耗时间就足够了。 mov r2 ,# 0x3F0000 wait1$ : sub r2 ,# 1 cmp r2 ,# 0 bne wait1$ sub reg,#val  从寄存器  reg  中的值上减去数字  val cmp reg,#val  将寄存器中的值与数字  val  进行比较。 如果最后的比较结果是不相等,那么执行后缀了  ne  的  b  命令。 上面是一个很常见的产生延迟的代码片段,由于每个树莓派基本上是相同的,所以产生的延迟大致也是相同的。它的工作原理是,使用一个  mov  命令将值 3F0000 16  推入到寄存器  r2  中,然后将这个值减 1,直到这个值减到 0 为止。在这里使用了三个新命令  sub 、  cmp  和  bne 。 sub  是减法命令,它只是简单地从第一个参数中的值减去第二个参数中的值。 cmp  是个很有趣的命令。它将第一个参数与第二个参数进行比较,然后将比较结果记录到一个称为当前处理器状态寄存器的专用寄存器中。你其实不用担心它,它记住的只是两个数谁大或谁小,或是相等而已。 1 bne  其实是一个伪装的分支命令。在 ARM 汇编语言家族中,任何指令都可以有条件地运行。这意味着如果上一个比较结果是某个确定的结果,那个指令才会运行。这是个非常有意思的技巧,我们在后面将大量使用到它,但在本案例中,我们在  b  命令后面的  ne  后缀意思是 “只有在上一个比较的结果是值不相等,才去运行该分支”。 ne  后缀可以使用在任何命令上,其它几个(总共 16 个)条件也是如此,比如  eq

DevSecOps 提升安全性的五种方式 | Linux 中国

安全必须进化以跟上当今的应用开发和部署方式。 -- Gordon Haff 对于我们是否需要扩展 DevOps 以确实提升安全性,我们一直都有争议。毕竟,我们认为,DevOps 一直是一系列的新实践的简写,使用新工具(通常是开源的)并且在这之上构建更多的协作文化。为什么  DevBizOps [1]  不能更好地满足商业的需求?或者说 DevChatOps 强调的是更快更好的沟通? 然而,如  John Willis [2]  在今年(LCTT 译注:此处是 2018 年)的早些时候写的关于他对  DevSecOps [3]  术语的理解,“我希望,有一天我们能在任何地方都不再使用 DevSecOps 这个词,安全会是所有关于服务交付的讨论中理所应当的部分。在那一天到来前,在这一点上,我的一般性结论是,这个词只是三个新的特性而已。更重要的是,我们作为一个产业,在信息安全方面并没有做的很好,而这个名称切实地区分出了问题的状况。” 所以,为什么我们在 信息安全 [4] 方面做的不好,在 DevSecOps 的语境下安全做的好又是什么意思呢? 尽管(也可能是因为)庞大的复杂行业的单点产品解决了特定方面的问题,但我们可以说是从未做好过信息安全。我们仍然可以在这个时代把工作做得足够好,以此来防范威胁,这些威胁主要集中在一个范围内,网络的连接是受限的,而且大多数的用户都是公司的员工,使用的是公司提供的设备。 这些年来,这些情况并没有能准确地描述出大多数组织的真实现状。但在现在这个时代,不止引入了 DevSecOps,也同时引入了新的应用架构模型、开发实践,和越来越多的安全威胁,这些一起定义了一个需要更快迭代的新常态。与其说 DevSecOps 孤立地改变了安全,不如说信息安全公司在 2018 年需要新的方法。 请仔细思考下面这五个领域。 自动化 大量的自动化通常是 DevOps 的标志,这部分是关于速度的,如果你要快速变化(并且不会造成破坏),你需要有可重复的过程,而且这个过程不需要太多的人工干预。实际上,自动化是 DevOps 最好的切入点之一,甚至是在仍然主要使用老式的 独石应用 monolithic app 的组织里也是如此。使用像 Ansible 这样易于使用的工具来自动化地处理相关的配置或者是测试,这是快速开始 DevOps 之

20150516 百战经典 二战全纪录·末路东京

Pelican 入门:一个 Python 静态网站生成器 | Linux 中国

Pelican 是那些想要自我托管简单网站或博客的 Python 用户的绝佳选择。 如果你想创建一个自定义网站或博客,有很多选择。许多提供商可以托管你的网站并为你完成大部分工作。(WordPress 是一个非常受欢迎的选项。)但是使用托管方式,你会失去一些灵活性。作为一名软件开发人员,我更喜欢管理我自己的服务器,并在我的网站如何运行方面保持更多的自由。 然而,管理 Web 服务器需要大量的工作。安装它并获得一个简单的应用程序来提供内容是非常容易的。但是,维护安全补丁和更新是非常耗时得。如果你只想提供静态网页,那么拥有一个 Web 服务器和一系列应用程序可能会得不偿失。手动创建 HTML 页面也不是一个好选择。 这是静态网站生成器的用武之地。这些应用程序使用模板来创建所需的静态页面,并将它们与关联的元数据交叉链接。(例如,所有显示的页面都带有公共标签或关键词。)静态网站生成器可以帮助你使用导航区域、页眉和页脚等元素创建一个具有公共外观的网站。 我使用  Pyhton [1]  已经很多年了,所以,当我第一次开始寻找生成静态 HTML 页面的东西时,我想要用 Python 编写的东西。主要原因是我经常想要了解应用程序如何工作的内部细节,而使用一种我已经了解的语言使这一点更容易。(如果这对你不重要或者你不使用 Python,那么还有一些其他很棒的 静态网站生成器 [2] ,它们使用 Ruby、JavaScript 和其它语言。) 我决定试试  Pelican [3] 。它是一个用 Python 编写的常用静态网站生成器。它支持  reStructuredText [4] (LCTT 译注:这是一种用于文本数据的文件格式,主要用于 Python 社区的技术文档),并且也支持  Markdown [5] ,这需要通过安装必需的包来完成。所有任务都是通过命令行界面(CLI)工具执行的,这使得熟悉命令行的任何人都可以轻松完成。它简单的 quickstart CLI 工具使得创建一个网站非常容易。 在本文中,我将介绍如何安装 Pelican 4,添加一篇文章以及更改默认主题。(注意:我是在 MacOS 上开发的,使用其它 Unix/Linux 实验结果都将相同,但我没有 Windows 主机可以测试。) 安装和配置 第一步是创