From 3c0d0704f95a2de9c3c461810ba674ba1c1f5008 Mon Sep 17 00:00:00 2001 From: Jimmy song Date: Tue, 8 Oct 2019 23:28:08 +0800 Subject: [PATCH] Delete tenxcloud registry --- develop/developing-environment.md | 10 ++-------- practice/app-log-collection.md | 4 +--- practice/dashboard-upgrade.md | 7 +------ practice/distributed-load-test.md | 20 +++++++++++-------- practice/heapster-addon-installation.md | 6 +----- practice/install-kubernetes-on-centos.md | 2 +- practice/kubedns-addon-installation.md | 20 +++++++------------ .../network-and-cluster-perfermance-test.md | 7 ------- practice/nginx-ingress-installation.md | 7 +------ practice/node-installation.md | 2 +- practice/service-rolling-update.md | 1 - ...rometheus-to-monitor-kuberentes-cluster.md | 10 ---------- usecases/spark-standalone-on-kubernetes.md | 17 ++++------------ 13 files changed, 31 insertions(+), 82 deletions(-) diff --git a/develop/developing-environment.md b/develop/developing-environment.md index f01bd9cdb..82261808e 100644 --- a/develop/developing-environment.md +++ b/develop/developing-environment.md @@ -4,7 +4,7 @@ ## 安装依赖 -``` +```bash brew install gnu-tar ``` @@ -18,16 +18,10 @@ Docker环境,至少需要给容器分配4G内存,在低于3G内存的时候 需要用的的docker镜像: -``` +```bash gcr.io/google_containers/kube-cross:v1.7.5-2 ``` -我将该镜像备份到时速云上了,可供大家使用: - -``` -index.tenxcloud.com/jimmy/kube-cross:v1.7.5-2 -``` - 该镜像基于Ubuntu构建,大小2.15G,编译环境中包含以下软件: - Go1.7.5 diff --git a/practice/app-log-collection.md b/practice/app-log-collection.md index 1ef712876..ce412d654 100644 --- a/practice/app-log-collection.md +++ b/practice/app-log-collection.md @@ -29,9 +29,7 @@ Kubernetes官方提供了EFK的日志收集解决方案,但是这种方案并 ![filebeat日志收集架构图](../images/filebeat-log-collector.png) -我们创建了自己的filebeat镜像。创建过程和使用方式见https://github.com/rootsongjc/docker-images - -镜像地址:`index.tenxcloud.com/jimmy/filebeat:5.4.0` +我们创建了自己的filebeat镜像。创建过程和使用方式见 ,您可以使用该仓库中的源码创建镜像。 ## 测试 diff --git a/practice/dashboard-upgrade.md b/practice/dashboard-upgrade.md index 3972dcfe2..5120f627e 100644 --- a/practice/dashboard-upgrade.md +++ b/practice/dashboard-upgrade.md @@ -26,16 +26,11 @@ kubectl delete -f dashboard/ wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml ``` -修改其中的两个镜像地址为我们的私有地址。 +注意:其中两个镜像使用 `gcr.io` 仓库,若您无法访问该仓库请换用其他仓库。 - gcr.io/google_containers/kubernetes-dashboard-init-amd64:v1.0.1 - gcr.io/google_containers/kubernetes-dashboard-amd64:v1.7.1 -这个两个镜像可以同时从**时速云**上获取: - -- index.tenxcloud.com/jimmy/kubernetes-dashboard-amd64:v1.7.1 -- index.tenxcloud.com/jimmy/kubernetes-dashboard-init-amd64:v1.0.1 - 将service type设置为`NodePort`,修改后的yaml文件见[kubernetes-dashboard.yaml](https://github.com/rootsongjc/kubernetes-handbook/tree/master/manifests/dashboard-1.7.1/kubernetes-dashboard.yaml),然后就可以部署新版本的dashboard了。 ```bash diff --git a/practice/distributed-load-test.md b/practice/distributed-load-test.md index ac438270a..c85db1d8b 100644 --- a/practice/distributed-load-test.md +++ b/practice/distributed-load-test.md @@ -12,7 +12,7 @@ 本文中使用的镜像、kubernetes应用的yaml配置来自我的另一个项目,请参考:https://github.com/rootsongjc/distributed-load-testing-using-kubernetes - `sample-webapp` 目录下包含一个简单的web测试应用。我们将其构建为docker镜像,在kubernetes中运行。你可以自己构建,也可以直接用这个我构建好的镜像`index.tenxcloud.com/jimmy/k8s-sample-webapp:latest`。 + `sample-webapp` 目录下包含一个简单的web测试应用。我们将其构建为docker镜像,在kubernetes中运行。 在kubernetes上部署sample-webapp。 @@ -27,21 +27,25 @@ $ kubectl create -f sample-webapp-service.yaml `locust-master`和`locust-work`使用同样的docker镜像,修改cotnroller中`spec.template.spec.containers.env`字段中的value为你`sample-webapp` service的名字。 - - name: TARGET_HOST - value: http://sample-webapp:8000 +```yaml +- name: TARGET_HOST + value: http://sample-webapp:8000 +``` ### 创建Controller Docker镜像(可选) `locust-master`和`locust-work` controller使用的都是`locust-tasks` docker镜像。你可以直接下载`gcr.io/cloud-solutions-images/locust-tasks`,也可以自己编译。自己编译大概要花几分钟时间,镜像大小为820M。 - $ docker build -t index.tenxcloud.com/jimmy/locust-tasks:latest . - $ docker push index.tenxcloud.com/jimmy/locust-tasks:latest - -**注意**:我使用的是时速云的镜像仓库。 +```bash +$ docker build -t jimmysong/locust-tasks:latest . +$ docker push jimmysong/locust-tasks:latest +``` 每个controller的yaml的`spec.template.spec.containers.image` 字段指定的是我的镜像: - image: index.tenxcloud.com/jimmy/locust-tasks:latest +```ini +image: jimmysong/locust-tasks:latest +``` ### 部署locust-master ```bash diff --git a/practice/heapster-addon-installation.md b/practice/heapster-addon-installation.md index dac165a74..03b49b6aa 100644 --- a/practice/heapster-addon-installation.md +++ b/practice/heapster-addon-installation.md @@ -2,11 +2,7 @@ ## 准备镜像 -官方镜像保存在 gcr.io 中需要翻墙才能下载,为了方便大家使用,我下载后放到了[时速云](http://www.tenxcloud.com)中,为公有镜像供大家下载。 - -- index.tenxcloud.com/jimmy/heapster-amd64:v1.3.0-beta.1 -- index.tenxcloud.com/jimmy/heapster-influxdb-amd64:v1.1.1 -- index.tenxcloud.com/jimmy/heapster-grafana-amd64:v4.0.2 +官方镜像保存在 gcr.io 中需要翻墙才能下载,请自行拷贝到私有仓库。 ## 准备YAML文件 diff --git a/practice/install-kubernetes-on-centos.md b/practice/install-kubernetes-on-centos.md index 45a9410d7..29c8bfde3 100644 --- a/practice/install-kubernetes-on-centos.md +++ b/practice/install-kubernetes-on-centos.md @@ -12,7 +12,7 @@ 所以本文档主要适合于那些有一定 kubernetes 基础,想通过一步步部署的方式来学习和了解系统配置、运行原理的人。 -**注:本文档中不包括docker和私有镜像仓库的安装,安装说明中使用的镜像来自 Google Cloud Platform,为了方便国内用户下载,我将其克隆并上传到了 [时速云镜像市场](https://tenxcloud.com/),搜索”Jimmy“,供大家免费下载。** +**注:本文档中不包括docker和私有镜像仓库的安装,安装说明中使用的镜像来自 Google Cloud Platform,中国大陆用户若无法访问请自行选择其他镜像仓库备份。** **欲下载最新版本的官方镜像请访问 [Google 云平台容器注册表](https://console.cloud.google.com/gcr/images/google-containers/GLOBAL)。** diff --git a/practice/kubedns-addon-installation.md b/practice/kubedns-addon-installation.md index f6472da39..4b3abf653 100644 --- a/practice/kubedns-addon-installation.md +++ b/practice/kubedns-addon-installation.md @@ -4,28 +4,22 @@ 该插件直接使用kubernetes部署,官方的配置文件中包含以下镜像: - gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 - gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 - gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 +```ini +gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 +gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 +gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 +``` 我clone了上述镜像,上传到我的私有镜像仓库: -``` +```ini harbor-001.jimmysong.io/library/k8s-dns-dnsmasq-nanny-amd64:1.14.1 harbor-001.jimmysong.io/library/k8s-dns-kube-dns-amd64:1.14.1 harbor-001.jimmysong.io/library/k8s-dns-sidecar-amd64:1.14.1 ``` -同时上传了一份到时速云备份: - -``` -index.tenxcloud.com/jimmy/k8s-dns-dnsmasq-nanny-amd64:1.14.1 -index.tenxcloud.com/jimmy/k8s-dns-kube-dns-amd64:1.14.1 -index.tenxcloud.com/jimmy/k8s-dns-sidecar-amd64:1.14.1 -``` - 以下yaml配置文件中使用的是私有镜像仓库中的镜像。 -``` +``` ini kubedns-cm.yaml kubedns-sa.yaml kubedns-controller.yaml diff --git a/practice/network-and-cluster-perfermance-test.md b/practice/network-and-cluster-perfermance-test.md index 55960d03a..0557ada25 100644 --- a/practice/network-and-cluster-perfermance-test.md +++ b/practice/network-and-cluster-perfermance-test.md @@ -355,13 +355,6 @@ Test Suite Passed - gcr.io/google_containers/pause-amd64:3.0 - gcr.io/google_containers/serve_hostname:v1.4 -时速云镜像地址: - -- index.tenxcloud.com/jimmy/pause-amd64:3.0 -- index.tenxcloud.com/jimmy/serve_hostname:v1.4 - -将镜像pull到本地后重新打tag。 - ## Locust测试 请求统计 diff --git a/practice/nginx-ingress-installation.md b/practice/nginx-ingress-installation.md index 3d43a1fc3..8d62498c7 100644 --- a/practice/nginx-ingress-installation.md +++ b/practice/nginx-ingress-installation.md @@ -12,12 +12,7 @@ - gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.15 - gcr.io/google_containers/defaultbackend:1.3 -gcr.io中的那个两个镜像我复制了一份到时速云,可供大家下载: - -- index.tenxcloud.com/jimmy/defaultbackend:1.3 -- index.tenxcloud.com/jimmy/nginx-ingress-controller:0.9.0-beta.15 - -Docker hub上的那个镜像可以直接下载,所有的安装时需要的配置保存在[../manifests/nginx-ingress](https://github.com/rootsongjc/kubernetes-handbook/blob/master/manifests/nginx-ingress)目录下。 +所有的安装时需要的配置保存在[../manifests/nginx-ingress](https://github.com/rootsongjc/kubernetes-handbook/blob/master/manifests/nginx-ingress)目录下。 ## 步骤详解 diff --git a/practice/node-installation.md b/practice/node-installation.md index 06c0e17e7..7129f724f 100644 --- a/practice/node-installation.md +++ b/practice/node-installation.md @@ -234,7 +234,7 @@ KUBELET_ARGS="--cgroup-driver=systemd --cluster-dns=10.254.0.2 --experimental-bo + `--cluster-dns` 指定 kubedns 的 Service IP(可以先分配,后续创建 kubedns 服务时指定该 IP),`--cluster-domain` 指定域名后缀,这两个参数同时指定后才会生效; + `--cluster-domain` 指定 pod 启动时 `/etc/resolve.conf` 文件中的 `search domain` ,起初我们将其配置成了 `cluster.local.`,这样在解析 service 的 DNS 名称时是正常的,可是在解析 headless service 中的 FQDN pod name 的时候却错误,因此我们将其修改为 `cluster.local`,去掉最后面的 ”点号“ 就可以解决该问题,关于 kubernetes 中的域名/服务名称解析请参见我的另一篇文章。 + `--kubeconfig=/etc/kubernetes/kubelet.kubeconfig `中指定的`kubelet.kubeconfig`文件在第一次启动kubelet之前并不存在,请看下文,当通过CSR请求后会自动生成`kubelet.kubeconfig`文件,如果你的节点上已经生成了`~/.kube/config`文件,你可以将该文件拷贝到该路径下,并重命名为`kubelet.kubeconfig`,所有node节点可以共用同一个kubelet.kubeconfig文件,这样新添加的节点就不需要再创建CSR请求就能自动添加到kubernetes集群中。同样,在任意能够访问到kubernetes集群的主机上使用`kubectl --kubeconfig`命令操作集群时,只要使用`~/.kube/config`文件就可以通过权限认证,因为这里面已经有认证信息并认为你是admin用户,对集群拥有所有权限。 -+ `KUBELET_POD_INFRA_CONTAINER` 是基础镜像容器,这里我用的是私有镜像仓库地址,**大家部署的时候需要修改为自己的镜像**。我上传了一个到时速云上,可以直接 `docker pull index.tenxcloud.com/jimmy/pod-infrastructure` 下载。`pod-infrastructure`镜像是Redhat制作的,大小接近80M,下载比较耗时,其实该镜像并不运行什么具体进程,可以使用Google的pause镜像`gcr.io/google_containers/pause-amd64:3.0`,这个镜像只有300多K,或者通过DockerHub下载`jimmysong/pause-amd64:3.0`。 ++ `KUBELET_POD_INFRA_CONTAINER` 是基础镜像容器,这里我用的是私有镜像仓库地址,**大家部署的时候需要修改为自己的镜像**。`pod-infrastructure`镜像是Redhat制作的,大小接近80M,下载比较耗时,其实该镜像并不运行什么具体进程,可以使用Google的pause镜像`gcr.io/google_containers/pause-amd64:3.0`,这个镜像只有300多K,或者通过DockerHub下载`jimmysong/pause-amd64:3.0`。 完整 unit 见 [kubelet.service](../systemd/kubelet.service) diff --git a/practice/service-rolling-update.md b/practice/service-rolling-update.md index 25bf08b0a..174e297fa 100644 --- a/practice/service-rolling-update.md +++ b/practice/service-rolling-update.md @@ -93,7 +93,6 @@ build: GOOS=linux GOARCH=amd64 go build -o hello${TAG} main.go docker build -t harbor-001.jimmysong.io/library/hello:${TAG} . -# Push to tenxcloud push: docker push harbor-001.jimmysong.io/library/hello:${TAG} diff --git a/practice/using-prometheus-to-monitor-kuberentes-cluster.md b/practice/using-prometheus-to-monitor-kuberentes-cluster.md index 01211c60e..1445c0bae 100644 --- a/practice/using-prometheus-to-monitor-kuberentes-cluster.md +++ b/practice/using-prometheus-to-monitor-kuberentes-cluster.md @@ -12,16 +12,6 @@ - harbor-001.jimmysong.io/library/dockermuenster-caddy:0.9.3 - harbor-001.jimmysong.io/library/prom-node-exporter:v0.14.0 -同时备份到时速云: - -- index.tenxcloud.com/jimmy/prometheus-alertmanager:v0.7.1 -- index.tenxcloud.com/jimmy/grafana:4.2.0 -- index.tenxcloud.com/jimmy/giantswarm-tiny-tools:latest -- index.tenxcloud.com/jimmy/prom-prometheus:v1.7.0 -- index.tenxcloud.com/jimmy/kube-state-metrics:v1.0.1 -- index.tenxcloud.com/jimmy/dockermuenster-caddy:0.9.3 -- index.tenxcloud.com/jimmy/prom-node-exporter:v0.14.0 - **注**:所有镜像都是从官方镜像仓库下载下。 ## 部署 diff --git a/usecases/spark-standalone-on-kubernetes.md b/usecases/spark-standalone-on-kubernetes.md index e6c89d87d..099f15919 100644 --- a/usecases/spark-standalone-on-kubernetes.md +++ b/usecases/spark-standalone-on-kubernetes.md @@ -1,19 +1,10 @@ # Spark standalone on Kubernetes -该项目是基于 Spark standalone 模式,对资源的分配调度还有作业状态查询的功能实在有限,对于让 spark 使用真正原生的 kubernetes 资源调度推荐大家尝试 https://github.com/apache-spark-on-k8s/ - -本文中使用的镜像我已编译好上传到了时速云上,大家可以直接下载。 - -``` -index.tenxcloud.com/jimmy/spark:1.5.2_v1 -index.tenxcloud.com/jimmy/zeppelin:0.7.1 -``` +该项目是基于 Spark standalone 模式,对资源的分配调度还有作业状态查询的功能实在有限,对于让 spark 使用真正原生的 kubernetes 资源调度推荐大家尝试 。 代码和使用文档见Github地址:https://github.com/rootsongjc/spark-on-kubernetes -本文中用到的 yaml 文件可以在 `manifests/spark-standalone` 目录下找到,也可以在上面的 https://github.com/rootsongjc/spark-on-kubernetes/ 项目的 manifests 目录下找到。 - -**注意**:时速云上本来已经提供的镜像 `index.tenxcloud.com/google_containers/spark:1.5.2_v1` ,但是该镜像似乎有问题,下载总是失败。 +本文中用到的 yaml 文件可以在 `manifests/spark-standalone` 目录下找到,也可以在上面的 项目的 manifests 目录下找到。 ## 在Kubernetes上启动spark @@ -21,7 +12,7 @@ index.tenxcloud.com/jimmy/zeppelin:0.7.1 所有yaml文件都在`manifests`目录下。 -``` +```bash $ kubectl create -f manifests/ ``` @@ -35,7 +26,7 @@ $ kubectl create -f manifests/ 通过上面对ingress的配置暴露服务,需要修改本机的/etc/hosts文件,增加以下配置,使其能够解析到上述service。 -``` +```ini 172.20.0.119 zeppelin.traefik.io 172.20.0.119 spark.traefik.io ```