部署和體驗Helm 2 16 1版本

2021-10-01 16:10:39 字數 3318 閱讀 1584

在kubernetes上進行容器化部署並非易事,docker、環境變數、儲存、網路等方面都會涉及到,這些複雜的操作可以被helm應用包管理工具實現,避免了全手工操作的,helm官網:

本次實戰環境是kubernetes集群(1.15.3版本),由三颱centos7.7伺服器組成;

部署完畢後,在體驗helm的環節,需要您提前準備好nfs,作為部署應用的網路儲存空間;

ssh登入到可以執行kubectl操作的伺服器:

解壓:

tar -zxvf helm-v2.16.1-linux-amd64.tar.gz
把解壓後的資料夾內的helm檔案放入/usr/local/bin/:

mv linux-amd64/helm /usr/local/bin/
檢視helm版本,如下,可見客戶端版本是2.16.1,由於helm服務端(名為tiller)還沒有部署,因此顯示"could not find tiller":

[root@node1 ~]

# helm version

client: &version.version

error: could not find tiller

客戶端部署完畢,接下來要把serviceaccount和角色繫結建好

建立名為tiller的serviceaccount:

kubectl create serviceaccount --namespace kube-system tiller
把tiller與角色tiller-cluster-rule進行繫結:

kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
helm初始化,其中tiller的映象來自阿里雲,並且將預設倉庫也設定為阿里雲的:

helm init --upgrade -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.16.1 --stable-repo-url  --service-account tiller
等待控制台提示成功後再次執行helm version,輸出如下,可見helm的服務端已經返回了資訊:

[root@node1 ~]

# helm version

client: &version.version

server: &version.version

現在helm已裝好,接下來部署個應用試試

接下來用helm部署服務的時候會用到儲存卷,因此要提前準備pv;

我這裡已經準備好了nfs作為pv,關於nfs如何部署可以參考《ubuntu16環境安裝和使用nfs》;

注意,k8s集群所有宿主機上都要裝好nfs客戶端,centos的安裝命令如下:

yum install nfs-utils -y
建立名為pv-tomcat.yaml的檔案,內容如下,其中192.168.133.142是nfs伺服器的位址,/usr/local/work/test/001是可用的儲存路徑:

apiversion

: v1

kind

: persistentvolume

metadata

:name

: pv-tomcat

namespace

: default

spec

:capacity

:storage

: 10gi

accessmodes

:- readwriteonce

persistentvolumereclaimpolicy

: recycle

nfs:path

: /usr/local/work/test/001

server

: 192.168.133.142

執行以下命令建立pv:

kubectl create -f pv-tomcat.yaml
pv已經準備好,可以通過helm部署應用了

想部署tomcat,執行命令helm search tomcat查詢,卻發現阿里雲的helm倉庫裡沒有,只能在其他倉庫去找了;

增加乙個倉庫:

helm repo add bitnami
再次查詢tomcat,這回有了:

[root@node1 ~]

# helm search tomcat

bitnami/tomcat 6.0.6 9.0.29 chart for apache tomcat

執行以下命令部署tomcat,指定chat名為my-tomcat:

helm install \

--name my-tomcat \

bitnami/tomcat

使用helm list命令檢視:

[root@node1 ~]

# helm list

my-tomcat 1 sun nov 24 20:29:16 2019 deployed tomcat-6.0.6 9.0.29 default

使用kubectl get services命令檢視kubernetes服務,可見為tomcat建立了service,型別是loadbalancer:

[root@node1 local]

# kubectl get services

name type cluster-ip external-ip port(s) age

kubernetes clusterip 10.233.0.1 443/tcp 3h36m

my-tomcat loadbalancer 10.233.16.166 80:31229/tcp 100s

由上述資訊可見,tomcat服務型別為loadbalancer,因此我們可以通過宿主機的31229埠訪問,如下圖可見:

至此,實戰結束,在您安裝和使用helm的時候,希望本文能給您一些參考;

02 10版本kafka安裝部署

安裝 zookeeper 安裝版本 3.4.10 安裝步驟 1 直接解壓 tar zvxf zookeeper 3.4.10.tar.gz 2 解壓完成後,重新命名 方便使用 mv zookeeper 3.4.10 zookeeper 3 更改環境變數 vi etc profile 新增以下資訊 e...

VMware RHEL4 初體驗 1 0 版本

2008 1 14 lvmware 6.0 虛擬機器檔案包括 1 虛擬機器配置檔案 vmx 2 虛擬磁碟檔案 vmdk 或者raw 磁碟定義檔案 raw 乙個虛擬機器磁碟檔案儲存你寫入到一台虛擬機器 硬碟的資訊 作業系統,程式檔案和資料檔案。如果虛擬磁碟大於 2gb,目錄中顯示一系列的檔案,它們的名...

Windbg 32位版本和64位版本的選擇

習慣了vsiual studio的兄弟們可能會因為先入為主的原因以為所有的偵錯程式都應該像它那樣,其實不然,當你安裝 debugging tools for windows的時候,你將發現有兩個系列的工具,一系列32位的工具和一系列64位的工具。這讓人覺得和費解,因為在我們安裝 microsoft ...