计算广告基础

我们都知道,互联网最重要的就是流量与数据。有了流量与数据就有了变现的基础。我们都知道互联网变现大部分要依靠广告,于是近些年在线广告发展突飞猛进。所谓在线广告,指的就是在互联网平台上投放的广告。那么,计算广告又是什么呢?本文大致对计算广告的基础进行讲述。

Docker底层的内核知识——cgroups

我的上一篇博客《Docker底层的内核知识——namespace》讲解了内核中支持Docker作资源隔离的机制namespace。本篇文章主要讲述Docker背后内核的另一机制——cgourps。cgroups不仅可以用来限制被namespace隔离的资源,还可以为资源设置权重、计算使用量、操控任务启停等。

Docker底层的内核知识——namespace

用过Docker的开发者都知道,Docker容器在本质上是宿主机上的一个进程。也就是常说的容器是操作系统级的虚拟化。容器与容器之间做了资源的隔离,所以在一个容器内部的各种操作会给人一种仿佛在独立的系统环境中的感觉。外部应用对容器进行访问时,也会有这种感觉。而做这种容器资源隔离的Linux内核机制就是namespace。

Kubernetes网络原理

Kubernetes的搭建与使用少不了网络基础设施的搭建工作, 本文简述了Kubernetes所需要的网络基础环境,Docker的网络实现以及Kubernetes的网络实现。最后,简单提了一下可以实现这些网络基础的网络开源组件Flannel。希望可以通过这些简单的语言描述,让初学者能够初步了解Kubernetes的网络原理。

Kubernetes的主要组件概述

本文试图用简单的语言描述Kubernetes主要组件的作用及其关系。这里我讲解的Kubernetes主要组件有API Server、Controller Manager、Scheduler、kubelet、kube-proxy,其中前三者运行于集群的Master节点,后两者运行于集群的Slave节点。接着描述了一下用于存储Kubernetes集群信息的Etcd,它是一个高可用、强一致性的服务发现存储仓库。最后,我抛出了一个我所遇到的一个问题。大家可以一同思考一下问题出在了哪里。

用client-go调用Kubernetes API

client-go是go语言访问Kubernetes API的一种新的框架。本文记录client-go访问Kubernetes的过程。最终实现了给服务器端发送container ID,服务器端会返回该container所在pod的pod Name与Spacename。我们Kubernetes集群中一个pod都只运行了一个container。