1. Explore IBM Satellite
In this step, the first few instructions may seem familiar – you should be comfortable with navigating IBM Cloud based on your completion of the first drone lab. As a reminder, you can always reference the first lab’s instructions guide here https://ielgov.github.io/dronelab1. In this lab, you will focus on IBM Cloud Satellite and its creation of distributed cloud regions anywhere you have infrastructure, e.g., factories, edge environments, on-prem locations, and even your home! |
The purpose of this setup was to demonstrate the Satellite technology in order to:
- Build, deliver, and manage your applications across a hybrid multi-cloud environment.
- Bring the best of cloud wherever it is needed to run, while maintaining the simple "as a service" experience.
- Use a common control plane to manage your apps, platform, and security across our multi-cloud platform.
Let’s take a moment to review some concepts that you will be delving into in the next few steps. Consider two parties involved:
- Public Safety Situational Awareness Operators that use the Remote Drone Operations Console application, and,
- An organization, "IEL Drones-To-Go", which has private on-prem resource in Coppell, TX that allows piloting and observing of local drones.
IEL Drones-To-Go wants users like Public Safety Situational Awareness Operators to access their drone service, easily manage their access, make sure this connection is done securely so they are not compromised in any way.
The Public Safety Situational Awareness Operators, owners, and users of the Remote Drone Operations Console want to connect the service that IEL Drones-To-Go provides.
You will explore how IBM Satellite Link endpoints can help enable the connection between the Public Safety Situational Awareness Operators in one cloud environment, and the IEL Drones-To-Go services that are running in another cloud environment.
Satellite extends IBM Cloud with the new concept of a "location." Locations refer to any infrastructure where you can run services and applications. Once a location is created, you can start using that location to run IBM Cloud services, such as Red Hat OpenShift on IBM Cloud, IBM Cloud Databases, Continuous Delivery pipelines, AI and more. With Satellite Link endpoints, you can allow any client that runs in your Satellite location to connect to a service, server, or app that runs outside of the location, or allow a client running on an IBM Cloud private network to connect to a service, server, or app that runs in your location. |
IBM Cloud Satellite acts as a "Hybrid Cloud Mesh" that creates distributed cloud regions anywhere you have infrastructure. Through this hybrid mesh, you can manage each location from a common control plane. IBM Cloud Satellite does this by attaching remote infrastructure in a remote location to your Cloud Satellite control plane. This location can then be used by IBM Cloud services as deployment targets.
In this next step of the lab, you will learn about how to use Satellite Link Endpoints to bridge a connection between the Remote Drone Operations Console and the on-prem resource at IEL Drones-To-Go. In later steps, you will continue to get more access to the IEL Drones-To-Go service, including accessing APIs and even invoking related flows.
Reference:
Indicated as text with light blue background.
Example:
It's important to read each step carefully and in order.
Skipping sections, reading too fast, or not clicking to read
may result in incomplete learning.
□ Access IBM Cloud Satellite
□ Access Satellite Infrastructure collection
□ Access hosts assigned to Lab Satellite Location
□ Access services for a Satellite location
□ Access Link Endpoints
Step 1 In Progress □ Access IBM Cloud □ Access IBM Cloud Satellite □ Access Satellite Infrastructure collection □ Access hosts assigned to Lab Satellite Location □ Access services for a Satellite location □ Access Link Endpoints |
→ |
Step 2 □ Access the drone controller □ Add and configure a new link endpoint □ View the newly created link endpoint and its address |
→ |
Step 3 □ Explore the sensor database □ Set up App Connect flow □ Start the API □ Try out the flow |
→ |
Step 4 □ Configure lab flow using Satellite Link endpoint □ Explore the lab flow drone viewer modal |
1.1 Access IBM Cloud
You’ll need to access the IBM Satellite Location within the IBM Cloud to configure your application’s endpoint. Begin by signing into IBM Cloud. (New Tab ⇒ https://cloud.ibm.com)
Once you’ve logged in with your credentials, you should be greeted with a dashboard that displays the various resources that IBM Cloud has to offer. From Cognitive APIs to DevOps to Classic Infrastructure resources, IBM Cloud has many offerings to explore. At the top of the dashboard, you’ll see a navigation bar. On the right side of the navigation bar, there is a dropdown for various accounts you may be a part of. Most likely, the default is the last account you opened, if not the only one available. For this lab, you’ll be working in the 1500867 – ITZ – SBAAS Primary account.
Click on 1500867 – ITZ – SBAAS Primary in the IBM Cloud’s navigation bar dropdown.
|
1.2 Access IBM Cloud Satellite
Once you click on 1500867 – ITZ – SBAAS Primary, your dashboard will update with Resources that are specific to it. You should see a Resource summary card. Click on View all in the Resource summary card.
You should now see a list of resources that you have access to, within the 1500867 – ITZ – SBAAS Primary account. |
Take a look at the resources under the Satellite grouping. You will explore the govlab-satellite-location resource later in Step 1.4.2.
Take a look at the resources under the Devices grouping. You will explore the resources in Devices in Step 1.3.
1.3 Access Satellite Infrastructure collection
Remember that a location is a representation of an environment in your infrastructure provider, such as an on-prem data center or public cloud, that you want to bring IBM Cloud services to so that you can run workloads in your own environment. You create the location by attaching host machines from your infrastructure. In the context of a Satellite location, you can think of host machines as your own VMs, Bare Metal, or privately managed Iaas from your infrastructure. These host machines provide the computing power for running IBM cloud services in the Satellite location - for example, acting as the worker nodes in a RedHat OpenShift cluster.
To set up a Satellite location, you must first (1) create the location, (2) attach hosts to it, and then (3) create the location control plane.
The location control plane runs resources that are managed by Satellite to help manage the hosts, clusters, and other resources that you attach to the location.
Some important takeaways regarding Satellite Locations include:
You will access this lab’s Location to better understand your location’s infrastructure collection. For your convenience, we have created an infrastructure collection on IBM Cloud, but in most cases, it will be at your data center or your own cloud (Azure, Google Cloud, AWS, etc.). This infrastructure collection consists of virtual servers (running RHEL7 operating system) that are assigned to run on a Satellite control plane and have workloads for the OpenShift cluster service that was provisioned for this lab. |
Let’s begin by taking a look at first device – control1.govlab.ibmsbaasonibm.com.
Once you click on this device, you will be able to see its status and details. (You may need to click "View full details" to see all of its information.)
1.4 Access hosts assigned to Lab Satellite Location
The hosts at a location are securely attached and connected to IBM Cloud using Link:
- Each location has a local control plane where Cloud Satellite manages all provisioned services and communicates back to the central Cloud Satellite control plane.
- At least three hosts are required for a minimal control plane (six are recommended).
- Additional hosts are required for each provisioned service.
- Hosts are assigned to a location as either control plane or worker nodes for a service.
A satellite environment requires at least three hosts (recommended six) for a minimal control plane and additional hosts are required for each provisioned service. For our lab satellite environment, we have provisioned a satellite OpenShift cluster service to deploy the drone controller application. And so we have assigned three hosts to the control plane and another three hosts as worker nodes for OpenShift satellite cluster service. As with any other managed cluster, you need to plan for scaling the cluster and design it for resiliency, so at any point of time you can "attach host" and enable the Cloud Satellite control plane to provision more worker nodes as needed.
Let’s go back to see the Satellite grouping on the Resource List. You can do this by clicking the ≡ icon in the top left corner and then click "Resource List".
In the Resource list, you will once again see the resources in the Satellite grouping. Let’s explore the govlab-satellite-location resource you saw earlier. Click the govlab-satellite-location resource in the Satellite grouping.
|
You should now see the govlab-satellite-location’s Getting started page. Let’s take a look at the hosts at this location.
Look at each host listed, along with its name, status, availability, labels, cluster, worker pool, zone, and IP address. You will notice that control1, control2, and control3 hosts belong to the Control plane cluster, and worker1, worker2, and worker3 hosts belong to the govlab-satellite-satcloudcluster. The numbers at the end of each host name correspond to the zones as well (zone-1, zone-2, and zone-3).
Zone is a deployment area for compute resources such as virtual machines or bare metals. A Satellite location must have at least three zones that are physically separate so that you can spread out hosts evenly across the zones to increase high availability (High availability is a core discipline in an IT infrastructure to keep your apps up and running, even after a partial or full site failure). For example, your cloud provider might have three different zones within the same region (Coppell, Washington, etc) , or you might use three racks with three separate networking and power supply systems in an on-prem environment.
1.5 Access services for a Satellite location
The benefit of IBM Satellite is to bring cloud services to any location you need the service to run. As mentioned earlier, since IBM Cloud Satellite is like a hybrid cloud mesh, it presents all Cloud Satellite locations as just another deployment target for IBM Cloud services. In order to provision a service, it takes three easy steps:
- Select satellite enabled services from IBM cloud catalog
- Select the satellite location
- Create the service!
Click on Services on the left side.
|
These are the services at this location.
In our lab satellite environment, you can see that two services have already been provisioned: one is the control plane to manage that location, and the other is the OpenShift cluster to deploy lab drone controller application.
Let’s take a quick look at some other Satellite-enabled services that are available today in the IBM Cloud Service Catalog.
There are a lot of offerings on the IBM Cloud catalog, so let’s filter them so only the Satellite-enabled are shown.
Let’s briefly explore a Satellite-enabled service - for example, Databases for PostgreSQL.
Click on the tile for
Databases for PostgreSQL. |
There are three main options for this Satellite-enabled service to pay attention to:
1. Platform: Satellite is an option.
2. Resource Group: Even though you may be provisioning this service into a remote location, you can still centrally control access with IBM Identity and Access Management. This way all your resource groups, access groups, and individual access policies can be applied quite simply.
3. Location: Drop-down list of Cloud Satellite locations.
1.6 Access Link Endpoints
Link Endpoints provide secure connection between Locations and IBM Cloud. The link provides the following: |
2. Under the Satellite grouping, click "govlab-satellite-location".
3. Then, click "Link endpoints" on the left side.
You should now see the Link endpoints page for govlab-satellite-location.
At the bottom of this page, you will see a full list of endpoints. Bear in mind that you may see other lab users’ endpoints as well.
In step 2 of the lab, you will be configuring an endpoint for your drone controller application, but for now, let’s look at a sample endpoint configuration for OpenShift API service deployed in this location.
Click on openshift-api-c7pisqgw0e96bqf631v0.
If it’s difficult to find in the long list, use the Search at the top of the list. |
Notice the following four areas in this sample endpoint:
1. Destination FQDN or IP: Address where the OpenShift cluster API service is listening for requests
2. Destination port: Port where the OpenShift API service is listening
3. Endpoint address: Address exposed to other services on IBM Cloud
4. Source list: ACL (access control list)
Note: The Link Endpoint Source list limits access to endpoints and controls which clients can access destination resources (at a Satellite location or IBM Cloud) through an endpoint. If no sources are configured, any client can use an endpoint to connect to the destination resource. All of our lab satellite endpoints are not configured with source list for ease of use. Any application can access the satellite location resources from the IBM Cloud or access the IBM Cloud resources from the Satellite location without any restrictions.
Finish Step 1
You have explored Satellite and its key features and gained a better understanding of how it works. You accessed and learned more about some of the key concepts on Satellite - like location, hosts, services, and endpoints.
✅ Access IBM Cloud Satellite
✅ Access Satellite Infrastructure collection
✅ Access hosts assigned to Lab Satellite Location
✅ Access services for a Satellite location
✅ Access Link Endpoints
In the next step, you will learn how to enable a drone controller application running on a satellite location at a end user or business entity's cloud to accept requests from IBM Cloud.
Step 1 Completed ✅ ✅ Access IBM Cloud ✅ Access IBM Cloud Satellite ✅ Access Satellite Infrastructure collection ✅ Access hosts assigned to Lab Satellite Location ✅ Access services for a Satellite location ✅ Access Link Endpoints |
→ |
Step 2 Next □ Access the drone controller □ Add and configure a new link endpoint □ View the newly created link endpoint and its address |
→ |
Step 3 □ Explore the sensor database □ Set up App Connect flow □ Start the API □ Try out the flow |
→ |
Step 4 □ Configure lab flow using Satellite Link endpoint □ Explore the lab flow drone viewer modal |