一、chart的结构

(1)更改helm为阿里云仓库源

[root@master helm]# helm repo remove stable
"stable" has been removed from your repositories [root@master helm]# helm repo add stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
"stable" has been added to your repositories [root@master helm]# helm repo list
NAME URL
local http://127.0.0.1:8879/charts
incubator https://kubernetes-charts-incubator.storage.googleapis.com/
stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts #更新
[root@master helm]# helm repo update
Hang tight while we grab the latest from your chart repositories...
...Skip local chart repository
...Successfully got an update from the "incubator" chart repository
...Successfully got an update from the "stable" chart repository
Update Complete. ⎈ Happy Helming!⎈

(2)

[root@master helm]# pwd
/root/manifests/helm
[root@master helm]# helm fetch stable/redis #获取chart,会得到一个压缩包 [root@master helm]# tar zxf redis-6.4..tgz [root@master helm]# ls
redis redis-6.4..tgz tiller-rbac.yaml #chart目录结构
[root@master helm]# tree redis
redis
├── Chart.yaml #chart元数据描述信息(版本...)
├── ci
│ ├── default-values.yaml
│ ├── dev-values.yaml
│ ├── production-values.yaml
│ ├── redisgraph-module-values.yaml
│ └── redis-lib-values.yaml
├── README.md
├── templates #资源定义清单模板文件
│ ├── configmap.yaml
│ ├── health-configmap.yaml
│ ├── _helpers.tpl
│ ├── metrics-deployment.yaml
│ ├── metrics-prometheus.yaml
│ ├── metrics-svc.yaml
│ ├── networkpolicy.yaml
│ ├── NOTES.txt
│ ├── redis-master-statefulset.yaml
│ ├── redis-master-svc.yaml
│ ├── redis-rolebinding.yaml
│ ├── redis-role.yaml
│ ├── redis-serviceaccount.yaml
│ ├── redis-slave-deployment.yaml
│ ├── redis-slave-svc.yaml
│ └── secret.yaml
├── values-production.yaml
└── values.yaml #为 templates中的资源定义清单设置自定义属性值
#其他目录结构
requirements.yaml #当前chart是否依赖其他chart,这个文件是可选的。
charts/ #里面放置的是当前chart所要依赖的其他chart,这个是可选的。 #可以通过chart官方手册,来了解以上每项的详细含义:
https://docs.helm.sh/developing_charts/#charts

二、用helm生成基础chart示例性文件

(1)

[root@master helm]# helm create myapp
Creating myapp [root@master helm]# ls |grep myapp
myapp [root@master helm]# tree myapp/
myapp/
├── charts
├── Chart.yaml
├── templates
│   ├── deployment.yaml
│   ├── _helpers.tpl
│   ├── ingress.yaml
│   ├── NOTES.txt
│   └── service.yaml
└── values.yaml #可以自己修改每个文件里的值,然后做语法检查
[root@master helm]# helm lint myapp
==> Linting myapp
[INFO] Chart.yaml: icon is recommended chart(s) linted, no failures #打包
[root@master helm]# helm package myapp/
Successfully packaged chart and saved it to: /root/manifests/helm/myapp-0.0..tgz [root@master helm]# ls |grep myapp
myapp
myapp-0.0..tgz

(2)启动本地仓库,并应用

[root@master helm]# helm repo list
NAME URL
stable https://kubernetes-charts.storage.googleapis.com
local http://127.0.0.1:8879/charts #启动本地仓库
[root@master helm]# helm serve
Regenerating index. This may take a moment.
Now serving you on 127.0.0.1: #查看,可见myapp已经自动保存在仓库中了
[root@master ~]# helm search myapp
NAME CHART VERSION APP VERSION DESCRIPTION
local/myapp 0.0. 1.0 A Helm chart for Kubernetes myapp chart #如果定义的没问题,就可以部署了
[root@master ~]# helm install --name myapp1 local/myapp #删除
[root@master ~]# helm delete --purge myapp1

三、EFK日志系统

(1)添加incubator源

[root@master ~]# helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com/
"incubator" has been added to your repositories [root@master ~]# helm repo list
NAME URL

k8s-创建自定义chart及部署efk-二十五的更多相关文章

  1. Kubernetes 学习25 创建自定义chart及部署efk日志系统

    一.概述 1.我们说过在helm架构中有这么几个关键组件,helm,tiller server,一般托管运行于k8s之上,helm能够通过tiller server在目标k8s集群之上部署应用程序,而 ...

  2. K8s helm 创建自定义Chart

    # 删除之前创建的 chart helm list helm delete --purge redis1 # 创建自定义 chart myapp cd ~/helm helm create myapp ...

  3. JAVA之旅(二十五)——文件复制,字符流的缓冲区,BufferedWriter,BufferedReader,通过缓冲区复制文件,readLine工作原理,自定义readLine

    JAVA之旅(二十五)--文件复制,字符流的缓冲区,BufferedWriter,BufferedReader,通过缓冲区复制文件,readLine工作原理,自定义readLine 我们继续IO上个篇 ...

  4. WCF技术剖析之二十五: 元数据(Metadata)架构体系全景展现[元数据描述篇]

    原文:WCF技术剖析之二十五: 元数据(Metadata)架构体系全景展现[元数据描述篇] 在[WS标准篇]中我花了很大的篇幅介绍了WS-MEX以及与它相关的WS规范:WS-Policy.WS-Tra ...

  5. C#学习基础概念二十五问

    C#学习基础概念二十五问 1.静态变量和非静态变量的区别?2.const 和 static readonly 区别?3.extern 是什么意思?4.abstract 是什么意思?5.internal ...

  6. [转载]Windows Server 2008 R2 之二十五AD RMS信任策略

    原文地址:Windows Server 2008 R2 之二十五AD RMS信任策略作者:从心开始 可以通过添加信任策略,让 AD RMS 可以处理由不同的 AD RMS 群集进行权限保护的内容的授权 ...

  7. 使用Typescript重构axios(二十五)——文件上传下载进度监控

    0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...

  8. Bootstrap <基础二十五>警告(Alerts)

    警告(Alerts)以及 Bootstrap 所提供的用于警告的 class.警告(Alerts)向用户提供了一种定义消息样式的方式.它们为典型的用户操作提供了上下文信息反馈. 您可以为警告框添加一个 ...

  9. VMware vSphere 服务器虚拟化之二十五 桌面虚拟化之终端服务池

    VMware vSphere 服务器虚拟化之二十五 桌面虚拟化之终端服务池 终端服务池是指由一台或多台微软终端服务器提供服务的桌面源组成的池.终端服务器桌面源可交付多个桌面.它具有以下特征: 1.终端 ...

  10. Bootstrap入门(二十五)JS插件2:过渡效果

    Bootstrap入门(二十五)JS插件2:过渡效果 对于简单的过渡效果,只需将 transition.js 和其它 JS 文件一起引入即可.如果你使用的是编译(或压缩)版的bootstrap.js  ...

随机推荐

  1. Oracle版本–EBS R12.1.1

    select * from v$version; Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Productio ...

  2. 【转】利用shell命令操作Memcached

    原文: 张宴的博客 —— http://zyan.cc/post/384/ -------------------------------------------------------------- ...

  3. python发声

    python发声 学习了:http://www.jb51.net/article/62644.htm import winsound winsound.Beep(600,1000) #其中600表示声 ...

  4. 在chrome中屏蔽百度推荐

    在chrome中屏蔽百度推荐 方法1:可以使用adblock plus来进行屏蔽: 需要将chrome的扩展程序打开为调试者模式: 下载地址:http://chromecj.com/productiv ...

  5. 谷歌訪问之直接输入ip地址

    废话啥说.直接上IP: 173.194.121.51 173.194.43.19 173.194.65.147 74.125.235.148

  6. 【Hibernate】(2)Hibernate配置与session、transaction

    1. Hibernate经常使用配置 使用hibernate.default_schema属性能够让全部生成的表都带一个指定的前缀. 2. session简单介绍 不建议直接使用jdbc的connec ...

  7. Python开发【2.3 模块】

    1.模块导入 import 模块名 from 模块名 import 函数/类/变量 2.模块路径 import sys sys.path 3.模块重新导入 Python3若想在同一次会话中再次运行文件 ...

  8. solr单机多实例部署文件锁冲突解决的方法

    给出一个有问题的单机多tomcat实例引用同一个solr实例部署图. 这样的部署必定造成一个问题.启动第二个tomcat实例时,一定会报索引目录文件锁已经被占用. 最初的解决的方法是.有多少个tomc ...

  9. gradle in action 笔记

    原网址 https://lippiouyang.gitbooks.io/gradle-in-action-cn/content/

  10. app上架的照片尺寸大小