https://bentoml.com logo
Join Slack
Powered by
# tech-writing
  • s

    Sean

    09/16/2022, 12:08 AM
    BentoML documentation: https://docs.bentoml.org/en/latest/index.html Yatai documentation: https://docs.bentoml.org/projects/yatai/en/latest/index.html Yatai GitHub page: https://github.com/bentoml/Yatai Yatai application:
    Copy code
    Sign-in URL: <http://default.cloud.bentoml.com/login>
    Email: <mailto:ashley.zhao.dacml@gmail.com|ashley.zhao.dacml@gmail.com>
    Password: iBQU2gnBtD
    gratitude thank you 3
  • s

    Sean

    09/16/2022, 12:09 AM
    In here, @Xipeng Guan, @Jiang, @Sean are from Engineering. @Tim Liu is from Sales/Marketing/Product.
  • s

    Sean

    09/16/2022, 12:10 AM
    @Ashley Zhao is the technical writer we are working with to do a POC for Yatai documentation. 👋
    🙌 2
  • a

    Ashley Zhao

    09/16/2022, 12:32 AM
    Hello 😄 Nice to meet everyone
    🙌 2
  • s

    Slackbot

    09/17/2022, 8:15 PM
    This message was deleted.
    a
    s
    • 3
    • 5
  • s

    Sean

    09/17/2022, 8:15 PM
    @Tim Liu Ashley will sync up with you on creating video contents for Yatai guides.
    ✅ 1
    gratitude thank you 1
    🙌 1
  • a

    Ashley Zhao

    09/22/2022, 4:07 AM
    Hello again, It’s really nice to talk to everyone today 🙂 Please let me know if you have any questions/needs regarding the documentation, I’ll do my best to address them
    👍 2
    🙌 1
  • a

    Ashley Zhao

    09/22/2022, 4:10 AM
    This occurs after it’s preparing Kubernetes
  • a

    Ashley Zhao

    09/22/2022, 5:44 PM
    Actually, this is resolved by downgrading K to 1.23.8
    Copy code
    Done! kubectl is now configured to use "minikube2" cluster and "default" namespace by default
  • a

    Ashley Zhao

    09/22/2022, 7:12 PM
    I do still run into the pod not healthy error:
    Copy code
    kubectl describe pod yatai-76c48797d8-6pmng --namespace yatai-system
    Name:             yatai-76c48797d8-6pmng
    Namespace:        yatai-system
    Priority:         0
    Service Account:  yatai
    Node:             minikube2/192.168.64.3
    Start Time:       Thu, 22 Sep 2022 14:57:43 -0400
    Labels:           <http://app.kubernetes.io/instance=yatai|app.kubernetes.io/instance=yatai>
                      <http://app.kubernetes.io/name=yatai|app.kubernetes.io/name=yatai>
                      pod-template-hash=76c48797d8
    Annotations:      <none>
    Status:           Pending
    IP:               172.17.0.4
    IPs:
      IP:           172.17.0.4
    Controlled By:  ReplicaSet/yatai-76c48797d8
    Containers:
      yatai:
        Container ID:  
        Image:         <http://quay.io/bentoml/yatai:1.0.0-a0|quay.io/bentoml/yatai:1.0.0-a0>
        Image ID:      
        Port:          7777/TCP
        Host Port:     0/TCP
        Command:
          sh
          -c
        Args:
          exec /app/api-server serve -c /conf/config.yaml
        State:          Waiting
          Reason:       ImagePullBackOff
        Ready:          False
        Restart Count:  0
        Liveness:       http-get http://:http/ delay=10s timeout=10s period=5s #success=1 #failure=15
        Readiness:      http-get http://:http/ delay=10s timeout=10s period=5s #success=1 #failure=60
        Environment Variables from:
          env         Secret  Optional: false
        Environment:  <none>
        Mounts:
          /conf from config (ro)
          /etc/localtime from host-timezone (ro)
          /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-nbvxx (ro)
    Conditions:
      Type              Status
      Initialized       True 
      Ready             False 
      ContainersReady   False 
      PodScheduled      True 
    Volumes:
      host-timezone:
        Type:          HostPath (bare host directory volume)
        Path:          /etc/localtime
        HostPathType:  
      config:
        Type:        Secret (a volume populated by a Secret)
        SecretName:  yatai
        Optional:    false
      kube-api-access-nbvxx:
        Type:                    Projected (a volume that contains injected data from multiple sources)
        TokenExpirationSeconds:  3607
        ConfigMapName:           kube-root-ca.crt
        ConfigMapOptional:       <nil>
        DownwardAPI:             true
    QoS Class:                   BestEffort
    Node-Selectors:              <none>
    Tolerations:                 <http://node.kubernetes.io/not-ready:NoExecute|node.kubernetes.io/not-ready:NoExecute> op=Exists for 300s
                                 <http://node.kubernetes.io/unreachable:NoExecute|node.kubernetes.io/unreachable:NoExecute> op=Exists for 300s
    Events:
      Type     Reason     Age                    From               Message
      ----     ------     ----                   ----               -------
      Normal   Scheduled  7m19s                  default-scheduler  Successfully assigned yatai-system/yatai-76c48797d8-6pmng to minikube2
      Warning  Failed     6m38s                  kubelet            Failed to pull image "<http://quay.io/bentoml/yatai:1.0.0-a0|quay.io/bentoml/yatai:1.0.0-a0>": rpc error: code = Unknown desc = Error response from daemon: Get "<https://quay.io/v2/>": dial tcp: lookup <http://quay.io|quay.io> on 192.168.64.1:53: read udp 192.168.64.3:43418->192.168.64.1:53: i/o timeout
      Warning  Failed     5m42s                  kubelet            Failed to pull image "<http://quay.io/bentoml/yatai:1.0.0-a0|quay.io/bentoml/yatai:1.0.0-a0>": rpc error: code = Unknown desc = Error response from daemon: Get "<https://quay.io/v2/>": dial tcp: lookup <http://quay.io|quay.io> on 192.168.64.1:53: read udp 192.168.64.3:48756->192.168.64.1:53: i/o timeout
      Warning  Failed     4m39s                  kubelet            Failed to pull image "<http://quay.io/bentoml/yatai:1.0.0-a0|quay.io/bentoml/yatai:1.0.0-a0>": rpc error: code = Unknown desc = Error response from daemon: Get "<https://quay.io/v2/>": dial tcp: lookup <http://quay.io|quay.io> on 192.168.64.1:53: read udp 192.168.64.3:58186->192.168.64.1:53: i/o timeout
      Normal   Pulling    3m57s (x4 over 7m18s)  kubelet            Pulling image "<http://quay.io/bentoml/yatai:1.0.0-a0|quay.io/bentoml/yatai:1.0.0-a0>"
      Warning  Failed     3m17s (x4 over 6m38s)  kubelet            Error: ErrImagePull
      Warning  Failed     3m17s                  kubelet            Failed to pull image "<http://quay.io/bentoml/yatai:1.0.0-a0|quay.io/bentoml/yatai:1.0.0-a0>": rpc error: code = Unknown desc = Error response from daemon: Get "<https://quay.io/v2/>": dial tcp: lookup <http://quay.io|quay.io> on 192.168.64.1:53: read udp 192.168.64.3:58805->192.168.64.1:53: i/o timeout
      Warning  Failed     2m50s (x6 over 6m38s)  kubelet            Error: ImagePullBackOff
      Normal   BackOff    2m12s (x9 over 6m38s)  kubelet            Back-off pulling image "<http://quay.io/bentoml/yatai:1.0.0-a0|quay.io/bentoml/yatai:1.0.0-a0>"
    If possible, perhaps I can meet up to walk through the installation steps together, should the errors appear to be something configuration related.
  • a

    Ashley Zhao

    09/22/2022, 7:24 PM
    On second thought, the container doesn’t seem to be there. Let me try to fix the issue.
  • a

    Ashley Zhao

    09/22/2022, 9:05 PM
    After some digging it looks like it isn’t pulling Kubelet images correctly, at least to me. Perhaps this has something to do with using Minikube on MacOS. Let me see if setting it up again helps. Otherwise since I never set up Kubernetes before, I may need to configure it in some other way?
  • a

    Ashley Zhao

    09/22/2022, 10:16 PM
    I think it may have something to do with a VPN client on my mac. I’ll need to test this out in another OS other than my current
  • s

    Sean

    09/25/2022, 7:41 AM
    Hi Ashley, are you still blocked on any of these? We can find some time on Sunday evening to debug together.
  • a

    Ashley Zhao

    09/25/2022, 11:42 PM
    Hi @Sean, Sure, do you have time now?
  • s

    Sean

    09/25/2022, 11:51 PM
    Yes. https://us02web.zoom.us/j/2069799684?pwd=Z2hJbEcxQmRYbEJNY1ZaL2dNQzJlZz09
  • s

    Sean

    09/26/2022, 12:03 AM
    I’m going to step out for a bit, actually.
  • a

    Ashley Zhao

    09/26/2022, 12:03 AM
    Thanks, ok I will hop on whenever
  • s

    Sean

    09/26/2022, 12:05 AM
    Maybe coordinate and chat with @Xipeng Guan? Xipeng, what time is best for you?
  • a

    Ashley Zhao

    09/26/2022, 12:11 AM
    Oh ok, I already scheduled a meeting with Xipeng tomorrow evening
  • s

    Slackbot

    09/26/2022, 2:08 AM
    This message was deleted.
    a
    x
    s
    • 4
    • 15
  • a

    Ashley Zhao

    09/29/2022, 3:02 AM
    Hi again, sorry ran into another issue it was while installing Yatai-deployment I was following instructions up till it hit helm chart configuration for yatai
    Copy code
    kubectl -n yatai-deployment get pod -l app=docker-private-registry-proxy
    NAME                                  READY   STATUS    RESTARTS   AGE
    docker-private-registry-proxy-d9z2x   1/1     Running   0          6s
    (base) ashleyzhao@Ashleys-MacBook-Pro ~ % kubectl -n yatai-deployment patch cm/network --type merge --patch '{"data":{"ingress-class":"$INGRESS_CLASS"}}'
    Error from server (NotFound): configmaps "network" not found
    Error also occurs in the public docker registry
  • a

    Ashley Zhao

    09/29/2022, 3:02 AM
    Here is what I get for INGRESS_CLASS:
    echo $INGRESS_CLASS
    nginx
  • s

    Slackbot

    09/29/2022, 3:58 AM
    This message was deleted.
    a
    s
    • 3
    • 4
  • s

    Slackbot

    09/29/2022, 4:20 AM
    This message was deleted.
    ✅ 1
    x
    a
    s
    • 4
    • 5
  • a

    Ashley Zhao

    09/29/2022, 4:56 AM
    Rough overview of docs: • Get started ◦ Yatai components ▪︎ Yatai (Kubernetes, PostgreSQL protocol database, S3) ▪︎ Yatai deployment (cert-manager, metrics-server, docker registry, ingress class/annotations) ◦ Terminology/Additional resources (links) ◦ Minimum requirements ◦ Supported frameworks? (Everything is bento) ◦ Installation ▪︎ Yatai ▪︎ Yatai Deployment • Update • Tutorial • Yatai ◦ Manage models ◦ Deploy • Monitor ◦ Collecting metrics and logs • Uninstall? • Troubleshoot ◦ Limitations ▪︎ Does not support Docker on MacOS ◦ _Common installation questions (?)_First time set up AWS - give permissions ▪︎ Kubernetes problems - check VPN • Terminology/Additional information ◦ BentoML models ◦ Model registry ◦ Bento ◦ Bento registry ◦ Bento Deployment CRD I’ll share the Notion docs once I refine them. It’s in some very rough patches so I’m not sure if they’ll be ready to be reviewed. However you’re always welcome to take a look.
  • a

    Ashley Zhao

    09/29/2022, 4:58 AM
    The only topic that I’m not sure if we need is an Uninstall section.
  • a

    Ashley Zhao

    09/29/2022, 4:58 AM
    If there are other topics that need to be added/removed, feel free to let me know!
  • s

    Sean

    09/29/2022, 10:36 PM
    New format agree with Ashley.
    Copy code
    ## TOC
    
    - Concepts
        - Architecture
            - Diagram ([<https://excalidraw.com/](https://excalidraw.com/)>)
        - Yatai (Kubernetes, PostgreSQL protocol database, S3)
        - Yatai deployment (cert-manager, metrics-server, docker registry, ingress class/annotations)
        - Observability (Prometheus, Grafana, Loki)
        - Terminology/Additional resources (links?)
            - BentoML models
            - Model registry
            - Bento
            - Bento registry
            - Bento Deployment CRD
    - Installation
        - Yatai Installation/System requirements
        - [Yatai Deployment](<https://docs.bentoml.org/projects/yatai/en/latest/installation/yatai_deployment.html)/System> requirements
        - (Install) Observability (for Prometheus/Grafana/Loki)
        - [Update](<https://docs.bentoml.org/projects/yatai/en/latest/installation/yatai.html>) / Migration from Yatai 0.4
        - Troubleshoot
            - Limitations
                - Does not support Docker on MacOS
            - *Common installation questions (?)*
                - First time set up AWS - give permissions
                - Kubernetes problems - check VPN
        - Uninstall
    - Tutorial (Video)
        - Yatai
            - Model and bento repository (push/pull and UI)
            - Administrator (manage users)
        - Yatai Deployment
            - Create, delete, update deployments from UI
            - Create, delete, update deployments from BentoDeployment CRD
                - Kubernetes
                    - BentoDeployment CRD (Examples)
                        - Note: comes with `yatai-deployment`
                        
                        ```jsx
                        > kubectl apply deployment.yaml
                        > k get svc
    - Observability - Metrics, Logs, (Traces) [Collecting metrics and logs](https://docs.bentoml.org/projects/yatai/en/latest/observability/metrics.html)```
  • a

    Ashley Zhao

    09/29/2022, 10:44 PM
    Hi @Tim Liu, How are you? Just wondering if we have a video that covers the end-to-end user experience, specifically these points:
    Copy code
    - Yatai (Dashboard overview)
        - Model and bento repository (push/pull and UI)
        - Administrator (manage users)
    I can probably help since I’ve gone through a quick user experience. Can you connect with me/Sean to see if we can do a video together?
1Latest