kubernetes helm 试用

各个 node上 下载 helm tiller docker image

docker pull registry.cn-hangzhou.aliyuncs.com/google-containers/tiller:v2.2.0
docker tag registry.cn-hangzhou.aliyuncs.com/google-containers/tiller:v2.2.0 gcr.io/kubernetes-helm/tiller:v2.2.0

k8s master上下载helm

https://storage.googleapis.com/kubernetes-helm/helm-v2.2.0-linux-amd64.tar.gz
tar -xvf helm-v2.2.0-linux-amd64.tar.gz && mv ./linux-amd64/helm /usr/bin/helm

helm 初始化

helm init
(上述命令有可能失败,如
Error: Looks like "https://kubernetes-charts.storage.googleapis.com" is not a valid chart repository or cannot be reached: Get https://kubernetes-charts.storage.googleapis.com/index.yaml: dial tcp 74.125.204.128:443: i/o timeout
可稍后重试)

查看tiller-depoy 启动状态
kubectl get pods --namespace=kube-system -o wide

helm试用

[root@cloud4ourself-kcluster1 ~]# helm version
Client: &version.Version{SemVer:"v2.2.0", GitCommit:"fc315ab59850ddd1b9b4959c89ef008fef5cdf89", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.2.0", GitCommit:"fc315ab59850ddd1b9b4959c89ef008fef5cdf89", GitTreeState:"clean"}

获取charts

[root@cloud4ourself-kcluster1 ~]# helm search  mysql
NAME            VERSION DESCRIPTION
stable/mysql    0.2.5   Fast, reliable, scalable, and easy to use open-...
stable/mariadb  0.5.10  Fast, reliable, scalable, and easy to use open-...
[root@cloud4ourself-kcluster1 ~]#
[root@cloud4ourself-kcluster1 ~]#
[root@cloud4ourself-kcluster1 ~]# helm install stable/mariadb
NAME:   hazy-heron
LAST DEPLOYED: Wed Mar 15 10:58:20 2017
NAMESPACE: default
STATUS: DEPLOYED

RESOURCES:
==> v1/Secret
NAME                TYPE    DATA  AGE
hazy-heron-mariadb  Opaque  2     0s

==> v1/ConfigMap
NAME                DATA  AGE
hazy-heron-mariadb  1     0s

==> v1/PersistentVolumeClaim
NAME                STATUS   VOLUME  CAPACITY  ACCESSMODES  AGE
hazy-heron-mariadb  Pending  0s

==> v1/Service
NAME                CLUSTER-IP      EXTERNAL-IP  PORT(S)   AGE
hazy-heron-mariadb  10.100.193.197  <none>       3306/TCP  0s

==> extensions/v1beta1/Deployment
NAME                DESIRED  CURRENT  UP-TO-DATE  AVAILABLE  AGE
hazy-heron-mariadb  1        1        1           0          0s


NOTES:
MariaDB can be accessed via port 3306 on the following DNS name from within your cluster:
hazy-heron-mariadb.default.svc.cluster.local

To connect to your database:

1. Run a pod that you can use as a client:

    kubectl run hazy-heron-mariadb-client --rm --tty -i --image bitnami/mariadb --command -- bash

2. Connect using the mysql cli, then provide your password:
    $ mysql -h hazy-heron-mariadb

查看新增pod
kubectl get pod
kubectl describe pod hazy-heron-mariadb-239282535-t501b

Events:
  FirstSeen LastSeen    Count   From            SubObjectPath   Type        Reason          Message
  --------- --------    -----   ----            -------------   --------    ------          -------
  19m       24s     70  {default-scheduler }            Warning     FailedScheduling    [SchedulerPredicates failed due to PersistentVolumeClaim is not bound: "hazy-heron-mariadb", which is unexpected., SchedulerPredicates failed due to PersistentVolumeClaim is not bound: "hazy-heron-mariadb", which is unexpected., SchedulerPredicates failed due to PersistentVolumeClaim is not bound: "hazy-heron-mariadb", which is unexpected.]

错误原因为:

[root@cloud4ourself-kcluster1 ~]# kubectl describe pvc hazy-heron-mariadb
Name:       hazy-heron-mariadb
Namespace:  default
StorageClass:   default
Status:     Pending
Volume:
Labels:     app=hazy-heron-mariadb
        chart=mariadb-0.5.10
        heritage=Tiller
        release=hazy-heron
Capacity:
Access Modes:
Events:
  FirstSeen LastSeen    Count   From                SubObjectPath   Type        Reason          Message
  --------- --------    -----   ----                -------------   --------    ------          -------
  1h        53m     65  {persistentvolume-controller }          Warning     ProvisioningFailed  cannot find volume plugin for alpha provisioning
  52m       52m     2   {persistentvolume-controller }          Warning     ProvisioningFailed  cannot find volume plugin for alpha provisioning
  51m       26m     99  {persistentvolume-controller }          Warning     ProvisioningFailed  cannot find volume plugin for alpha provisioning
  24m       9s      98  {persistentvolume-controller }          Warning     ProvisioningFailed  cannot find volume plugin for alpha provisioning
git clone https://github.com/kubernetes/charts
cd charts/stable/mariadb/templates
grep alpha pvc.yaml
  pvc.yaml:    volume.alpha.kubernetes.io/storage-class: default

[root@cloud4ourself-kcluster1 templates]# kubectl get storageclass
NAME      TYPE
fast      kubernetes.io/rbd
slow      kubernetes.io/rbd

修改为“”volume.beta.kubernetes.io/storage-class: slow“”
helm install stable/mariadb/

[root@cloud4ourself-kcluster1 ~]# kubectl get pvc
NAME                   STATUS    VOLUME                                     CAPACITY   ACCESSMODES   AGE
data-mysql-0           Bound     pvc-6c385d50-057a-11e7-9e49-fa163ef34ac6   10Gi       RWO           4d
data-mysql-1           Bound     pvc-6c3fa1a6-057a-11e7-9e49-fa163ef34ac6   10Gi       RWO           4d
data-mysql-2           Bound     pvc-6c472689-057a-11e7-9e49-fa163ef34ac6   10Gi       RWO           4d
hazy-heron-mariadb     Pending                                                                       5h
saucy-numbat-mariadb   Pending                                                                       6m
[root@cloud4ourself-kcluster1 ~]# kubectl describe pvc saucy-numbat-mariadb
Name:       saucy-numbat-mariadb
Namespace:  default
StorageClass:   slow
Status:     Pending
Volume:
Labels:     app=saucy-numbat-mariadb
        chart=mariadb-0.5.10
        heritage=Tiller
        release=saucy-numbat
Capacity:
Access Modes:
Events:
  FirstSeen LastSeen    Count   From                SubObjectPath   Type        Reason          Message
  --------- --------    -----   ----                -------------   --------    ------          -------
  5m        9s      21  {persistentvolume-controller }          Warning     ProvisioningFailed  Failed to provision volume with StorageClass "slow": rbd: create volume failed, err: executable file not found in $PATH

解决办法参考,http://www.jianshu.com/p/98337fc2e8d3

[root@cloud4ourself-kcluster1 ~]# kubectl get pvc
NAME                   STATUS    VOLUME                                     CAPACITY   ACCESSMODES   AGE

hazy-heron-mariadb     Pending                                                                       5h
saucy-numbat-mariadb   Pending                                                                       14m
xrayed-frog-mariadb    Pending                                                                       4m
[root@cloud4ourself-kcluster1 ~]# kubectl get pvc
NAME                   STATUS    VOLUME                                     CAPACITY   ACCESSMODES   AGE

hazy-heron-mariadb     Pending                                                                       5h
saucy-numbat-mariadb   Bound     pvc-1c8320c4-0958-11e7-8870-fa163ef34ac6   8Gi        RWO           14m
xrayed-frog-mariadb    Bound     pvc-86a3a3e6-0959-11e7-8870-fa163ef34ac6   8Gi        RWO           4m

[root@cloud4ourself-kcluster1 ~]# kubectl get pod
NAME                                                              READY     STATUS     RESTARTS   AGE
hazy-heron-mariadb-239282535-t501b                                0/1       Pending    0          5h

saucy-numbat-mariadb-958934623-vg6fk                              0/1       Init:0/1   0          15m

xrayed-frog-mariadb-3843238841-6x4m1                              0/1       Init:0/1   0          5m

[root@cloud4ourself-kcluster1 mariadb]# kubectl get pod
NAME                                                              READY     STATUS    RESTARTS   AGE
hazy-heron-mariadb-239282535-t501b                                0/1       Pending   0          5h

saucy-numbat-mariadb-958934623-vg6fk                              1/1       Running   0          19m

xrayed-frog-mariadb-3843238841-6x4m1                              0/1       Running   0          9m

#########################################

更新2017-08-21

install helm

http://www.jianshu.com/p/1953b86649df

download helm

wget https://storage.googleapis.com/kubernetes-helm/helm-v2.6.0-linux-amd64.tar.gz
tar -xvf helm-v2.6.0-linux-amd64.tar.gz
sudo mv linux-amd64/helm /usr/local/bin/
rm -rf linux-amd64

create sa

kubectl create serviceaccount --namespace kube-system tiller
kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'

run helm

helm init --service-account tiller --tiller-image 4admin2root/tiller:v2.6.0 --upgrade

check tiller in k8s

tiller-deploy-3864618634-gjqn7 1/1 Running 0 8m 10.32.0.60

➜ ~ helm version
Client: &version.Version{SemVer:"v2.6.0", GitCommit:"5bc7c619f85d74702e810a8325e0a24f729aa11a", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.6.0", GitCommit:"5bc7c619f85d74702e810a8325e0a24f729aa11a", GitTreeState:"clean"}

for example:

helm search jenkins
helm install --name my-release --set Persistence.StorageClass=slow stable/jenkins
helm get my-release
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,185评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,652评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,524评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,339评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,387评论 6 391
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,287评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,130评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,985评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,420评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,617评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,779评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,477评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,088评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,716评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,857评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,876评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,700评论 2 354

推荐阅读更多精彩内容