This document compares Terraform and Pulumi infrastructure as code tools. It provides overviews of each tool, including what they are, how they work, and why to use them. For Terraform, it describes it as an IaC tool that defines cloud and on-premise resources in configuration files. For Pulumi, it notes it uses familiar programming languages for IaC. The document also compares key differences like syntax, testing, structuring large projects, and state file troubleshooting. It ends with best practices for both tools.
This document provides tips for becoming a "cool dad" through home automation. It discusses the author's experience transforming his home into a smart home using various devices that communicate over different protocols. Some challenges discussed are the separate apps required for each device, latency issues, security concerns, reliability, and ensuring a good user experience. The author advocates for a home automation system that is event-driven, runs locally at the edge rather than in the cloud, and focuses on simplicity rather than requiring users to adapt to the technology.
Vitastor is a fast and simple Ceph-like block storage solution that aims to maximize performance for SSDs and NVMEs. It focuses on block storage with fixed-size blocks rather than Ceph's object storage model. Vitastor uses a monitor, Etcd, and OSDs like Ceph but without a separate CRUSH layer and with monitors that do not store data. It supports technologies like RDMA for low latency and high throughput. The presenter's experiments showed Vitastor had improved performance over Ceph in some tests but also experienced some integration and operational issues.
This document discusses Zero touch on-premise storage infrastructure with OpenStack Cinder. It describes Viettel's IT infrastructure with mixed storage resources and the challenges of managing it. The solution presented uses OpenStack Cinder and additional tools to automate the management and provisioning of block storage for bare metal servers and OpenStack instances. This removes manual configuration steps and improves performance by pre-zoning storage connections. The goal is to make volume management simpler and allow adding new storage resources without additional configuration through the unified management solution.
This document compares Terraform and Pulumi infrastructure as code tools. It provides overviews of each tool, including what they are, how they work, and why to use them. For Terraform, it describes it as an IaC tool that defines cloud and on-premise resources in configuration files. For Pulumi, it notes it uses familiar programming languages for IaC. The document also compares key differences like syntax, testing, structuring large projects, and state file troubleshooting. It ends with best practices for both tools.
This document provides tips for becoming a "cool dad" through home automation. It discusses the author's experience transforming his home into a smart home using various devices that communicate over different protocols. Some challenges discussed are the separate apps required for each device, latency issues, security concerns, reliability, and ensuring a good user experience. The author advocates for a home automation system that is event-driven, runs locally at the edge rather than in the cloud, and focuses on simplicity rather than requiring users to adapt to the technology.
Vitastor is a fast and simple Ceph-like block storage solution that aims to maximize performance for SSDs and NVMEs. It focuses on block storage with fixed-size blocks rather than Ceph's object storage model. Vitastor uses a monitor, Etcd, and OSDs like Ceph but without a separate CRUSH layer and with monitors that do not store data. It supports technologies like RDMA for low latency and high throughput. The presenter's experiments showed Vitastor had improved performance over Ceph in some tests but also experienced some integration and operational issues.
This document discusses Zero touch on-premise storage infrastructure with OpenStack Cinder. It describes Viettel's IT infrastructure with mixed storage resources and the challenges of managing it. The solution presented uses OpenStack Cinder and additional tools to automate the management and provisioning of block storage for bare metal servers and OpenStack instances. This removes manual configuration steps and improves performance by pre-zoning storage connections. The goal is to make volume management simpler and allow adding new storage resources without additional configuration through the unified management solution.
This document discusses running MySQL on Kubernetes with Percona Kubernetes Operators. It provides an introduction to cloud native applications and Kubernetes. It then discusses the benefits and challenges of running MySQL on Kubernetes compared to database-as-a-service options. It introduces Percona Kubernetes Operators for MySQL, which help manage and configure MySQL deployments on Kubernetes. Finally, it discusses how to deploy MySQL with the Percona Kubernetes Operators, including prerequisites, connectivity, architecture, high availability, and monitoring.
Agile and DevOps are a great combination for software development. When combined, Agile adds structure to planned development work while DevOps incorporates unplanned work from operations teams. This allows for iterative development in small batches with test and delivery automation. It also improves team workflow by giving all members knowledge of the full development and operations lifecycle. Key practices include involving operations in sprint planning, automating workflows, implementing service backlogs under DevOps principles, using infrastructure as code tools, and including quality assurance at each phase. Measurement of outcomes helps ensure continuous improvement when applying Agile and DevOps together.
The document discusses establishing a true DevOps culture and environment. It begins by describing the traditional battle between developers and operations staff. DevOps aims to resolve this conflict by having developers and operations work together across the entire application lifecycle. The document then outlines some of the challenges in implementing DevOps and presents steps for establishing a true DevOps environment, including having a common language, planning infrastructure and processes together, coding to DevOps best practices, coordinating deployments, and centralizing monitoring and logs. Key aspects are involving all teams early, sharing information transparently, and avoiding prioritizing specific tools over collaboration.
This document describes the OpenStack Korea User Group's efforts to establish an upstream contribution mentoring program. It details how they struggled at first due to a lack of experience, but were eventually able to contribute by starting small, such as adding columns to the OpenStack client output and fixing test cases. Over two years, they developed a contribution academy program where mentees analyzed the OpenStack client code, mapped out unimplemented commands, and implemented some themselves. As a result of this ongoing mentoring effort, they have contributed several bug fixes, issues, new commands, and documentation improvements to the OpenStack upstream project.
The document discusses using Senlin, an OpenStack clustering service, to provide autoscaling capabilities for multicloud platforms. Senlin allows for managing clusters of nodes across different cloud providers and includes features like load balancing, auto-healing, and scaling policies. It describes how Senlin was implemented at a company to provide a centralized autoscaling solution across OpenStack and VMware cloud environments. Some drawbacks of Senlin are also outlined, along with potential future work like multi-region clusters and global load balancing.
This document discusses solutions for generating unique identifiers at high speeds. It compares auto-increment, UUID, hash, and Snowflake approaches. Snowflake is highlighted as able to generate up to 4 billion IDs per second while maintaining order, supporting distribution and sharding, and providing security benefits. The document outlines how Snowflake works by combining a timestamp, node ID determined via file, random number, IP address or ZooKeeper, and an increasing sequence number stored in Redis to generate the IDs at high speeds with strong ordering properties.
This document discusses upgrading an Openstack network to SDN with Tungsten Fabric. It evaluates three solutions: 1) using the same database across regions, 2) hot-swapping Open vSwitch and virtual routers, and 3) using an ML2 plugin. The recommended solution is #3 as it provides minimum downtime. Key steps include installing the OpenContrail driver, synchronizing network resources between Openstack and Tungsten, and live migrating VMs. Topology 2 is also recommended as it requires minimum changes. The upgrade migrated 80 VMs and 16 compute nodes to the SDN network without downtime. Issues discussed include synchronizing resources and migrating VMs between Open vSwitch and virtual routers.
Xuan-Thuy Dang gave a presentation about load balancing Kubernetes services on bare metal servers using Cilium. The presentation covered Industrial IoT, cloud computing, SDN and Cilium. It demonstrated how to use Cilium to provide load balancing for Kubernetes services running on bare metal servers and provided resources for further information.
Cluster API is a Kubernetes sub-project that provides declarative APIs and tooling to simplify provisioning, upgrading, and operating multiple Kubernetes clusters on any infrastructure. It works by having core Cluster API components along with plugins for different bootstrap, control-plane and infrastructure providers like Openstack, AWS, GCP etc. The presentation discusses Cluster API integration with Openstack, considerations for using it in production including separate internal and public connections and reusing Openstack networking, and proposes a time-saving deployment model leveraging various Cluster API and Gardener projects.
This document provides an overview of the Apache James email server project. It discusses James' support for common email protocols like SMTP, IMAP, and the newer JMAP standard. It also describes James' architecture, including its use of mailets and processors to customize email processing. The document recommends James for its flexibility, extensibility, and support for observability through structured logs and metrics.
The OpenInfra Days is an international open source event organized by OpenInfra communities around the world, including in Vietnam. The 2022 Vietnam event will feature keynote presentations and expert talks on trending technologies like cloud, NFV, SDN, CI/CD, machine learning, big data, and IoT. Previous OpenInfra Days Vietnam events had 300 to 500 attendees, 30+ sponsors, and 20-35 speakers from 5+ countries.
This document discusses strategies for packaging and implementing a community OpenStack distribution and provides examples of how it has been used to build various infrastructure platforms including: 1) migrating from a commercial to community OpenStack distribution; 2) building a GPU server farm for AI/analytics; 3) providing flexibility to run workloads on OpenStack or AWS; 4) building an IoT platform using OpenStack and AWS; and 5) creating a map data platform using large shared storage.
Viettel Networks operates a large OpenStack cloud called Cloud Hotpot. They mix different compute and storage resources by using techniques like CPU pinning, host aggregates, and Ceph configuration. Sensitive points in OpenStack like RabbitMQ and HAProxy settings also require tuning to handle Viettel's large scale cloud.
The document discusses using OpenStack Ironic to provision bare metal servers. Key points include:
- Ironic allows provisioning of physical servers alongside virtual instances managed by Nova.
- Commands are provided to enroll bare metal nodes in Ironic, create ports, validate and power on nodes, and deploy an image using Nova.
- Tips discuss issues with large-scale deployments, PXE boot, and driver/library conflicts.
The document discusses zero touch network slicing for 5G networks. It begins by outlining the opportunities that 5G presents for both communication service consumers and mobile network operators. It then covers network slicing and its enablers like SDN, NFV, and MEC. The document proposes automating multi-domain network management through autonomous policy management. It provides a sample use case and discusses the need for mobile network innovations to reduce costs and drive new revenue through 5G.
The document discusses using a microservices architecture in the cloud to maximize business profitability and productivity. It describes WorldRoamer's goal of being an all-in-one online travel platform and facilitating traveler needs through discovery tools and partner properties. Microservices are defined as a software architecture where applications are structured as independent services. The advantages are noted as availability, reliability, and resilience while developing independent, focused services, though complexity and testing pose disadvantages.
This document discusses running MySQL on Kubernetes with Percona Kubernetes Operators. It provides an introduction to cloud native applications and Kubernetes. It then discusses the benefits and challenges of running MySQL on Kubernetes compared to database-as-a-service options. It introduces Percona Kubernetes Operators for MySQL, which help manage and configure MySQL deployments on Kubernetes. Finally, it discusses how to deploy MySQL with the Percona Kubernetes Operators, including prerequisites, connectivity, architecture, high availability, and monitoring.
Agile and DevOps are a great combination for software development. When combined, Agile adds structure to planned development work while DevOps incorporates unplanned work from operations teams. This allows for iterative development in small batches with test and delivery automation. It also improves team workflow by giving all members knowledge of the full development and operations lifecycle. Key practices include involving operations in sprint planning, automating workflows, implementing service backlogs under DevOps principles, using infrastructure as code tools, and including quality assurance at each phase. Measurement of outcomes helps ensure continuous improvement when applying Agile and DevOps together.
The document discusses establishing a true DevOps culture and environment. It begins by describing the traditional battle between developers and operations staff. DevOps aims to resolve this conflict by having developers and operations work together across the entire application lifecycle. The document then outlines some of the challenges in implementing DevOps and presents steps for establishing a true DevOps environment, including having a common language, planning infrastructure and processes together, coding to DevOps best practices, coordinating deployments, and centralizing monitoring and logs. Key aspects are involving all teams early, sharing information transparently, and avoiding prioritizing specific tools over collaboration.
This document describes the OpenStack Korea User Group's efforts to establish an upstream contribution mentoring program. It details how they struggled at first due to a lack of experience, but were eventually able to contribute by starting small, such as adding columns to the OpenStack client output and fixing test cases. Over two years, they developed a contribution academy program where mentees analyzed the OpenStack client code, mapped out unimplemented commands, and implemented some themselves. As a result of this ongoing mentoring effort, they have contributed several bug fixes, issues, new commands, and documentation improvements to the OpenStack upstream project.
The document discusses using Senlin, an OpenStack clustering service, to provide autoscaling capabilities for multicloud platforms. Senlin allows for managing clusters of nodes across different cloud providers and includes features like load balancing, auto-healing, and scaling policies. It describes how Senlin was implemented at a company to provide a centralized autoscaling solution across OpenStack and VMware cloud environments. Some drawbacks of Senlin are also outlined, along with potential future work like multi-region clusters and global load balancing.
This document discusses solutions for generating unique identifiers at high speeds. It compares auto-increment, UUID, hash, and Snowflake approaches. Snowflake is highlighted as able to generate up to 4 billion IDs per second while maintaining order, supporting distribution and sharding, and providing security benefits. The document outlines how Snowflake works by combining a timestamp, node ID determined via file, random number, IP address or ZooKeeper, and an increasing sequence number stored in Redis to generate the IDs at high speeds with strong ordering properties.
This document discusses upgrading an Openstack network to SDN with Tungsten Fabric. It evaluates three solutions: 1) using the same database across regions, 2) hot-swapping Open vSwitch and virtual routers, and 3) using an ML2 plugin. The recommended solution is #3 as it provides minimum downtime. Key steps include installing the OpenContrail driver, synchronizing network resources between Openstack and Tungsten, and live migrating VMs. Topology 2 is also recommended as it requires minimum changes. The upgrade migrated 80 VMs and 16 compute nodes to the SDN network without downtime. Issues discussed include synchronizing resources and migrating VMs between Open vSwitch and virtual routers.
Xuan-Thuy Dang gave a presentation about load balancing Kubernetes services on bare metal servers using Cilium. The presentation covered Industrial IoT, cloud computing, SDN and Cilium. It demonstrated how to use Cilium to provide load balancing for Kubernetes services running on bare metal servers and provided resources for further information.
Cluster API is a Kubernetes sub-project that provides declarative APIs and tooling to simplify provisioning, upgrading, and operating multiple Kubernetes clusters on any infrastructure. It works by having core Cluster API components along with plugins for different bootstrap, control-plane and infrastructure providers like Openstack, AWS, GCP etc. The presentation discusses Cluster API integration with Openstack, considerations for using it in production including separate internal and public connections and reusing Openstack networking, and proposes a time-saving deployment model leveraging various Cluster API and Gardener projects.
This document provides an overview of the Apache James email server project. It discusses James' support for common email protocols like SMTP, IMAP, and the newer JMAP standard. It also describes James' architecture, including its use of mailets and processors to customize email processing. The document recommends James for its flexibility, extensibility, and support for observability through structured logs and metrics.
The OpenInfra Days is an international open source event organized by OpenInfra communities around the world, including in Vietnam. The 2022 Vietnam event will feature keynote presentations and expert talks on trending technologies like cloud, NFV, SDN, CI/CD, machine learning, big data, and IoT. Previous OpenInfra Days Vietnam events had 300 to 500 attendees, 30+ sponsors, and 20-35 speakers from 5+ countries.
This document discusses strategies for packaging and implementing a community OpenStack distribution and provides examples of how it has been used to build various infrastructure platforms including: 1) migrating from a commercial to community OpenStack distribution; 2) building a GPU server farm for AI/analytics; 3) providing flexibility to run workloads on OpenStack or AWS; 4) building an IoT platform using OpenStack and AWS; and 5) creating a map data platform using large shared storage.
Viettel Networks operates a large OpenStack cloud called Cloud Hotpot. They mix different compute and storage resources by using techniques like CPU pinning, host aggregates, and Ceph configuration. Sensitive points in OpenStack like RabbitMQ and HAProxy settings also require tuning to handle Viettel's large scale cloud.
The document discusses using OpenStack Ironic to provision bare metal servers. Key points include:
- Ironic allows provisioning of physical servers alongside virtual instances managed by Nova.
- Commands are provided to enroll bare metal nodes in Ironic, create ports, validate and power on nodes, and deploy an image using Nova.
- Tips discuss issues with large-scale deployments, PXE boot, and driver/library conflicts.
The document discusses zero touch network slicing for 5G networks. It begins by outlining the opportunities that 5G presents for both communication service consumers and mobile network operators. It then covers network slicing and its enablers like SDN, NFV, and MEC. The document proposes automating multi-domain network management through autonomous policy management. It provides a sample use case and discusses the need for mobile network innovations to reduce costs and drive new revenue through 5G.
The document discusses using a microservices architecture in the cloud to maximize business profitability and productivity. It describes WorldRoamer's goal of being an all-in-one online travel platform and facilitating traveler needs through discovery tools and partner properties. Microservices are defined as a software architecture where applications are structured as independent services. The advantages are noted as availability, reliability, and resilience while developing independent, focused services, though complexity and testing pose disadvantages.
More from Vietnam Open Infrastructure User Group (20)
3. Agenda
Đặng Văn Đại
Nguyễn Công Đức
The things I wish I would have
known before doing
OpenStack Cloud Transformation
13:40 - 14:35
Đỗ Xuân Sơn
OVN - The future of networking
in OpenStack
14:35 - 15:30
Tea-break
Trò chuyện, networking
15:30 - 15:45
Phạm Quang Minh
Kubernetes deployment
with GitOps
15:45 - 16:35