iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 19
1
DevOps

Kubernetes and Istio 三十天系列 第 19

[Day19] K3d Expose Service

  • 分享至 

  • xImage
  •  

K3s in docker

目前如果要將服務Expose有兩種方式

  • 採用Ingress
  • 採用NodePort

Ingress

## --publish HostPort:ServicePort 就是建立K3s 跟 Host Docker  
## --workers 就是建立一個具有兩個node的Kubernetes 這邊是Option
k3d create --publish 8081:80 --workers 2

export KUBECONFIG="$(k3d get-kubeconfig --name='k3s-default')"

kubectl create deployment nginx --image=nginx

kubectl create service clusterip nginx --tcp=80:80

cat <<EOF | kubectl create -f -
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: nginx
  annotations:
    ingress.kubernetes.io/ssl-redirect: "false"
spec:
  rules:
  - http:
      paths:
      - path: /
        backend:
          serviceName: nginx
          servicePort: 80
EOF

Verifying

curl localhost:8081/

NodePort and Istio Gateway

## 跟Expose Ingress的方式一樣 都要先--publish
k3d create --publish 31380:31380

Verifying

curl -s http://${GATEWAY_URL}/productpage | grep -o "<title>.*</title>"

結語

K3d在Expose服務的時候都必須從create cluster階段開始,非常不適合當作開發環境,不過目前社群已經有想將Expose Service in Runtime所以可以期待。


上一篇
[Day18] Istio Example BookInfo
下一篇
[Day20] Istio Example BookInfo - Gateway
系列文
Kubernetes and Istio 三十天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言