能力说明:
了解Python语言的基本特性、编程环境的搭建、语法基础、算法基础等,了解Python的基本数据结构,对Python的网络编程与Web开发技术具备初步的知识,了解常用开发框架的基本特性,以及Python爬虫的基础知识。
暂时未有相关云产品技术能力~
专注DevOps!
在某些系统故障的排查过程中,需要找出某个应用程序的工作目录、完整命令行等信息。通常会通过ps及top等命令来查看进程信息,但往往只能查到相对路径、部分命令行等。遇到这种情况时,有些小伙伴可能就束手无策,不知所措直接去问研发的同事了。遇到这样的情况,是不是真的没有办法了呢?
通常情况下,构建镜像通常会采用两种方式: 1. 将全部组件及其依赖库的编译、测试、打包等流程封装进一个 Docker 镜像中。采用这种方式往往忽略了以下这些问题: - Dockefile 特别长,可维护性降低。 - 镜像的层次多,体积大,部署时间长。 - 源代码存在泄漏的风险。 2. 分散到多个 Dockerfile。事先在一个 Dockerfile 将项目及其依赖库编译测试打包好后,再将其拷贝到运行环境中,这种方式需要我们编写两个 Dockerfile 和一些编译脚本才能将其两个阶段自动整合起来,这种方式虽然可以很好地规避第一种方式存在的风险,但明显部署过程较复杂。
apt-get update 报错,采用更换源的方式解决问题。
C 语言中关于通过形参传递数组的长度计算的一些思考 一 背景 学习 C 语言的过程中,计算数组的长度经常会碰到。在字符型的数组中我们可以使用 strlen() 来获取当前数组的长度,对于其他类型的数组,这个方法就不适用了。
一键批量关闭 Linux 的 tty 的方法 一 背景 在日常工作中,由于各种原因,可能需要关闭一些不必要的 tty。比如:服务器被非法登录、忘记关闭某些设备上已登录的 tty、终止一些不使用的tty等场景就需要批量强制关闭 tty。
再议 C 语言中的指针与数组(4) 一 概述 前面的文章中,回顾了 C 语言中的指针,对指针有了一个比较初步的了解。在本文中,结合数组,再次对指针进行回顾。 二 数组与指针 在 C 语言中,指向数组的指针是比较常见的,也是非常方便和适用的。
学生时代所学的一些 C 语言知识点回顾(3)——再议指针的声明与使用 # include int main(int argc,char *argv[]){ int *p; *p = 203030; printf("%d\n",*p); } 这段代码能正常通过编译,但是不能正常执行。
学生时代所学的一些 C 语言知识点回顾(2)——指针 一 前言 承接上一篇,对 C 语言中的指针进行了回顾总结。文中的例子均为本人纯手工输入,在 Linux 环境中全部编译实践过。由于平时工作中大部分时间都使用 Linux ,许多深入的 Linux 体系知识需要掌握 C 语言才能深入地理解,故此,对 C 语言进行了一次回顾。
学生时代所学的一些 C 语言知识点回顾(1) 0. 前言 时间过得真快,一眨眼之间已经毕业很多年,C 语言是大学里所学的第一门编程语言。由于很长时间不用,很多知识点都已生疏,最近抽了个空对之前的一些知识点做了一些回顾,谨以此系列文章记录一下这些刚刚回顾过的知识点。
笔记:Docker命令自动补全 一 背景 作为一名 Linux 重度用户,每次敲命令总会情不自禁地按下 Tab 键。在键入 Docker 命令时也会出现类似的习惯性动作。那么是否 Docker 相关命令也能自动补全呢? 二 操作步骤 2.1 安装 bash-completion sudo yum install -y bash-completion 安装完成之后重启系统或者重新登录 shell。
开源 OCR 工具 tesseract v4.1.0 的 Docker 镜像制作与使用 一 背景 在日常的一些工作中,偶尔也需要我们把图片转换为文字。目前大部分办公软件还无法实现类似的功能,因此遇到类似的问题时,我们只能自己动手解决。
深入浅出 Kubernetes:StatefulSet 概念理解与实践 一 背景知识及相关概念 StatefulSet 的设计其实非常容易理解。它把真实世界里的应用状态,抽象为了两种情况: 拓扑状态。
Kuberntes 中无法删除 PV 的解决方法 一 背景 系统内有一个已经不再使用的 PV ,已经删除了与其关联的 Pod 及 PVC ,并对其执行了删除命令,但是无法正常删除,一直出于如下状态: $ kubectl get pv NAME CAPACITY ACCESS ...
深入浅出 Kubernetes:浅谈 Deployment 和 ReplicaSet 一 背景 Deployment 和 ReplicaSet 是 Kubernetes 中两个比较重要的对象,本文简单地讨论了他们之间的一些区别与联系。
深入浅出 Kubernetes:初识 Pod(下) 一 Projected Volume 作为 Kubernetes 比较核心的编排对象,Pod 携带的信息极其丰富。在 Kubernetes 中,有几种特殊的 Volume,它们存在的意义不是为了存放容器里的数据,也不是用来进行容器和宿主机之间的数据交换。
几行 Python 代码实现 Windows 下的文件批量重命名 一 背景 “C:UsersgyslDocuments数据结构”目录中存在许多文件,现需要对其进行重命名,命名规则为:匹配文件名的前六个字符(这些文件的前六个字符就能区分文件名称,且不重复),源文件及重命名之后的文件的扩展名都是“.mp4”。
一 概念 Pod 是一个逻辑概念,Kubernetes 真正处理的,还是宿主机操作系统上 Linux 容器的 Namespace 和 Cgroups,而并不存在一个所谓的 Pod 的边界或者隔离环境。
通过二进制包一键部署 Kubernetes v1.15.0 集群 一 概述 Kubernetes目前有两种较为流行的安装方式:二进制和Kubeadm。二进制安装过程有利于大家理解Kubernetes各组件的原理和详细配置过程,安装包容易获取,不需要其他方式即可完成全部组件的下载。
Bash shell 中,三种子 shell 实践 一 背景 让我们先来看一下下面这个简单的例子: #!/bin/bash #=============================================================================== # FILE: process_test.
一 背景 在一些运维工作中,使用字典能让当前工作事半功倍,类似 Python ,在 GNU bash 4.2.46 中,我们也可以很方便的使用字典来完成一些工作了。本文以一段 bash shell 为例展示一下 Bash 中字典的使用。
揭开 LVS 神秘的面纱 一 前言 作为一名具备多年经验的老运维,LVS 的名声可谓如雷贯耳,一直都在寻找一个机会系统化地收集整理相关资料。时至今日,终于有时间详细地学习和了解 LVS 相关的知识。 LVS 是linux virtual server的简写,意为:Linux虚拟服务器,这是一个由章文嵩博士在1998年5月发起的一个自由软件项目。
bash shell 中数组使用举例 一 背景 让我们先来看一个 shell 脚本的执行过程及结果: [gysl@gysl-DevOps ~]$ sh array.sh N2 N3 N4 The elements of this array 2-4 are: N2 N3 N4 N1 is in array.
一 背景在最近的运维工作中,写了很多脚本,在写这些脚本时发现了一些高效的用法,现将 select 的用法简单介绍一下。 二 使用举例select 表达式是 bash 的一种扩展应用,擅长于交互式场合。
通过加速,国内用户能够快速访问最流行的 Docker 镜像。 仓库 registry.docker-cn.com 包含流行的公有镜像。私有镜像仍需要从 Docker Hub 镜像库中拉取。 以下命令直接从镜像加速地址进行拉取: $ docker pull registry.
二进制包20分钟快速部署 Kubernetes v1.14.0 集群 一 环境 |操作系统|Docker版本|Kubernetes版本|Etcd版本|Flannel版本||:-:|:-:|:-:|:-:|:-:||CentOS Linux release 7.
在以 CentOS7.6 为基础镜像的 Docker 容器中通过 NFS 将内存挂载成高速硬盘使用 一 背景 这是最近项目中遇到的一个问题。在已知的部署在 docker 容器云上某个应用中,读写非常频繁,对磁盘的性能要求极高,但是又不能在同一个容器内进行高强度读写。
Linux 性能测试工具 sysbench 的安装与简单使用 一 背景 sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试。sysbench 支持以下几种测试模式 : 1、CPU运算性能 2、内存分配及传输速度 3、磁盘IO性能 4、POSIX线程性能 5、互斥性测试 6、数据库性能(OLTP基准测试)。
一个限制进程 CPU 使用率的解决方案 一 背景 在最近的一个项目中,需要限制 CPU 使用率。通过查阅各种资料,发现已经有直接可以使用的软件可以使用,这个软件就是cpulimit,这个软件使用非常简单。
在CentOS/RHEL 7.X安装 EPEL repo 的方法 一 背景 RHEL以及他的衍生发行版如CentOS、Scientific Linux为了稳定,官方的rpm repository提供的rpm包往往是很滞后的,而EPEL恰恰可以解决这两方面的问题。
Kubernetes Dashboard的安装与配置 一 背景 通过kubeadm快速完成了kubernetes的安装,即可迅速地体验到kubernetes的强大功能。美中不足的是,只能通过命令来查看或操作,没有一个直观且简洁的Web UI来感受一下这种成功的喜悦。
Kubernetes二进制方式v1.13.2生产环境的安装与配置(HTTPS+RBAC) 一 背景 由于众所周知的原因,在国内无法直接访问Google的服务。二进制包由于其下载方便、灵活定制而深受广大kubernetes使用者喜爱,成为企业部署生产环境比较流行的方式之一,Kubernetes v1.13.2是目前的最新版本。
一 背景 在实际使用过程中,我们可能会经常遇到容器间数据共享的情况,怎么处理呢?通过 docker 命令中的一些选项,我们即可完成容器间的数据共享。 二 实验步骤 2.1 创建容器 容器一:gysl-1 [root@dev ~]# docker run -it --rm --name gysl-1.
一.环境 1.1 操作系统(其他发行版亦可): [root@gysl ~]# cat /etc/centos-release CentOS Linux release 7.5.1804 (Core) 1.2 Git版本: [root@gysl ~]# git --version git version 1.8.3.1 二.步骤 2.1 下载并安装Git软件。
一、些重要概念 cluster:计算、存储、网络资源的总和。Kubernetes的各种基于容器的应用都是运行在这些资源上的。 Master:Kubernetes的大脑,负责调度各种计算资源。Master可以是物理机或虚拟机,多个Master可以同时运行,并实现HA。