Minikube+istio+Knativeをやってみる

公開日:2019-05-31
最終更新:2019-05-31

Knativeをやってみる

Minikubeの構築はこちら
Centosですが...。

環境

プロダクト バージョン
OS RHEL7
Minikube latest
Kubectl latest
Istio 0.2.3
Knative 0.2.3

※本記事では、RHEL7を利用するため、Dockerのcgroup driverは「cgroupfs」に変更しておくとよいです

istio install

Minikubeを構築したサーバ内にistioをinstallする

kubectl apply --filename https://github.com/knative/serving/releases/download/v0.2.3/istio.yaml  

# attach label  
kubectl label namespace default istio-injection=enabled  

確認

kubectl get pods --namespace istio-system --watch  
kubectl get pods --namespace istio-system  

すべて"Running"か"Completed"になっていればOKです

knative serving install

Knative servingをinstallする

kubectl apply --filename https://github.com/knative/serving/releases/download/v0.2.3/serving.yaml  

確認

kubectl get pods --namespace knative-serving  

service.yamlの用意

service.yaml

apiVersion: serving.knative.dev/v1alpha1 # Current version of Knative  
kind: Service  
metadata:  
  name: helloworld-go # The name of the app  
  namespace: default # The namespace the app will use  
spec:  
  runLatest:  
    configuration:  
      revisionTemplate:  
        spec:  
          container:  
            image: gcr.io/knative-samples/helloworld-go # The URL to the image of the app  
            env:  
              - name: TARGET # The environment variable printed out by the sample app  
                value: "Go Sample v1"  

起動

kubectl apply --filename service.yaml  

確認

kubectl get pods --namespace default  
kubectl get all  

リクエストする

ドメイン名の確認

kubectl get services.serving.knative.dev helloworld-go  -o=custom-columns=NAME:.metadata.name,DOMAIN:.status.domain  

servcice portの確認

kubectl get svc knative-ingressgateway -n istio-system -o 'jsonpath={.spec.ports[?(@.port==80)].nodePort}'  

echo $(minikube ip):$(kubectl get svc knative-ingressgateway -n istio-system -o 'jsonpath={.spec.ports[?(@.port==80)].nodePort}')  

リクエストする

curl -H "Host: ${DOMAIN}" http://${IP_ADDRESS}  

所感

istioとKnativeはわざと0.2.3を使っています。
最新バージョンを試してみたんですが、力及ばず起動できんかったです。

んー、難しかったです。

記事が少しでもいいなと思ったらクラップを送ってみよう!
18
+1
@Krjwuh1JmxFA4tb0の技術ブログ

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする