Giter Site home page Giter Site logo

5gedgetutorials's Introduction

logo

Verizon 5G Edge Demos & Tutorials

Tutorials, starter guides, and simple projects to launch your first application at the network edge.

Brought to you by the Verizon 5G Edge Developer Relations Team

What is 5G Edge? Verizon 5G Edge brings the power of the cloud closer to mobile and connected devices at the edge of the Verizon 4G and 5G networks. That means developers can build apps with low latency using familiar cloud services, APIs and tools via seamless extension of your Virtual Private Cloud.

To learn more, check out the Verizon 5G Edge Developer Resources page.

Table of Contents

Background

We want to make it easier than ever to develop applications for the network edge. To that end, we've created a number of starter projects, tutorials, and infrastructure templates that get your Verizon 5G Edge infrastructure up-and-running in seconds. From there, feel free to experiment with some of the starter applications we've developed, including the following:

Infrastructure Resources

  • terraform: Get started using HashiCorp Terraform across HAProxy, MongoDB, and AWS Wavelength (EC2/EKS)
  • cdk-tutorials: Use the AWS CDK to create starter modules using AWS Wavelength
  • cloudformation-templates: Use AWS CloudFormation to launch your first 5G Edge infrastructure template
  • sdk-tutorials: Get started using Boto3 (Python SDK for AWS) across EC2 or EKS
  • edge-discovery: Get started with the Verizon edge discovery service, an easy-to-use API to manage multi-Wavelength zone deployments and route mobile clients to the most optimal edge endpoints

Partner Resources

  • confluent: Build your first data streaming application using Confluent for Kubernetes on AWS Wavelength
  • couchbase: Build your first auction application on AWS Wavelength with Couchbase Server and Sync Gateway
  • openshift: Deploying your first OpenShift cluster to AWS Wavelength
  • sumologic: Instrument your first EC2-based edge deployment using Sumo Logic custom collectors
  • opscruise: Instrument your first EKS environment using OpsCruise

Community Resources

There are a bunch of awesome projects building on Verizon 5G Edge that we wanted to highlight here as well!

5G Edge Resources

Contribute

Please refer to the contributing.md file for information about how to get involved. We welcome issues, questions, and pull requests.

Maintainers

License

  • This project is licensed under the terms of the Apache 2.0 open source license. Please refer to LICENSE for the full terms.

5gedgetutorials's People

Contributors

biozal avatar justinrlee avatar pash10g avatar qcesarjr avatar rhbelson avatar sumo-drew avatar vkonanur avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

5gedgetutorials's Issues

EKS worker nodes not joining the EKS Cluster

Goal:
I am trying to launch EKS cluster on wavelength.

Issue Description
After creating the cloudformation stack using the template, the worker nodes aren't joining to the created eks stack. I also verified on the aws dashboard that eks cluster didn't have any nodes attached to it and it seemed to have all required permissions.

Reproducing the error:
I launched the cloudformation template using the cli command provided in the readme and was able to successfuly create the cloudformation stacks.

aws cloudformation create-stack \
--stack-name myWavelengthStack \
--template-body <selected-cfn-file> \
--parameters ParameterKey=EnvironmentName,ParameterValue=WavelengthCloudFormation \
--capabilities CAPABILITY_NAMED_IAM

The small modifications I made to the template was to change

  1. Wavelength zone geo to default to us-west-2-wl1-sfo-wlz-1
  2. ParentRegion(1/2)Geo default to us-west-2a/b

I then got the kubeconfig context

aws eks update-kubeconfig --name {my_cluster_name} --kubeconfig <local file>

Then using the aws-auth-cm.yml setup in README, I was able to apply the configmap to the cluster.

At this point, I am able to reach the cluster and the aws-auth config map is applied

$ kubectl get configmaps -n kube-system
NAME                                 DATA   AGE
aws-auth                             1      11h
coredns                              1      12h
cp-vpc-resource-controller           0      12h
eks-certificates-controller          0      12h
extension-apiserver-authentication   6      12h
kube-proxy                           1      12h
kube-proxy-config                    1      12h

Querying the events provides failed scheduling due to no nodes

$ kubectl get events --all-namespaces 
NAMESPACE     LAST SEEN   TYPE      REASON             OBJECT                                            MESSAGE
kube-system   2m40s       Warning   FailedScheduling   pod/coredns-5946c5d67c-p9mf8                      no nodes available to schedule pods
kube-system   2m40s       Warning   FailedScheduling   pod/coredns-5946c5d67c-zlrxw                      no nodes available to schedule pods

With no nodes returning:

$ kubectl get nodes
No resources found in default namespace.

As a side note, I am able to launch regular eks instances using eksctl.

The README does mention attaching carrier ips, but I'm not sure how/why this needs to be done and if this is the issue. If this is the issue, is there a way to do it automatically?

For Public Cluster, ECR/EC2 endpoints are Optional but you must manually attach Carrier IP to public-facing instaces

I was also debugging with https://aws.amazon.com/premiumsupport/knowledge-center/eks-worker-nodes-cluster/ and did notice the eks subnets did not have a wavelength zone. I'm not sure if this could be the issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.