kubernetes helm

# 1.初始化集群
kubeadm reset
kubeadm init --kubernetes-version=v1.10.1 --pod-network-cidr=10.244.0.0/16

# 可选
echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> /etc/profile
source /etc/profile
echo $KUBECONFIG    #应该返回/etc/kubernetes/admin.conf

# 部署flannel网络
kubectl apply -f /opt/kubernetes-1.10/kube-flannel.yml

# 查看所有pod状态
kubectl get pod --all-namespaces
   
# 2.集群中增加节点
kubeadm reset
kubeadm join 192.168.30.11:6443 --token wtp7pf.rp8wb7p7iu15xsfk --discovery-token-ca-cert-hash sha256:7376232a605a09726675497ab969b3792028ce92fb528714f57b01543adedf46

# 3.部署k8s UI http://192.168.30.11:31000
kubectl apply -f kubernetes-dashboard-http.yaml
kubectl apply -f admin-role.yaml
kubectl apply -f kubernetes-dashboard-admin.rbac.yaml

# 4.部署微服务 http://192.168.30.11:30001
kubectl apply -f microarch-registry-dm.yaml
kubectl apply -f microarch-registry-svc.yaml

kubectl apply -f microarch-gateway-dm.yaml
kubectl apply -f microarch-gateway-svc.yaml

kubectl apply -f microarch-service-dm.yaml

kubectl apply -f webclient-dm.yaml
kubectl apply -f webclient-srv.yaml

# 5.安装weave监控
kubectl apply --namespace=weave -f "https://cloud.weave.works/k8s/scope.yaml?k8s-version=$(kubectl version | base64 | tr -d '\n')"

# 6.helm安装
  curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get | bash
  如果安装失败,则单独下载helm-v2.12.3-linux-amd64.tar.gz 并执行安装:
  tar -zxvf helm-v2.12.3-linux-amd64.tar.gzz
  mv linux-amd64/helm /usr/local/bin/helm
 
# helm 的 bash 命令补全脚本,方法如下
    helm completion bash > .helmrc
    echo "source .helmrc" >> .bashrc
    source .bashrc
    
# 7 安装Tiller服务器
    docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.12.3
    helm init -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.10.0

# 初始化权限
·    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"}}}}'

# 8 将chart添加到仓库
    # node节点上启动httpd容器
    docker run -d -p 8080:80 -v /opt/helm_repo:/usr/local/apache2/htdocs/ httpd
    
    # 打包mychart(/opt/helm/myrepo)
    helm package mycharts
    
    # 生成仓库的index文件
    mkdir myrepo
    mv mychart-0.1.0.tgz /myrepo/
    helm repo index myrepo/ --url http://192.168.30.12:8080/charts
    
    # 将mychart-0.1.0.tgz、index.yaml 上传到node节点的/opt/helm_repo/charts
     scp *.* root@192.168.30.12:/opt/helm_repo/charts
    
    # 通过helm repo add 将新仓库添加到Helm
    helm repo add newrepo http://192.168.30.12:8080/charts
    
    # 查询并安装
    helm repo list
    helm install newrepo/mychart
    
----------------------------------------------------------------------------------------    
# 生成hash值,master上执行,参考 https://blog.csdn.net/mailjoin/article/details/79686934
openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'


kubectl get deployments
kubectl delete deployment registry-dm

kuebectl get pods

# 在线修改service端口
kubectl edit svc/weave-scope-app -n weave

转载于:https://www.cnblogs.com/rigid/p/10424800.html

Kubernetes HelmKubernetes 中最流行的包管理工具,它能够帮助开发者在 Kubernetes 集群中部署、升级和管理应用程序。使用 Helm 可以方便地管理 Kubernetes 资源的模板文件,并且可以将这些模板与配置值结合起来,生成可复用的软件包。本文将提供 Helm 的一些基本命令和示例操作。 一、安装 Helm 要安装 Helm,需要下面的几项: 1. 安装 Helm 客户端 ``` brew install helm # Mac choco install kubernetes-helm # Windows apt-get update && apt-get install -y helm # Ubuntu/Debian yum update && yum install -y helm # Centos/RedHat ``` 2. 创建并加入 Helm 仓库 Helm 软件仓库中存储了 Helm Charts,用户从仓库中获取 Charts 以及创建 Charts 进行分发。使用以下命令将官方仓库添加到 Helm。 ``` helm repo add stable https://kubernetes-charts.storage.googleapis.com/ ``` 二、Helm 常用命令 以下是 Helm 中的一些常用命令: 1. helm install 使用 helm install 安装一个 Chart。 ``` helm install [RELEASE NAME] [CHART] [FLAGS] ``` RELEASE NAME:定义一个 Chart 使用的名称。 CHART:定义要使用的 Chart 名称。 FLAGS:一些额外的自定义参数。 例如,安装 Redis 的 Chart。 ``` helm install redis stable/redis ``` 2. helm upgrade 使用 helm upgrade 命令来更新已部署的 Charts。 ``` helm upgrade [RELEASE NAME] [CHART] [FLAGS] ``` RELEASE NAME:定义一个 Chart 使用的名称。 CHART:定义要使用的 Chart 名称。 FLAGS:一些额外的自定义参数。 例如,更新已经安装的 Redis Chart。 ``` helm upgrade redis stable/redis ``` 3. helm list 使用 helm list 命令列出运行在 Kubernetes 集群中的 Charts。 ``` helm list ``` 4. helm delete 删除指定的 Chart。 ``` helm delete [RELEASE NAME] ``` RELEASE NAME:定义一个 Chart 使用的名称。 例如,删除 Redis Chart。 ``` helm delete redis ``` 三、Helm 示例 假设我们要使用 HelmKubernetes 集群中部署 WordPress 应用程序。 1. 安装 MySQL 首先需要安装 MySQL。使用 helm install 命令安装 MySQL。 ``` helm install my-mysql stable/mysql ``` 可以使用以下命令检查 my-mysql 是否安装成功。 ``` helm list ``` 2. 应用程序的 Chart 编写 WordPress 应用程序的 Chart,名称为 wordpress。 ``` apiVersion: v1 kind: Service metadata: name: wordpress spec: type: LoadBalancer ports: - name: http port: 80 targetPort: 80 selector: app: wordpress --- apiVersion: apps/v1 kind: Deployment metadata: name: wordpress spec: selector: matchLabels: app: wordpress replicas: 1 template: metadata: labels: app: wordpress spec: containers: - name: wordpress image: wordpress:4.9.4-php7.0-apache ports: - containerPort: 80 env: - name: WORDPRESS_DB_HOST value: my-mysql - name: WORDPRESS_DB_PASSWORD value: my-mysql-password - name: WORDPRESS_DB_USER value: root --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: wp-pv-claim spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi ``` 3. 安装 WordPress 使用以下命令安装 WordPress。 ``` helm install my-wordpress ./wordpress \ --set service.type=LoadBalancer \ --set ingress.enabled=true \ --set ingress.hosts[0].name=my-wordpress.local \ --set ingress.hosts[0].path=/ \ --set persistence.enabled=true \ --set persistence.existingClaim=wp-pv-claim \ --set db.host=my-mysql \ --set db.user=root \ --set db.password=my-mysql-password \ --set db.name=wordpress ``` 这个命令在指定了一些参数之后使用 helm install 安装 WordPress。 4. 连接 连接到 my-wordpress.local 并访问 WordPress。 ``` kubectl get ingress ``` 可以使用以下命令查看 Ingress 的 IP 地址。 ``` kubectl get services -o wide -n ingress-nginx ``` 打开浏览器并输入 my-wordpress.local 的 IP 地址,可以查看 WordPress 页面。 以上就是 Helm 的一些基本操作和示例。虽然 Helm 看起来比较复杂,但是一旦熟悉了基本命令,其实用起来非常方便。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值