一直学一直嗨,一直嗨一直学

Kubernetes配置镜像中Hosts文件的域名解析

一、遇到的问题 最近,给公司搭建的持续集成过程中,由于每次执行任务时都是新创建一个 Kubernetes Pod 执行的,在执行过程中经常出现 DNS 解析错误问题,如下: stdout: stderr: fatal: unable to access 'http://git.xxx.cn/mydlqcloud-xxxx/': Could not resolve host: git.xxxx.cn 经过排查物理机 DNS 和 CodeDNS 插件,都没找出问题所在,所以只能归咎于公司 DNS 服务器问题导...

在Kubernetes中让nginx容器热加载配置文件

Nginx作为WEB服务器被广泛使用。其自身支持热更新,在修改配置文件后,使用nginx -s reload命令可以不停服务重新加载配置。然而对于Dockerize的Nginx来说,如果每次都进到容器里执行对应命令去实现配置重载,这个过程是很痛苦的。本文介绍了一种kubernetes集群下nginx的热更新方案。 首先我们创建正常的一个nginx资源,资源清单如下: apiVersion: v1 kind: ConfigMap metadata: ...

Kubeadm搭建单master节点的Kubernetes集群

1. 环境准备 3个节点,都是 Centos 7.6 系统,内核版本:3.10.0-957.12.2.el7.x86_64,在每个节点上添加 hosts 信息: $ cat /etc/hosts 172.16.1.128 k8s-master 172.16.1.129 k8s-node01 172.16.1.130 k8s-node02 禁用防火墙: $ systemctl stop firewalld $ systemctl disable firewalld 禁用SELINUX: $ setenforce 0 $ cat /etc/selinux/config SELINUX=disabled 创建/et...

Kubeadm搭建高可用Kubernetes集群

最近经常有朋友问我有没有用kubeadm搭建高可用集群的文档,说实在的我确实没有,我自己测试的话就用kubeadm单master版,公司用的话就用二进制搭建的。所以就找了个下班时间搭建测试了一番。希望对大家有帮助!如果觉得有用的话就帮忙点个关注或转发吧,哈哈~ 1. 节点规划信息 2. 基础环境配置 2.1 环境信息 2.2 环境初始化 (1)、配置主机名,以k8s-master01为例 hostnamectl set-h...

Linux下同一个脚本使用bash 和sh 启动表现不同

脚本内容 source setup.bash source /opt/ros/kinetic/setup.bash roslaunch hello hello.launch 保存为start.sh 现象 sh start.sh 失败 bash start.sh成功 原因 sh 是bash 的一个软连接, 但sh 不是完全等同于bash ,其相当于 bash -posix关于bash 的 posix模式在man bash中有相关的描述:When bash is not in posix mode, the current directory is searched if no file is found in...

Linux中使用Shell进行逐行读取文件

Linux中使用Shell进行逐行读取文件,网上收集结的,有需要的可以参考。 #!/bin/bash # Only 1 parameter ! if [ $# != 1 ];then echo ” Usage: .\read.sh filename!”; exit fi # check the file ! if ! [ -f $1 ];then echo “file does not exist!” exit elif ! [ -r $1 ];then echo “file can not be read !” exit fi # PRESS ANY KEY TO CONTIT...

Kubernetes K8S之kubectl命令详解及常用示例

Kubernetes kubectl命令详解与常用示例,基于k8s v1.17.4版本 kubectl常用示例 查看类命令 # 获取节点和服务版本信息 kubectl get nodes # 获取节点和服务版本信息,并查看附加信息 kubectl get nodes -o wide # 获取pod信息,默认是default名称空间 kubectl get pod # 获取pod信息,默认是default名称空间,并查看附加信息【如:pod的IP及在哪个节点运行】 kubectl get pod ...

基于kubeadm快速部署kubernetes K8S V1.17.4集群-无坑完整版

基于kubeadm快速部署kubernetes K8S V1.17.4集群,并部署Dashboard Web页面,实现可视化查看Kubernetes资源 主机配置规划 注意:没有swap分区 预定完成目标项 1、在所有节点上安装Docker和kubeadm 2、部署Kubernetes Master 3、部署容器网络插件 4、部署 Kubernetes Worker,并将节点加入Kubernetes集群中 5、部署Dashboard Web页面,可视化查看Kubernetes资源 关于二进制安装 kubead...

Kubernetes K8S之Ingress详解与示例

K8S之Ingress概述与说明,并详解Ingress常用示例 1. 主机配置规划 2. Ingress概述 Ingress 是对集群中服务的外部访问进行管理的 API 对象,典型的访问方式是 HTTP和HTTPS。 Ingress 可以提供负载均衡、SSL 和基于名称的虚拟托管。 必须具有 ingress 控制器【例如 ingress-nginx】才能满足 Ingress 的要求。仅创建 Ingress 资源无效。 2.1 Ingress 是什么 Ingress 公开了从集群外部到...

Kubernetes K8S之Pod生命周期与探针检测

K8S中Pod的生命周期与ExecAction、TCPSocketAction和HTTPGetAction探针检测 主机配置规划 Pod容器生命周期 Pause容器说明 每个Pod里运行着一个特殊的被称之为Pause的容器,其他容器则为业务容器,这些业务容器共享Pause容器的网络栈和Volume挂载卷,因此他们之间通信和数据交换更为高效。在设计时可以充分利用这一特性,将一组密切相关的服务进程放入同一个Pod中;同一个Pod里的容器...

Linux运维要知道的实用型Linux命令及知识

文章目录 1、查找当前目录下所有以.tar结尾的文件然后移动到指定目录: 2、批量解压当前目录下以.zip结尾的所有文件到指定目录: 3、sed常用命收集:test.txt做测试 4、如何判断某个目录是否存在,不存在则新建,存在则打印信息。 5、监控Linux磁盘根分区,如果根分区空间大于等于90%,发送邮件给Linux SA 6、统计Nginx访问日志,访问量排在前20 的 ip地址: 7、sed另外一个用法找到...

简单轻松:Linux下从零开始创建lvm虚拟磁盘阵列+脚本化解决方案

文章目录 [隐藏] 前言 过程 1、创建磁盘分区part 2、创建物理卷PV 3、创建虚拟卷VG 4、创建逻辑卷LG 5、挂载并更新文件 脚本化 前言 逻辑卷管理器(英语:Logical Volume Manager,缩写为LVM),又译为逻辑卷宗管理器、逻辑扇区管理器、逻辑磁盘管理器,是Linux核心所提供的逻辑卷管理(Logical volume management)功能。它在硬盘的硬盘分区之上,又创建一个逻辑层,以方便系...

解决: vue CLI 3 项目创建时,git bash 箭头选择无效问题

选择git bash 的安装目录,找到bash.bashrc文件 文件末未添加 : alias vue='winpty vue.cmd' 重启git bash 即可 原文出处:segmentfault -> https://segmentfault.com/a/1190000017896589

在 Linux 中打扮你的冬季 Bash 提示符

你的 Linux 终端可能支持 Unicode,那么为何不利用它在提示符中添加季节性的图标呢? 欢迎再次来到 Linux 命令行玩具日历的另一篇。如果这是你第一次访问该系列,你甚至可能会问自己什么是命令行玩具?我们对此比较随意:它会是终端上有任何有趣的消遣,对于任何节日主题相关的还有额外的加分。 也许你以前见过其中的一些,也许你没有。不管怎样,我们希望你玩得开心。 今天的玩具非常...

解决Linux环境下执行脚本时报错:/bin/bash^M: 坏的解释器: 没有那个文件或目录

文章目录 [隐藏] 一、问题描述 二、错误原因 三、修改错误 四、附录 一、问题描述 我在Windows 10 系统下编辑了一个发送消息到企业微信的shell脚本文件,然后copy到了远程的Linux服务器,当运行的时候报错了。如下所示: root@ubuntu116:/data/gitlabData/auto_back_shell# ./qiyewechat-notifier.sh -bash: ./qiyewechat-notifier.sh: /bin/bash^M: 坏的解释器: 没有那个文...

centos7 bash: qemu-kvm: command not foun

已安装qemu-kvm,但找不到命令。 # find / -name "qemu-kvm" # ln -s /usr/libexec/qemu-kvm /usr/sbin/ 问题解决。 原文出处:51cto -> http://blog.51cto.com/12555197/2310333

构建生产环境可用的高可用kubernetes集群

文章目录 [隐藏] 特性 ship on docker 启动ansible容器与免密钥设置 在其它所有要安装k8s的服务器上执行 修改配置 启动安装 uninstall all kubernetes集群三步安装:https://sealyun.com/pro/products/ sealos项目地址:https://github.com/fanux/sealos 特性 [x] 支持任意节点的etcd集群自动构建,且etcd集群使用安全证书,通过static pod方式启动,这样可以通过监控pod来监控et...

你所不了解的 Bash:关于 Bash 数组的介绍

文章目录 [隐藏] 稍等,这是为什么? 真实(通常是有用的)示例 基础 遍历数组 遍历数组元素 遍历数组索引 填充数组 一些有用的语法 参数扫描 还有什么能做的? 日志警告 API 查询 请等等,还有很多东西! 最后一点思考 Bash 还是 Python? 羞耻的宣传时间 进入这个古怪而神奇的 Bash 数组的世界。 尽管软件工程师常常使用命令行来进行各种开发,但命令行中的数组似乎总是一个...

git-bash设置ssh心跳包防超时断开

Windows中使用git-bash作为日常终端工具,在使用ssh命令连接到服务器后,如果较长时间没进行交互时,ssh会断开,导致的现象就是终端卡住,你只能等待它退出,或直接关闭窗口重建连接,很麻烦。 使用ssh命令时,可以增加ServerAliveInterval参数设置心跳时间,比如设置60秒发送一次心跳包 ssh -o ServerAliveInterval=60 root@xx.xx.xx.xx 想一劳永逸,可以在ssh-config中配置全局参...

基于Centos下使用lsof提示-bash: lsof: command not found

文章目录 [隐藏] 一、问题阐述 二、解决方法 三、接下来我们再次使用命令查看 一、问题阐述 Centos系统下使用lsof命令查看端口占用程序提示【-bash: lsof: command not found】 二、解决方法 使用yum安装下lsof; yum install lsof -y 三、接下来我们再次使用命令查看 lsof查看都端口命令:lsof -i:(端口号) 原文出处:mxsina -> http://mxsina.com/centosxia-shi-yong-l...