首页 » DevTools
  • Kubernetes之python client连接k8s API cluster

    showerlee 2018-10-23 22:01 DevTools, Kubernetes, 其他 阅读 (181) 抢沙发
    大家在平时使用k8s可以说用到的最多的命令应该就是kubectl, 这个命令默认会在master上安装并与本地的k8s API cluster绑定token认证, 实现日常k8s的数据交互. 不过问题在于, 如果我们需要远程调用k8s API或者需要实现k8s自动化集成, 仅靠每次远程ssh集成使用kubectl命令这种偷懒的办法是远远不够的. 这里k8s官方给我们提供了两种比较主流的连接k8s API cluster的语言, 一种是GO, 另外一种就是我们DevOps比较主流的Python. ...
  • Kubernetes之Ingress+Traefik

    showerlee 2018-09-08 17:32 DevTools, Docker, Kubernetes 阅读 (456) 抢沙发
    今天是一个值得庆祝的日子, 终于把研究了半年未果的k8s ingress反向代理通过traefik这个工具给试验出来了, 这里感谢我的甜宝宝对我的支持, 因为有你, 我才有动力继续前行. traefik 是一款开源的反向代理与负载均衡工具。它最大的优点是能够与常见的微服务系统直接整合,可以实现自动化动态配置。目前支持 Docker, Swarm, Mesos/Marathon, Mesos, Kubernetes, Consul, Etcd, Zookeeper, BoltDB, Rest API 等等后端模型...
  • Jenkins-Pipeline-CI-CD-with-Helm-on-Kubernetes自动化流水线

    showerlee 2018-09-06 11:40 DevTools, Docker, Jenkins, Kubernetes 阅读 (772) 2条评论
    因为忙于家里事情, 很久没有更新我的博客, 这里我将这半年多对Jenkins pipeline集成k8s实现自动化部署流水线的心得在这里分享给大家, 有不足之处, 还请大家多多指正. 这里简单的介绍一下我们这个自动化流水线所使用到的工具: Jenkins Pipeline: 目前国内外DevOps, CI/CD比较主流的一种将我们软件开发周期所涉及到的环节通过pipeline流水线完美的串联在一起的自动化部署框架. 它提出了一种pipeline as a code的概念,...
  • Kubernetes之Helm包管理

    showerlee 2018-04-14 13:01 DevTools, Kubernetes 阅读 (4,311) 2条评论
    最近研究了下kubernetes用的比较火的Helm, Helm作为一个包管理工具, 它把Kubernetes资源(比如deployments、services或 ingress等) 打包到一个chart中,方便我们将其chart保存到chart仓库用来存储和分享, Helm支持发布应用配置的版本管理, 使发布可配置, 它最终简化了Kubernetes部署应用的版本控制、打包、发布、删除、更新等操作。 其实Helm和我们的ansible playbook有一些类似的地方就是, 它支持变量预...
  • Kubernetes部署WordPress+MySQL

    showerlee 2018-02-24 17:51 DevTools, Kubernetes 阅读 (4,217) 抢沙发
    这部分我们结合之前的k8s知识点给大家展示如何使用kubernetes部署wordpress+MySQL, 并利用NFS去保存我们容器的源代码以及DB数据. 安装环境 System: CentOS 7.4 Kubernetes: Kubernetes1.9 Docker: 17.03.2-ce kube-master 10.110.16.10 kube-node-1 10.110.16.11 一. NFS配置: 1. NFS依赖包安装 在Master与Node分别安装NFS组件 # yum install nfs-utils -y Tip: 这里需保...
  • Kubernetes之Secrets与Config Maps

    showerlee 2018-02-24 12:11 DevTools, Kubernetes 阅读 (1,785) 抢沙发
    Secrets Secrets是一个包含敏感数据的对象,例如我们常用的密码,令牌或密钥等,  我们编写yaml如果直接明文这些信息则会将我们的敏感信息暴漏在我们的脚本中; 所以将其放置在Secret对象中可以更好地控制它的使用方式,并降低意外暴露的风险。 Pod可以引用我们事先创建好的Secrets键值对到环境变量, 通过获取环境变量的键值对动态更新我们Pod的环境配置, 从而实现动态配置更新. 1. 创建一个secret # kub...
  • Kubernetes之Persistent Volume(持久化卷)

    showerlee 2018-02-23 16:12 DevTools, Kubernetes 阅读 (3,589) 抢沙发
    Persistent Volume(持久化卷)简称PV, 是一个K8S资源对象,我们可以单独创建一个PV, 它不和Pod直接发生关系, 而是通过Persistent Volume Claim, 简称PVC来实现动态绑定, 我们会在Pod定义里指定创建好的PVC, 然后PVC会根据Pod的要求去自动绑定合适的PV给Pod使用. 持久化卷下PV和PVC概念: Persistent Volume(PV)是由管理员设置的存储,它是群集的一部分。就像节点是集群中的资源一样,PV 也是集群中的资源。 PV ...
  • Kubernetes之Pod, Replicaset, Deployment, Label, Service

    showerlee 2018-02-22 15:16 DevTools, Kubernetes 阅读 (3,080) 抢沙发
    接着上一篇Kubernates1.9+Docker17离线安装部署, 给大家介绍Kubernetes的一些重要概念和组件 Pod: Pod是一组紧密关联的容器集合,它们共享PID、IPC、Network和UTS namespace,是Kubernetes调度的基本单位。Pod的设计理念是支持多个容器在一个Pod中共享网络和文件系统,可以通过进程间通信和文件共享这种简单高效的方式组合完成服务. 缺点: 不支持高并发, 高可用, 当Pod当机后无法自动恢复. 1.创建Pod # vi...
  • Kubernates1.9+Docker17离线安装部署

    showerlee 2018-02-13 17:00 DevTools, Kubernetes 阅读 (5,387) 4条评论
    最近研究了一下目前比较火的Kubernetes(k8s), 重点关注了下它最新的1.9版本, 这个版本较老的1.1版本的确简化了很多配置, 它利用kubeadm这个工具对全局进行批量化部署, 减轻了我们初学者起步的学习成本.  目前主流的安装k8s系统平台有Centos7和ubuntu, 这里笔者因为对centos有常年的运维开发经验, 所以就选择前者. 另外官方已经在近期将kubernetes1.1版本的centos7配置从官网移除, 所以建议大家使用1.9版本...
  • 浅谈Jenkins Pipeline

    showerlee 2017-07-19 17:34 DevTools, Jenkins 阅读 (16,216) 9条评论
    已经很久很久没有更新我的空间了, 最近刚好工作上的变动让我有时间去静下心来去整理一下这一年来学到的东西. 谈到Jenkins, 大家肯定耳熟能详, 持续集成/持续交付, 自动化部署工具, 测试工具, 配合目前我们绝大多说开发工具, 简直是万能的瑞士军刀. 接触Devops这个概念两年有余, 使用了很多开发工具诸如JIRA, Gitlab, Ansible, SVN, NEXUS, CHEF, FISHEYE, Confluence等等, 唯独Jenkins让我印象最为深刻. 为什么呢? ...